2.0.0 以上版本支持
presto,选择支持presto 的镜像并勾选 presto 软件即可在 E-MapReduce 中使用 presto。
集群创建后,登录 master,presto 软件被安装在 /usr/lib/presto-current 目录,可以 jps 看到PrestoServer 进程。
presto 服务进程分为 coordinator 和 worker,master 上(HA 集群为 hostname 以emr-header-1 开头的master 节点)启动 coordinator,core 节点启动 worker 进程。服务进程的配置在/usr/lib/presto-current/etc 目录下,其中 coordinator 使用coordinator-config.properties,worker 使用 worker-config.preperties,其他配置文件公用。web端口设置为 9090。
presto 服务默认设置了 Hive 的支持,连接集群 hive 的 metastore,可以读取 Hive 的表信息,进行查询。集群预装了presto cli,可以直接执行
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
您提到的是在阿里云E-MapReduce服务中使用Presto进行大数据查询的场景。E-MapReduce是阿里云提供的一种基于Hadoop、Spark等开源大数据组件的一站式大数据处理分析服务,它简化了大数据集群的搭建和管理过程,让用户能够更专注于数据处理和分析任务本身。
针对您的描述,这里有几个关键点的补充说明:
Presto镜像选择与安装:在创建E-MapReduce集群时,确保选择一个支持Presto的镜像版本(2.0.0以上),这样系统会在集群创建过程中自动部署Presto。Presto会被安装到/usr/lib/presto-current
目录下,并且会自动启动Presto的Coordinator和Worker进程。Coordinator负责协调查询计划,而Worker则执行实际的数据处理工作。
进程与配置:正如您所述,Coordinator通常运行在主节点(master节点,如果是HA集群,则是emr-header-1开头的节点)上,Worker进程则运行在core节点上。Presto的配置文件位于/usr/lib/presto-current/etc
目录下,包括coordinator-config.properties
用于Coordinator的配置,以及worker-config.properties
用于Worker的配置。所有节点共享其他通用配置文件。Web UI默认监听端口为9090,便于监控和管理。
Hive集成:Presto在E-MapReduce集群中默认集成了对Hive的支持,这意味着它可以无缝访问Hive Metastore中的元数据,直接查询Hive表。这对于那些已经建立了Hive数据仓库的用户来说非常方便,因为不需要额外的数据迁移或适配工作。
Presto CLI使用:您提供的命令示例展示了如何使用Presto CLI来查询Hive中的表信息。通过指定服务器地址(localhost:9090)、catalog(hive)、schema(default)、用户名(hadoop)以及执行的SQL语句(展示所有表),用户可以直接在命令行界面交互式地查询数据。需要注意的是,由于元数据同步可能存在延时,刚创建或修改的Hive表可能不会立即在Presto中可见。
综上所述,阿里云E-MapReduce服务通过预装并配置好的Presto环境,极大地简化了大数据查询和分析的流程,特别是对于需要跨多种数据源(如Hive)进行即席查询的场景提供了高效便捷的解决方案。