Presto集群部署
前言:
随着大数据的普及,大部分企业的大数据查询与统计渐渐出现瓶颈。虽说存储方面有分布式的HDFS,HBSE,MongoDB等可以应对,但是面对千万级别(1x10^7)界别的数据量查询时,以上组件也不免显得力不从心。正因此,分布式查询引擎应运而生。而基于内存查询的分布式查询引擎--Presto正是其中之一。很多人都说现代计算机技术的发展都是拼开源,拼社区。而Presto的社区也不小,国际化的Facebook,也有国内电商大头京东。正因此,在经过实际尝试与测验之后决定简要地介绍一下presto的部署方式,希望能给有需要的朋友提供一些参考。
1. Presto集群部署架构图

2.安装步骤
step1:系统环境准备:
1)JDK8
2)Hadoop2.x
step2:软件准备
下载地址:https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.191/presto-server-0.191.tar.gz
$ wget http:xxxx/a-b-xxx.gz
$ tar -zxvf http:xxxx/a-b-xxx.gz
$ ln -s a-b-xxx presto-server
step3:新建文件目录
$PRESTO_INSTALL_HOME=/opt/prestodb
$PRESTO_INSTALL_HOME下面新建2个目录:
presto_data
presto_server
step4:在presto_server添加配置文件
$mkdir etc
$find
./jvm.config
./catalog
./catalog/hive.properties
./catalog/jmx.properties
./node.properties
./config.properties
./log.properties
① catalog/jmx.properties配置内容:
|
connector.name=jmx |
② catalog/hive.properties配置内容:
|
connector.name=hive-hadoop2 hive.metastore.uri=thrift://gzp210016clit01:9083 hive.config.resources=$HADOOP_HOME/core-site.xml,$HADOOP_HOME/hdfs-site.xml |
注意:
connector.name配置的是当前集群的hadoop版本,默认”hive-hadoop2”即可
hive.metastore.uri=hive元数据服务地址
hive.config.resources=core-site.xml和hdfs-site.xml的配置文件路径
③ jvm.config
|
-server -Xmx16G -XX:+UseG1GC -XX:G1HeapRegionSize=32M -XX:+UseGCOverheadLimit -XX:+ExplicitGCInvokesConcurrent -XX:+HeapDumpOnOutOfMemoryError -XX:+ExitOnOutOfMemoryError |
④ node.properties
|
node.environment=production node.id=ffffffff-ffff-ffff-ffff-ffffffffffff node.data-dir=/home/dev_chenjunhong/presto_data |
注意:
node.id全局唯一,建议用本机的ip最后2位结尾
node.data-dir配置的数据目录需提前创建
⑤ log.properties
|
com.facebook.presto=INFO |
⑥ config.properties
主节点:
|
coordinator=true node-scheduler.include-coordinator=true http-server.http.port=18080 query.max-memory=5GB query.max-memory-per-node=1GB discovery-server.enabled=true discovery.uri=http://localhost:18080 |
从节点:
|
coordinator=false http-server.http.port=18080 query.max-memory=5GB query.max-memory-per-node=1GB discovery.uri=http://master:18080 |
step5:启动测试
进入目录
$ cd presto-server
启动方式1:阻塞式启动
$ bin/launcher run
启动方式2:非阻塞式(后台)启动
$ bin/launcher start

step6:web界面访问

附录
1.官网的安装说明 https://prestodb.io/docs/current/installation/deployment.html
2.客户端连接测试
step1:下载jar包并创建快捷方式
$ wget https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.191/presto-cli-0.191-executable.jar
step2:连接服务
$ ln -s presto-cli-xxx.jar presto
$ ./presto --server server-ip:port --catalog hive --schema default
Presto集群部署的更多相关文章
- Presto集群部署和配置
参考文档:1.https://blog.csdn.net/zzq900503/article/details/79403949 prosto部署与连接hive使用 2. ...
- Cassadra & presto 集群部署
四台服务器部署cassandra集群 和 presto搜索引擎 及代码演示: 还有很多细节没有补充,有问题和疑问的地方 咋们一起探讨哇!1.创建用户 使用root用户登录应用服务器,执行以下操作 ...
- Quartz.net持久化与集群部署开发详解
序言 我前边有几篇文章有介绍过quartz的基本使用语法与类库.但是他的执行计划都是被写在本地的xml文件中.无法做集群部署,我让它看起来脆弱不堪,那是我的罪过. 但是quart.net是经过许多大项 ...
- Openfire 集群部署和负载均衡方案
Openfire 集群部署和负载均衡方案 一. 概述 Openfire是在即时通讯中广泛使用的XMPP协议通讯服务器,本方案采用Openfire的Hazelcast插件进行集群部署,采用Hapro ...
- 基于Tomcat的Solr3.5集群部署
基于Tomcat的Solr3.5集群部署 一.准备工作 1.1 保证SOLR库文件版本相同 保证SOLR的lib文件版本,slf4j-log4j12-1.6.1.jar slf4j-jdk14-1.6 ...
- jstorm集群部署
jstorm集群部署下载 Install JStorm Take jstorm-0.9.6.zip as an example unzip jstorm-0.9.6.1.zip vi ~/.bashr ...
- CAS 集群部署session共享配置
背景 前段时间,项目计划搞独立的登录鉴权中心,由于单独开发一套稳定的登录.鉴权代码,工作量大,最终的方案是对开源鉴权中心CAS(Central Authentication Service)作适配修改 ...
- Windows下ELK环境搭建(单机多节点集群部署)
1.背景 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因.经常分析日志可以了解服务器的负荷,性能安全性,从而及时 ...
- 理解 OpenStack + Ceph (1):Ceph + OpenStack 集群部署和配置
本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...
随机推荐
- hicoder1142 三分求极值
在直角坐标系中有一条抛物线y=ax^2+bx+c和一个点P(x,y),求点P到抛物线的最短距离d. 我们代入公式,有: $d = min(\sqrt{(X - x)^2+(aX^2+bX+c-y)^2 ...
- SQL-删除重复记录
前几日工作的时候,有个小需求,是要求删除一个表table_A里的重复记录(保留一条),假设以字段COL_PK重复来判断记录重复,那么有几种写法: 在Oracle里,可以利用rowid来删除,这是非常高 ...
- day10、nfs+rsync全网备份及实时同步
题目要求 注意:博主使用的系统为: [root@web01 ~]# uname -a Linux web01 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29 ...
- MySQL-Select语句高级应用
1.1 SELECT高级应用 1.1.1 前期准备工作 本次测试使用的是world数据库,由mysql官方提供下载地址: https://dev.mysql.com/doc/index-other.h ...
- DirectX:在graph自己主动连线中增加自己定义filter(graph中遍历filter)
为客户提供的视频播放的filter的測试程序中,採用正向手动连接的方式(http://blog.csdn.net/mao0514/article/details/40535791).因为不同的视频压缩 ...
- jquery通过数值改变球大小
在业务中遇到一个问题:在页面上显示一个球.且球的大小会应数字的大小而改变. 我们都知道 js是能够画圆(用css样式准备一个圆.假设addClass),但这并非我们想要的. 于是笔者脑洞打开:用样式画 ...
- 通过路由url携带参数进行参数传递
一.url解析参数 在路由中写入,同一个控制器,同一个页面模板,可以写多个路由,不同的路由对应相同的页面,只是在这种传参数的状态下的特定页面. .state("OrderRecord&quo ...
- 知乎APP---案例分析
产品: 这次我选择用来做案例分析的是--知乎. 知乎可以说是中文互联网最大的知识社交平台,拥有认真.专业和友善的独特气氛,分享用户间彼此的专业知识.经验和见解.因而在日常生活中,我用知乎搜索答案的概率 ...
- 翻译:MariaDB DATABASE()
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- mysql还原数据库时,提示ERROR 1046 (3D000) No database selected 的解决方法
使用mysql数据库的朋友, 经常会使用mysqldump备案数据库, 然后到新服务器还原, 这个过程中, 有朋友会遇到ERROR 1046 (3D000) No database selected ...