presto安装指南及踩坑指南

一、安装

1.下载安装

presto官网: https://prestodb.io/download.html
官网介绍:
什么是 PRESTO?
Presto 是一个开源分布式 SQL 查询引擎,用于针对从千兆字节到 PB 级的各种规模的数据源运行交互式分析查询。

Presto 是为交互式分析而从头开始设计和编写的,其速度接近商业数据仓库的速度,同时可扩展到 Facebook 等组织的规模。

可以直接从官网下载最新的安装包:presto-server-0.260.1.tar.gz 和 命令行工具: presto-cli-0.260.1-executable.jar
官网下载安装包presto对Java【JDK】版本要求比较高,要求1.85以上的,如果你的JDK版本再1.85以上,可以直接用最新的安装包安装,我们公司的服务器都是1.8.0,所以只能安装低版本的presto:
可以安装在路径: /opt/presto/

mkdir /opt/presto/
cd /opt/presto/
#下载
wget https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.195/presto-server-0.195.tar.gz
#解压
tar zxvf presto-server-0.195.tar.gz
#进入bin目录下载cli命令行 : /opt/presto/presto-server-0.195/bin
cd /opt/presto/presto-server-0.195/bin
wget -c https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.195/presto-cli-0.195-executable.jar
#改名
mv presto-cli-0.195-executable.jar presto
#赋执行权限
chmod +x presto
#创建在目录/opt/presto/presto-server-0.195 下 etc文件夹存放配置文件
mkdir /opt/presto/presto-server-0.195/etc
#创建data路径存放数据和日志文件
mkdir /opt/presto/data

解压不报错的话,解压完路径是这样子的:
解压完路径下文件目录
注:我第一次解压报错没有lib目录是有问题的,后面会启动不了,所有后来又重装了一遍

2.配置

一共安装三台机器,一台角色为coordinator,另外两台为worker
进入etc路径
cd /opt/presto/presto-server-0.195/etc
etc路径下要配置的文件
按照上边的文件配置好‘
config.properties
coordinator机器设置为:production,worker机器设置为false
5,6行要注释掉,要不然会报错

coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8081
query.max-memory=5GB
#query.max-memory-per-node=1GB
#query.max-total-memory-per-node=2GB
discovery-server.enabled=true
discovery.uri=http://master:8081

jvm.config

-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError

log.properties

com.facebook.presto=INFO

node.properties
node.id要集群所有机器都不一致
node.environment

node.environment=production
node.id=presto1
node.data-dir=/opt/presto/data

catalog/hive.properties
connector.name是固定的

connector.name=hive-hadoop2
hive.metastore.uri=thrift://master:9083
hive.config.resources=/etc/hadoop/conf/core-site.xml,/etc/hadoop/conf/hdfs-site.xml

遇到过的坑:

坑1:启动报错 错误: 找不到或无法加载主类 com.facebook.presto.server.PrestoServer

这个是解压路径不全报错,重新下载安装包重新解压就好了【也有可能是JDK版本不够导致的】

坑2:启动报错 Presto requires an Oracle or OpenJDK JVM (found Red Hat, Inc.)

我一共装三台服务器,然后发现有一台JDK版本不一致,然后那台报错了。不报错的jdk版本:
sun版JDK

报错的JDK版本:openjdk version “1.8.0_292”
open版JDK
我的是因为新装的JDK151和原本自带的openJDK冲突了,卸载就行了

#查看jdk版本
java -version
#查看已安装的JDK版本,发现有151和openjdk292版本
rpm -qa | grep jdk
#卸载openJDK
yum remove java-1.8.0-openjdk-headless-1.8.0.292.b10-1.el7_9.x86_64

这两个openjdk和sun版JDK区别参考:https://www.iteye.com/blog/fgh2011-1771649
要卸载openjdk,再安装sun版JDK 
重装JDK就不报错了
百度问题得到的解决: https://github.com/prestodb/presto/issues/9398 【没太看懂】

坑3 启动报错 Configuration property ‘query.max-total-memory-per-node’ was not used

这个是配置文件参考官网报错,注释掉两行配置就可以了
报错解决参考: https://www.cnblogs.com/huangguoming/p/12712318.html

坑4 集群正在初始化,稍等几分钟就好了

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值