热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

presto环境搭建

1、环境准备支持操作系统:LinuxorMacOSXJava8,64-bitPython2.4支持hadoop集群环境版本:ApacheHadoop1.

1、环境准备

支持操作系统:
Linux or Mac OS X
Java 8, 64-bit
Python 2.4+


支持hadoop集群环境版本:
Apache Hadoop 1.x
Apache Hadoop 2.x
Cloudera CDH 4
Cloudera CDH 5

备注:
这里我们准备三台Ubuntu 14.04
并且搭建CDH5.10集群

2、下载安装包
presto-server-0.191.tar.gz
下载路径:https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.191/presto-server-0.191.tar.gz

3、将下载的安装包分别解压到3台服务器的/opt目录下,如图:




4、配置presto
在我们解压好的目录下创建一个etc文件夹,etc主要需要配置以下内容
Node Properties: environmental configuration specific to each node(每个节点名称及数据目录,所属集群配置)
JVM Config: command line options for the Java Virtual Machine(JVM配置)
Config Properties: configuration for the Presto server(presto详细参数配置,端口号、内存分配、主从等)
Catalog Properties: configuration for Connectors (data sources)(数据源连接配置)


5、Node Properties配置
在etc下创建文件node.properties
etc/node.properties:
node.environment=production                     #集群名称,所有节点都应该统一
node.id=ffffffff-ffff-ffff-ffff-ffffffffffff    #节点唯一性标识,ID
node.data-dir=/data/presto/data      #数据目录,主要存储日志和一些其他的数据


6、JVM配置
在etc下创建文件jvm.config
etc/jvm.config:
-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError

备注:以上参数都是官网参数,实际环境需要调整

7、Config Properties  详细参数配置
在etc下创建文件config.properties,这里的配置要分主从了,
主节点配置,即coordinator配置:
coordinator=true             #是不是主节点
node-scheduler.include-coordinator=false    #主节点是否同时是子节点
http-server.http.port=8080   #http端口号,presto主要用http请求
query.max-memory=50GB     #一个query最大内存限定
query.max-memory-per-node=1GB   #每个节点提供给一个query的最大内存
discovery-server.enabled=true   #类似于hbase的心跳,做节点监控
discovery.uri=http://example.net:8080    #这里填主节点IP

从节点配置,即worker配置:
coordinator=false
http-server.http.port=8080
query.max-memory=50GB
query.max-memory-per-node=1GB
discovery.uri=http://example.net:8080    #这里填主节点IP

附:如果主从只有一个节点,配置如下:
coordinator=true
node-scheduler.include-coordinator=true    #即主即从配为true
http-server.http.port=8080
query.max-memory=5GB
query.max-memory-per-node=1GB
discovery-server.enabled=true
discovery.uri=http://example.net:8080     #这里填主节点IP

You may also wish to set the following properties:

jmx.rmiregistry.port: Specifies the port for the JMX RMI registry. JMX clients should connect to this port.
jmx.rmiserver.port: Specifies the port for the JMX RMI server. Presto exports many metrics that are useful for monitoring via JMX.

8、日志级别
创建文件log.properties
填入内容:
com.facebook.presto=INFO
备注:日志级别有四种,DEBUG, INFO, WARN and ERROR

9、连接设置
这里只说一下hive的,其实官网写的很清楚,如果有用到其他的,可以点一下官网连接:https://prestodb.io/docs/current/connector.html
hive connector配置如下:
(1)创建存放链接配置文件的文件夹,在之前etc目录下创建catalog
(2)放入一个jmx的配置文件,jmx.properties,配置内容:connector.name=jmx (通过jmx管理connector)
(3)配置一个hive connector的配制文件,hive.properties,内容如下:
connector.name=hive-hadoop2                  #取个连接名
hive.metastore.uri=thrift://192.168.10.101:9083     #配置metastore连接
hive.config.resources=/etc/hadoop/conf/core-site.xml,/etc/hadoop/conf/hdfs-site.xml    #指明hadoop的配置文件,主要是设计hdfs 
hive.allow-drop-table=true      #给删表权限
其他配置如下可参考官网:https://prestodb.io/docs/current/connector/hive.html  https://prestodb.io/docs/current/connector/hive-security.html


10、这些都配置好后,就要启动presto,步骤如下:
(1)在bin目录下启动服务:bin/launcher start    bin/launcher start
(2)命令行启动:下载启动jar包:presto-cli-0.191-executable.jar,下载链接为: https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.191/presto-cli-0.191-executable.jar

(3)下载下来后改个名字为presto,放在bin目录下,然后给个执行权限:chmod +x presto ,如下图

(4)连接hive,并启动:./presto --server localhost:8080 --catalog hive --schema default
(5)如果要关闭presto服务,执行:bin/launcher stop

备注:如上配置像IP地址都要换成自己的集群,最后成功后可查询hive数据,如下图:


推荐阅读
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 最详尽的4K技术科普
    什么是4K?4K是一个分辨率的范畴,即40962160的像素分辨率,一般用于专业设备居多,目前家庭用的设备,如 ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 在Linux系统中避免安装MySQL的简易指南
    在Linux系统中避免安装MySQL的简易指南 ... [详细]
  • 在《Linux高性能服务器编程》一书中,第3.2节深入探讨了TCP报头的结构与功能。TCP报头是每个TCP数据段中不可或缺的部分,它不仅包含了源端口和目的端口的信息,还负责管理TCP连接的状态和控制。本节内容详尽地解析了TCP报头的各项字段及其作用,为读者提供了深入理解TCP协议的基础。 ... [详细]
  • MicrosoftDeploymentToolkit2010部署培训实验手册V1.0目录实验环境说明3实验环境虚拟机使用信息3注意:4实验手册正文说 ... [详细]
  • 通过使用Sqoop导入工具,可以精确控制并高效地将表数据的特定子集导入到HDFS中。具体而言,可以通过在导入命令中添加WHERE子句来指定所需的数据范围,从而在数据库服务器上执行相应的SQL查询,并将查询结果高效地存储到HDFS中。这种方法不仅提高了数据导入的灵活性,还确保了数据的准确性和完整性。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 【实例简介】本文详细介绍了如何在PHP中实现微信支付的退款功能,并提供了订单创建类的完整代码及调用示例。在配置过程中,需确保正确设置相关参数,特别是证书路径应根据项目实际情况进行调整。为了保证系统的安全性,存放证书的目录需要设置为可读权限。值得注意的是,普通支付操作无需证书,但在执行退款操作时必须提供证书。此外,本文还对常见的错误处理和调试技巧进行了说明,帮助开发者快速定位和解决问题。 ... [详细]
  • 如何将TS文件转换为M3U8直播流:HLS与M3U8格式详解
    在视频传输领域,MP4虽然常见,但在直播场景中直接使用MP4格式存在诸多问题。例如,MP4文件的头部信息(如ftyp、moov)较大,导致初始加载时间较长,影响用户体验。相比之下,HLS(HTTP Live Streaming)协议及其M3U8格式更具优势。HLS通过将视频切分成多个小片段,并生成一个M3U8播放列表文件,实现低延迟和高稳定性。本文详细介绍了如何将TS文件转换为M3U8直播流,包括技术原理和具体操作步骤,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 深入解析C语言中结构体的内存对齐机制及其优化方法
    为了提高CPU访问效率,C语言中的结构体成员在内存中遵循特定的对齐规则。本文详细解析了这些对齐机制,并探讨了如何通过合理的布局和编译器选项来优化结构体的内存使用,从而提升程序性能。 ... [详细]
  • 本文探讨了如何通过编程手段在Linux系统中禁用硬件预取功能。基于Intel® Core™微架构的应用性能优化需求,文章详细介绍了相关配置方法和代码实现,旨在帮助开发人员有效控制硬件预取行为,提升应用程序的运行效率。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
author-avatar
手机用户2502893613
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有