首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Presto系列 | Presto基本介绍

233酱准备不定时持续更新这个系列,本文主要从Presto的使用举例,Presto的应用场景、Presto的基本概念三个部分来初步介绍Presto。...Presto的使用举例 比如说,你想对存储在不同数据源中的数据,如HDFS、Mysql、HBase等通过一个SQL做查询分析,那么只需要把每一个数据源当成是Presto的Connector,对应实现Presto...Presto跑批的限制原因: ? Presto跑批的条件: ? 所以他们提供了Presto on Spark方案,这样做的好处是可以统一用户使用的SQL方言差异,UDF差异。 ?...Presto的基本概念 前面主要谈了Presto的使用场景,下面简要从 Presto的架构和基本术语上介绍PrestoPresto架构 Presto的架构图如下: ?...Coordinator Presto中的Coordinator节点负责解析SQL语句,生成并优化物理执行计划,管理Presto worker节点。它是Presto运行的“大脑”。

4K40
您找到你想要的搜索结果了吗?
是的
没有找到

快速学习-Presto优化

第3章 Presto优化 3.1 数据存储 1)合理设置分区 与Hive类似,Presto会根据元信息读取分区数据,合理的分区能减少Presto数据读取量,提升查询性能。...2)使用列式存储 PrestoORC文件读取做了特定优化,因此在Hive中创建Presto使用的表时,建议采用ORC格式存储。相对于Parquet,PrestoORC支持更好。...TBLPROPERTIES ("orc.compress"="SNAPPY"); 先将数据灌入orc表,然后更换表名 insert overwrite table bdc_dm.res_category_orc...3.4 注意事项 ORC和Parquet都支持列式存储,但是ORCPresto支持更好(Parquet对Impala支持更好) 对于列式存储而言,存储文件为二进制的,对于经常增删字段的表,建议不要使用列式存储...对比数据仓库,dwd层建议不要使用ORC,而dm层则建议使用。

1.9K20

关于Presto避坑的小小指南

千万不要以为Presto可以解析SQL,那么Presto就是一个标准的数据库。 Presto被设计为数据仓库和数据分析产品:数据分析、大规模数据聚集和生成报表。...遇到过的问题 如何加快在Presto上的数据统计 很多的时候,在Presto上对数据库跨库查询,例如Mysql数据库。...若要提高数据统计的速度,可考虑把Mysql中相关的数据表定期转移到HDFS中,并转存为高效的列式存储格式ORC。...CREATE TABLE IF NOT EXISTS table_1 ( id INTEGER, ........ partition_date INTEGER )WITH ( format = 'ORC...ORC格式 Presto中对ORC文件格式进行了针对性优化,但在impala中目前不支持ORC格式的表,hive中支持ORC格式的表,所以想用列式存储的时候可以优先考虑ORC格式。

1.9K10

大数据Presto(五):Presto优化与Impala对比

Presto优化与Impala对比一、Presto优化1、​​​​​​​​​​​​​​数据存储一般Presto与Hive整合使用,针对这种使用情况有如下几点优化建议:合理设置分区合理设置分区在读取数据时可以针对分区数据读取...,可以减少Presto数据读取量,提升查询性能。...使用列式存储PrestoORC文件读取做了特定优化,因此在Hive中创建Presto使用的表时,建议采用ORC格式存储。相对于Parquet,PrestoORC支持更好。...使用Join语句时将大表放在左边使用Join语句时将大表放在左边Presto中join的默认算法是broadcast join,即将join左边的表分割到多个worker,然后将join右边的表数据整个复制一份发送到每个...二、​​​​​​​​​​​​​​Presto与Impala对比Impala性能比Presto相对来说要快一些,两者都对内存消耗比较大,虽然Impala速度快但是Presto支持的数据源丰富。

1.5K61

腾讯 PB 级大数据计算如何做到秒级?

天穹 Presto 也对 Iceberg Connector 做了一系列的功能增强,包括 ORC 存储格式支持(PR-16391)、Timestamp With Time Zone 类型支持、Alluxio...3.3 大文件 ORC 统计信息读取优化 Presto 在读取 ORC 文件时,会先读取文件的 Stripe 统计信息,用于优化 ORC 的数据读取,但是如果 ORC 文件比较大,同时文件数量又比较多的情况下...天穹 Presto 采用了以下的方案来尽量避免这个问题:对于来自同一个 ORC 大文件的 Splits,避免重复读取文件的 Stripe 统计信息。...SplitFilerOperator 会先读取一次 ORC 文件的 Stripe 统计信息,生成新的 ORC Splits,新的 Splits 包含了利用 Stripe 统计信息过滤优化后的数据读取地址...,后续 ORC Splits 分发至 Worker 中执行时,无需再读取 Stripe 统计信息,直接读取数据即可。

1.4K21

天穹SuperSQL如何把腾讯 PB 级大数据计算做到秒级?

天穹Presto也对Iceberg Connector做了一系列的功能增强,包括ORC存储格式支持(PR-16391)、Timestamp With Time Zone类型支持、Alluxio Local...3.3 大文件ORC统计信息读取优化 Presto在读取ORC文件时,会先读取文件的Stripe统计信息,用于优化ORC的数据读取,但是如果ORC文件比较大,同时文件数量又比较多的情况下,StripeStatistics...天穹Presto采用了以下的方案来尽量避免这个问题:对于来自同一个ORC大文件的Splits,避免重复读取文件的Stripe统计信息。...SplitFilerOperator会先读取一次ORC文件的Stripe统计信息,生成新的ORC Splits,新的Splits包含了利用Stripe统计信息过滤优化后的数据读取地址,后续ORC Splits...天穹内部环境测试结果显示该方案能减少50%左右的StripeStatistics对象内存占用,原先造成OOM的ORC查询,采用新方案的实现后也可以正常执行完成,目前正在上线生产环境中。

1.7K41

从 0 到 1 学习 Presto,这一篇就够了

命令行 Client 的安装 4、Presto 的基本使用 5、Presto可视化客户端的安装 6、Presto的优化 6.1 数据存储 6.1.1 合理设置分区 6.1.2 使用 ORC 格式存储...6.1.2 使用 ORC 格式存储 PrestoORC文件 读取进行了特定优化,因此,在 Hive 中创建 Presto 使用的表时,建议采用 ORC 格式存储。...相对于 Parquet 格式,PrestoORC 格式支持得更好。...中不支持 insert overwrite语法,只能先delete,然后insert into 6.4.11 ORC 格式 Presto 中对 ORC 文件格式进行了针对性优化,但在 impala 中目前不支持...ORC格式的表,hive中支持 ORC 格式的表,所以想用列式存储的时候可以优先考虑ORC格式 6.4.12 PARQUET 格式 Presto 目前支持 parquet 格式,支持查询

5.6K32

Presto介绍与常用查询优化方法

Facebook称Presto的性能比Hive要好上10倍多。2013年Facebook正式宣布开源PrestoPresto架构 ?...,合理的分区能减少Presto数据读取量,提升查询性能。...使用列式存储 PrestoORC文件读取做了特定优化,因此在Hive中创建Presto使用的表时,建议采用ORC格式存储。相对于Parquet,PrestoORC支持更好。...使用压缩 数据压缩可以减少节点间数据传输对IO带宽压力,对于即席查询需要快速解压,建议采用snappy压缩 预先排序 对于已经排序的数据,在查询的数据过滤阶段,ORC格式支持跳过读取不必要的数据。...Impala性能稍领先于presto,但是presto在数据源支持上非常丰富,presto对SQL的支持上也更多一些。

3.3K50

Presto统计信息

表统计 Presto支持基于统计的查询优化。为了使查询能够利用这些优化,Presto必须具有该查询中表的统计信息。 表统计信息通过连接器提供给查询计划者。...Presto会根据查询中的过滤谓词,尝试选择由最少数量的分区组成的table layout。...可以使用SHOW STATS for命令通过Presto SQL界面显示表统计信息。 ?...每个计划片段均由单个或多个Presto节点执行。片段分离代表Presto节点之间的数据交换。片段类型指定Presto节点如何执行片段以及片段之间的数据分配方式. SINGLE 片段在单个节点上执行....使用VERBOSE选项时,将提供更详细的信息和低级别的统计信息;要了解这些内容,需要了解Presto内部和实现细节。 可以看到每个阶段花费的CPU时间以及该阶段中每个计划节点的相对成本。

2.5K30

0767-Hive ACID vs. Delta Lake

和Spark读取Hive ACID事务表,可以联系Qubole的技术支持customersupport@qubole.com 2.3 用法示例 以下是具有完整ACID表(当前仅支持ORC格式)的典型流程示例...参考: https://github.com/qubole/spark-acid 3.5 Presto实现 在添加对读取Hive事务表的支持时,Presto面临两个主要挑战: 协调Hive事务和Presto...事务 - Presto拥有自己的事务管理,我们扩展了该事务管理,以便为Presto事务中的每个查询设置Hive事务。...Hive事务表的高性能reader - 我们为此评估了多种设计选择,并决定扩展Presto原生的ORC reader。与其它方法相比,此方法涉及的改动会较大,但从性能角度来看,这是最佳选择。...在此实现中,们确保事务表继续使用流拆分生成(streaming split generation),利用读数据的延迟物化(lazy materialization),并且不会受到Presto原生的ORC

1.9K20

Presto介绍及常用查询优化方法总结

​1、Presto简介 Presto是Facebook开源的MPP(Massive Parallel Processing)SQL引擎,其理念来源于一个叫Volcano的并行数据库,该数据库提出了一个并行执行...Presto提供了一套Connector接口,用于读取元信息和原始数据。 Presto 内置有多种数据源,如 Hive、MySQL、Kudu、Kafka 等。...小心使用内存和数据结构 GC控制 无容错 2、Presto查询优化 2.1 存储优化 ① 合理设置分区 与Hive类似,Presto会根据元信息读取分区数据,合理的分区能减少Presto数据读取量,提升查询性能...② 使用列式存储 PrestoORC文件读取做了特定优化,因此在Hive中创建Presto使用的表时,建议采用ORC格式存储。相对于Parquet,PrestoORC支持更好。...③ 使用压缩 数据压缩可以减少节点间数据传输对IO带宽压力,对于即席查询需要快速解压,建议采用snappy压缩 ④ 预先排序 有条件的话提前做好排序,对于已经排序的数据,在查询的数据过滤阶段,ORC格式支持跳过读取不必要的数据

2.4K00
领券