前言:

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

1. Presto集群部署架构图

2.安装步骤

step1:系统环境准备:

1)JDK8

2)Hadoop2.x

step2:软件准备

presto-server-0.191.tar.gz

下载地址: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集群部署的更多相关文章

  1. Presto集群部署和配置

    参考文档:1.https://blog.csdn.net/zzq900503/article/details/79403949 prosto部署与连接hive使用                 2. ...

  2. Cassadra & presto 集群部署

    四台服务器部署cassandra集群 和 presto搜索引擎 及代码演示: 还有很多细节没有补充,有问题和疑问的地方 咋们一起探讨哇!1.创建用户    使用root用户登录应用服务器,执行以下操作 ...

  3. Quartz.net持久化与集群部署开发详解

    序言 我前边有几篇文章有介绍过quartz的基本使用语法与类库.但是他的执行计划都是被写在本地的xml文件中.无法做集群部署,我让它看起来脆弱不堪,那是我的罪过. 但是quart.net是经过许多大项 ...

  4. Openfire 集群部署和负载均衡方案

    Openfire 集群部署和负载均衡方案 一.   概述 Openfire是在即时通讯中广泛使用的XMPP协议通讯服务器,本方案采用Openfire的Hazelcast插件进行集群部署,采用Hapro ...

  5. 基于Tomcat的Solr3.5集群部署

    基于Tomcat的Solr3.5集群部署 一.准备工作 1.1 保证SOLR库文件版本相同 保证SOLR的lib文件版本,slf4j-log4j12-1.6.1.jar slf4j-jdk14-1.6 ...

  6. jstorm集群部署

    jstorm集群部署下载 Install JStorm Take jstorm-0.9.6.zip as an example unzip jstorm-0.9.6.1.zip vi ~/.bashr ...

  7. CAS 集群部署session共享配置

    背景 前段时间,项目计划搞独立的登录鉴权中心,由于单独开发一套稳定的登录.鉴权代码,工作量大,最终的方案是对开源鉴权中心CAS(Central Authentication Service)作适配修改 ...

  8. Windows下ELK环境搭建(单机多节点集群部署)

    1.背景 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因.经常分析日志可以了解服务器的负荷,性能安全性,从而及时 ...

  9. 理解 OpenStack + Ceph (1):Ceph + OpenStack 集群部署和配置

    本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...

随机推荐

  1. iOS 提交AppStore不出现构建的版本

    提交App Store不出现构建的版本 Xcode版本:8.0 近日往App Store上跟新一个版本,提交了好几次,built号增加了好几个,上传每次都成功了,但是在iTunes Contact上一 ...

  2. 如何在Raspberry Pi 3B中安装Windows 10 IoT Core

    Windows 10 IoT Core简介 Windows 10 IoT是微软专门为物联网生态打造的操作系统,Windows 10 IoT Core则是Windows 10 IoT 操作系统的核心版本 ...

  3. 读取指定文件夹下的全部文件,可通过正则进行过滤,返回文件路径数组 -- 基于node的一个函数

    var fs = require('fs'); // 模板文件夹路径 var templateDirectory = '../src'; //相对于当前文件的相对路径 //var templateDi ...

  4. java poi 导入日期为空

    如上两图,如果是第一种的话,可以导入,,但,如果是第二种的话,导入为空查看,导入的文件,有这么一条 debugger发现 它把2017-11-01转为Double,转不了,出错了,所以,我在catch ...

  5. 我这样减少了26.5M Java内存!

    WeTest 导读 历时五天的内存优化已经结束,这里总结一下这几天都做了什么,有哪些收获.优化了,或可以优化的地方都有哪些.(因为很多事还没做,有些结论需要一定样本量才能断定,所以叫一期)一期优化减少 ...

  6. Material04 MdCardModule和MdButtonModule综合运用

    设计需求:设计一个登陆页面 1 模块导入 1.1 将MdCardModule和MdButtonModule模块导入到共享模块中 import { NgModule } from '@angular/c ...

  7. Codeforces Round #271 (Div. 2) F题 Ant colony(线段树)

    题目地址:http://codeforces.com/contest/474/problem/F 由题意可知,最后能够留下来的一定是区间最小gcd. 那就转化成了该区间内与区间最小gcd数相等的个数. ...

  8. java_抽象类

    抽象类1,语法定义抽象类前使用abstract关键字修饰,则该类为抽象类2.应用场景(1)在某些情况下,某个父类只是知道其子类应该包含怎样的方法,但无法准确知道这些子类如何实现这些方法. (2)从多个 ...

  9. 关于windows phone 8.1系统手机对html5触摸事件的支持情况

    近日购入一部微软Lumia 640手机,目的主要就是为了测试年中开发完成的响应式移动web项目,同时也为了将来升级win10 mobile系统.由于我们的项目目前只考虑支持IOS与Android系统, ...

  10. 自学Zabbix3.9.3-模板Templates-嵌套Nesting

    自学Zabbix3.9.3-模板Templates-嵌套Nesting 嵌套是一个模板包含一个或多个其他模板的方法.可以在一个"嵌套"模板中将一些模板链接在一起.嵌套的好处在于,只 ...