因为Presto版本的更新速度较快,所以最好按照对应版本的教程进行部署,博主之前看错了版本号,拿0.100版本的教程来部署0.157版本,结果导致部署失败。
官网:https://prestodb.io

一、下载Presto0.157版本

下载地址:https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.157/presto-server-0.157.tar.gz

二、解压Presto压缩包

tar -zxvf presto-server-0.157.tar.gz

三、配置Presto(配置说明可查阅官网)

  • 在presto解压路径下创建etc文件夹
[root@cdh5 presto-server-0.157]# mkdir etc
  • 在/etc文件夹下添加node.properties配置文件
node.environment=production
node.id=ffffffff-ffff-ffff-ffff-ffffffffffff
node.data-dir=/var/presto/data
  • 在/etc文件夹下添加jvm.config配置文件
-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:OnOutOfMemoryError=kill -9 %p
  • 在/etc文件夹下添加config.properties配置文件
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8080
query.max-memory=50GB
query.max-memory-per-node=1GB
discovery-server.enabled=true
discovery.uri=http://cdh5:8080

注:cdh5为你的主机名,单节点下node-scheduler.include-coordinator属性要设置为true

  • 在/etc文件夹下添加log.properties配置文件
com.facebook.presto=INFO

四、添加数据源(可根据需求添加)

  • 在/etc路径下创建catalog文件夹
[root@cdh5 etc]# mkdir catalog
  • 在catalog文件下添加hive数据源hive.properties
connector.name=hive-cdh5
hive.metastore.uri=thrift://cdh5:9083
  • 在catalog文件下添加mysql数据源mysql.properties
connector.name=mysql
connection-url=jdbc:mysql://cdh5:3306
connection-user=root
connection-password=root
  • 在catalog文件下添加postgresql数据源postgresql.properties
connector.name=postgresql
connection-url=jdbc:postgresql://192.168.236.1:5432/postgres
connection-user=postgres
connection-password=root

五、启动Presto

Presto有两种启动方式,一种是后台启动,一种是前台启动。前台启动关闭控制台之后Presto就会停止运行。Presto的启动命令为launcher,在Presto的bin目录下。

  • 前台启动并显示日志
launcher -v run
  • 后台启动
launcher start
  • 查看Presto的进程

六、下载并运行presto-cli-0.157-executable.jar

下载地址:presto-cli-0.157-executable.jar

  • 授予可运行的权限
chmod +x presto-cli-0.157-executable.jar
  • 运行该jar包并连接到Presto服务端,如果Presto后台启动,需要等一会,否则Presto的服务端还没有初始化完毕导致Cli连接不上Presto Server
./presto-cli-0.157-executable.jar --server cdh5:8080

七、执行命令

  • 查询catalog(我们配置的数据源,如Hive,Mysql之类的)
presto> show catalogs;

  • 查询catalog下的schema(例如Mysql下面的数据库)
presto> show schemas in mysql;

  • 跨数据源查询
presto> select * from mysql.presto.tb_item as t1,hive.default.htb_item_desc as t2 where t1.id = t2.item_id;

控制台的这些操作都可以通过jdbc来完成,在后面的博客中如何使用jdbc来连接Presto

Presto0.157版本单节点部署教程的更多相关文章

  1. 全网最新的nacos 2.1.0集群多节点部署教程

    原文链接:全网最新的nacos 2.1.0集群多节点部署教程-语雀 基本信息 进度整理中 版本 2.1.0 版本发布日期 2022-04-29 git revision number b5845313 ...

  2. Ubuntu下用devstack单节点部署Openstack

    一.实验环境 本实验是在Vmware Workstation下创建的单台Ubuntu服务器版系统中,利用devstack部署的Openstack Pike版. 宿主机:win10 1803  8G内存 ...

  3. .netcore consul实现服务注册与发现-单节点部署

    原文:.netcore consul实现服务注册与发现-单节点部署 一.Consul的基础介绍     Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分 ...

  4. Kubernetes 二进制部署(一)单节点部署(Master 与 Node 同一机器)

    0. 前言 最近受“新冠肺炎”疫情影响,在家等着,入职暂时延后,在家里办公和学习 尝试通过源码编译二进制的方式在单一节点(Master 与 Node 部署在同一个机器上)上部署一个 k8s 环境,整理 ...

  5. HyperLedger Fabric 1.4 单机单节点部署(10.2)

    单机单节点指在一台电脑上部署一个排序(Orderer)服务.一个组织(Org1),一个节点(Peer,属于Org1),然后运行官方案例中的example02智能合约例子,实现转财交易和查询功能.单机单 ...

  6. 恒天云单节点部署指南--OpenStack H版本虚拟机单节点部署解决方案

    本帖是openstack单节点在虚拟机上部署的实践.想要玩玩和学习openstack的小伙伴都看过来,尤其是那些部署openstack失败的小伙伴.本帖可以让你先领略一下openstack的魅力.本I ...

  7. 单节点部署Hadoop教程

    搭建HDFS 增加主机名 我这里仅仅增加了master主机名 [root@10 /xinghl/hadoop/bin]$ cat /etc/hosts 127.0.0.1 localhost 10.0 ...

  8. MongoDB 3.2复制集单节点部署(四)

    MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 3.2版本进行复制集实验(但MongoDB配置文件 ...

  9. MongoDB 2.6复制集单节点部署(三)

    MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 2.6版本进行复制集实验(但MongoDB配置文件 ...

随机推荐

  1. 【Android Developers Training】 36. 设置文件共享

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  2. Sublime text3插件安装方法

    一.安装sublime text3插件的方法: 1.Ctrl+~键,调出console,将下面代码复制到底部命令行,回车: import urllib.request,os; pf = 'Packag ...

  3. Java多线程(二) —— 线程安全、线程同步、线程间通信(含面试题集)

    一.线程安全 多个线程在执行同一段代码的时候,每次的执行结果和单线程执行的结果都是一样的,不存在执行结果的二义性,就可以称作是线程安全的. 讲到线程安全问题,其实是指多线程环境下对共享资源的访问可能会 ...

  4. accp8.0转换教材第11章JAjax加护扩展理解与练习

    ①杂记:前面有原生态JavaScript实现ajax这里又多了更简单的方法实现ajax ②$.get()方法的常用参数 参数 类型 说明 url String 必选,规定发送地址 data Plain ...

  5. usaco training 4.2.4 Cowcycles 题解

    Cowcycles题解 Originally by Don Gillies [International readers should note that some words are puns on ...

  6. 第2篇:用as3.0制作一个滚动条组件

    本实例演示了实现一个滚动条基本功能的制作方法,没有添加改变皮肤,修改滚动条视框大小等功能,有兴趣的朋友可根据自己要求自行添加.使用时只需要通过以下一行代码创建滚动条组件: var myScrollba ...

  7. 基于PlatinumKit库的DLNA服务端开发

    首先,需要特别感谢蓝斯老师的资料,我这里有很大一部分是参考蓝斯老师的,附上传送门:http://blog.csdn.net/lancees/article/details/9178385 一.DLNA ...

  8. Python爬虫从入门到放弃(十六)之 Scrapy框架中Item Pipeline用法

    当Item 在Spider中被收集之后,就会被传递到Item Pipeline中进行处理 每个item pipeline组件是实现了简单的方法的python类,负责接收到item并通过它执行一些行为, ...

  9. JS封闭函数、闭包、内置对象

    一.变量作用域 变量作用域指的是变量的作用范围,javascript中的变量分为全局变量和局部变量 1.全局变量:在函数之外定义的变量,为整个页面公用,函数的内部外部都可以访问. 2.局部变量:在函数 ...

  10. 【TensorFlow入门完全指南】模型篇·逻辑斯蒂回归模型

    import库,加载mnist数据集. 设置学习率,迭代次数,batch并行计算数量,以及log显示. 这里设置了占位符,输入是batch * 784的矩阵,由于是并行计算,所以None实际上代表并行 ...