(44)Presto 命令行 Client 安装

2024-01-22 23:08

本文主要是介绍(44)Presto 命令行 Client 安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 命令行 Client 安装
1 )下载 Presto 的客户端
https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.196/presto-cli-0.196-
executable.jar
2 )将 presto-cli-0.196-executable.jar 上传到 hadoop102 /opt/module/presto 文件夹下
3 )修改文件名称
[atguigu@hadoop102 presto]$ mv presto-cli-0.196-executable.jar
prestocli
4 )增加执行权限
[atguigu@hadoop102 presto]$ chmod +x prestocli
5 )启动 prestocli
[atguigu@hadoop102 presto]$ ./prestocli --server hadoop102:8881
--catalog hive --schema default
6 Presto 命令行操作
Presto 的命令行操作,相当于 Hive 命令行操作。每个表必须要加上 schema
例如:
select * from schema.table limit 100
2.可视化 Client 安装
1 )将 yanagishima-18.0.zip 上传到 hadoop102 /opt/module 目录
2 )解压缩 yanagishima
[atguigu@hadoop102 module]$ unzip yanagishima-18.0.zip
cd yanagishima-18.0
3 )进入到 /opt/module/yanagishima-18.0/conf 文件夹,编写 yanagishima.properties 配置
[atguigu@hadoop102 conf]$ vim yanagishima.properties
添加如下内容
jetty.port=7080
presto.datasources=atguigu-presto
presto.coordinator.server.atguigu-presto=http://hadoop102:8881
catalog.atguigu-presto=hive
schema.atguigu-presto=default
sql.query.engines=presto
4 )在 /opt/module/yanagishima-18.0 路径下启动 yanagishima
[atguigu@hadoop102 yanagishima-18.0]$
nohup bin/yanagishima-start.sh >y.log 2>&1 &
5 )启动 web 页面
http://hadoop102:7080
看到界面,进行查询了。
6 )查看表结构

 

这里有个 Tree View ,可以查看所有表的结构,包括 Schema 、表、字段等。
比如执行 select * from hive.dw_weather.tmp_news_click limit 10 ,这个句子里 Hive 这个
词可以删掉,是上面配置的 Catalog

 

每个表后面都有个复制键,点一下会复制完整的表名,然后再上面框里面输入 sql 语句,
ctrl+enter 键执行显示结果

 

3 Presto 优化之数据存储
1.3.1 合理设置分区
Hive 类似, Presto 会根据元数据信息读取分区数据,合理的分区能减少 Presto 数据
读取量,提升查询性能。
1.3.2 使用列式存储
Presto ORC 文件读取做了特定优化,因此在 Hive 中创建 Presto 使用的表时,建议采
ORC 格式存储。相对于 Parquet Presto ORC 支持更好。
1.3.3 使用压缩
数据压缩可以减少节点间数据传输对 IO 带宽压力,对于即席查询需要快速解压,建议
采用 Snappy 压缩。
Presto 优化之查询 SQL
1.4.1 只选择使用的字段
由于采用列式存储,选择需要的字段可加快字段的读取、减少数据量。避免采用 * 读取
所有字段。

 

1.4.2 过滤条件必须加上分区字段
对于有分区的表, where 语句中优先使用分区字段进行过滤。 acct_day 是分区字段,
visit_time 是具体访问时间。

 

1.4.3 Group By 语句优化
合理安排 Group by 语句中字段顺序对性能有一定提升。将 Group By 语句中字段按照每
个字段 distinct 数据多少进行降序排列。

 1.4.4 Order by 时使用 Limit

Order by 需要扫描数据到单个 worker 节点进行排序,导致单个 worker 需要大量内存。
如果是查询 Top N 或者 Bottom N ,使用 limit 可减少排序计算和内存压力。

 

1.4.5 使用 Join 语句时将大表放在左边
Presto join 的默认算法是 broadcast join ,即将 join 左边的表分割到多个 worker ,然后
join 右边的表数据整个复制一份发送到每个 worker 进行计算。如果右边的表数据量太大,
则可能会报内存溢出错误。

 

1.5 注意事项
1.5.1 字段名引用
避免和关键字冲突: MySQL 对字段加反引号 ` Presto 对字段加 双引号分割
当然,如果字段名称不是关键字,可以不加这个双引号。
1.5.2 时间函数
对于 Timestamp ,需要进行比较的时候,需要添加 Timestamp 关键字,而 MySQL 中对
Timestamp 可以直接进行比较。
/*MySQL 的写法 */

1.5.3 不支持 INSERT OVERWRITE 语法
Presto 中不支持 insert overwrite 语法,只能先 delete ,然后 insert into
1.5.4 PARQUET 格式
Presto 目前支持 Parquet 格式,支持查询,但不支持 insert

这篇关于(44)Presto 命令行 Client 安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/634537

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

Centos7安装JDK1.8保姆版

工欲善其事,必先利其器。这句话同样适用于学习Java编程。在开始Java的学习旅程之前,我们必须首先配置好适合的开发环境。 通过事先准备好这些工具和配置,我们可以避免在学习过程中遇到因环境问题导致的代码异常或错误。一个稳定、高效的开发环境能够让我们更加专注于代码的学习和编写,提升学习效率,减少不必要的困扰和挫折感。因此,在学习Java之初,投入一些时间和精力来配置好开发环境是非常值得的。这将为我

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

用命令行的方式启动.netcore webapi

用命令行的方式启动.netcore web项目 进入指定的项目文件夹,比如我发布后的代码放在下面文件夹中 在此地址栏中输入“cmd”,打开命令提示符,进入到发布代码目录 命令行启动.netcore项目的命令为:  dotnet 项目启动文件.dll --urls="http://*:对外端口" --ip="本机ip" --port=项目内部端口 例: dotnet Imagine.M

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

衡石分析平台使用手册-单机安装及启动

单机安装及启动​ 本文讲述如何在单机环境下进行 HENGSHI SENSE 安装的操作过程。 在安装前请确认网络环境,如果是隔离环境,无法连接互联网时,请先按照 离线环境安装依赖的指导进行依赖包的安装,然后按照本文的指导继续操作。如果网络环境可以连接互联网,请直接按照本文的指导进行安装。 准备工作​ 请参考安装环境文档准备安装环境。 配置用户与安装目录。 在操作前请检查您是否有 sud