本篇内容主要讲解“Presto分布式安装查询Hive的步骤”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Presto分布式安装查询Hive的步骤”吧!
Hadoop的版本是2.7.2,Hive的版本是2.1.1,Presto的版本是0.197。Presto是个master-slave结果的查询引擎,所以我们用三台机器来安装,如下List-1
List-1
192.168.33.34 presto-coordinator 192.168.33.35 presto-slave1 192.168.33.36 presto-slave2
如下图1
图1
每台上都要安装JDK,我使用的JDK版本是1.8.0_131,步骤略;将Hadoop集群上的Hadoop包拷贝到/opt上,将Hadoop加入到PATH中,每台都是。
在presto-coordinator上,将presto安装包放在/opt下,解压,
1、config.properties,在etc下新建config.properties文件,文件内容如下List-2
List-2
coordinator=true node-scheduler.include-coordinator=false http-server.http.port=18080 query.max-memory=1GB discovery-server.enabled=true discovery.uri=http://192.168.33.34:18080 #是否允许presto server服务中即作为coordinator有作为worker,我们这是为false node-scheduler.include-coordinator=false
2、jvm.config,在etc下新建jvm.config,文件内容如下List-3
List-3
-server -XX:+UseConcMarkSweepGC -XX:+ExplicitGCInvokesConcurrent -XX:+CMSClassUnloadingEnabled -XX:+AggressiveOpts -XX:+HeapDumpOnOutOfMemoryError -XX:OnOutOfMemoryError=kill -9 %p -XX:ReservedCodeCacheSize=256M
3、log.properties,在etc下新建log.properties,文件内容如下List-4
List-4
com.facebook.presto=INFO
4、node.properties,在etc下新建node.properties,文件内容如下List-5
List-5
node.environment=production node.id=node_master node.data-dir=/opt/prestoserver/data
5、在etc下新建catalog目录,在etc/catalog下新建hive.properties,如下List-6所示,192.168.33.33:9083是hive的metastore服务地址
List-6
connector.name=hive-hadoop2 hive.metastore.uri=thrift://192.168.33.33:9083 hive.config.resources=/opt/hadoop/core-site.xml,/opt/hadoop/etc/hadoop/hdfs-site.xml
和presto-coordinator一样,在etc下新建config.properties、jvm.config、log.properties、node.properties、catalog/hive.properties,只是config.properties的内容和coordinator的不同,如下List-7,node.properties的值和coordinator的不同,如下List-8所示
List-7 coordinator的值为false
coordinator=false http-server.http.port=18080 query.max-memory=1GB discovery-server.enabled=true discovery.uri=http://192.168.33.34:18080 node-scheduler.include-coordinator=false
List-8 node-id要修改
node.environment=production node.id=node_node1 node.data-dir=/opt/prestoserver/data
在slave2上和slave1的一样,只是node.properties的值和slave1的不同,如下List-9所示,将node.id修改为自己的
List-9
node.environment=production node.id=node_node2 node.data-dir=/opt/prestoserver/data
presto-coordinator上执行"bin/launcher run",这样会将日志打印到控制台,我们好调试,如果是launcher start则后台运行,看不到日志。
presto-slave1上执行"bin/launcher run"
presto-slave2上执行"bin/launcher run"
之后浏览器中访问192.168.33.34:18080
Presto由三部分组成,
一个Coordinator节点,Coordinator: 负责解析SQL语句,生成执行计划,分发执行任务给Worker节点执行
一个Discovery Server节点,Discovery Server: 通常内嵌于Coordinator节点中,worker会将自己注册到这里
多个Worker节点,负责实际执行查询任务,负责与HDFS交互读取数据
Presto查询引擎低延迟的原因:
基于内存的并行计算
流水线式计算作业
本地化计算
动态编译执行计划
Hive是存储、计算引擎,不过Persto不做存储。
https://blog.51cto.com/simplelife/1967220
https://www.liangzl.com/get-article-detail-40387.html
到此,相信大家对“Presto分布式安装查询Hive的步骤”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。