DLA Presto支持大查询

简介: DLA Presto独享版推出大查询功能,能让相同规格的虚拟集群,分析的数据量提升十倍。

背景介绍

阿里云数据湖分析(DLA)产品提供一站式的数据湖分析与计算服务。DLA Presto可以实现高效的在线分析,主要面向用户探索式分析、报表以及轻量ETL的场景,支持OSS、RDS、AnalyticsDB、MaxCompute、TableStore、ElasticSearch等多种数据源。


DLA Presto的独享的虚拟集群中,当Query的数据量比较大,容易报内存超过限制的错误。但许多时候,用户某些Query是ETL类型的任务,它可以容忍慢一些,但不能失败。对于这种情况,DLA Presto独享版推出大查询功能,能让相同规格的虚拟集群,分析的数据量提升十倍。


新功能介绍

使用场景

当运行在DLA Presto中Query处理的数据量比较大,容易出现类似如下的报错信息。

Query exceeded per-node user memory limit...

出现此异常一般是因为某一节点处理的数据量过大,超出了单节点对内存的限制。这种情况下,你可以先排除你处理的数据是否有数据倾斜或SQL是否写得合理,如果确定数据没有倾斜且SQL写得是合理的,那可以考虑使用DLA Presto的big_query功能。


使用方法

开启的方法很简单,只需要在查询前加一个hint

/*+big_query=true*/ insert into table1 SELECT * FROM table2;

注意事项:

(1)big_query功能只在独享虚拟集群中支持,public(扫描量)集群中不支持该功能。

(2)它可能会增加你的Query运行耗时。

(3)它并不能让你处理任意大小的数据和任意复杂SQL,可以参考的数据量是64Core规格可执行10T的TPCH查询。

(4)当前的Schema的Catalog类型必须是Hive,否则会报如下的错误:

big_query only support hive catalog ...

大查询的原理

DLA Presto大查询的功能基于Presto的Exchange物化和GroupExecution功能,开启该功能后,不再一次性把所有子任务调度起来执行,而是通过把中间数据落到预先分好区的表中,GroupedExecution允许同时只有一部分数据集做处理,能大大减小查询占用的内存,使得64Core规格的DLA Presto虚拟集群能处理的查询数据量由1T增加到10T

image.png

在聚合阶段每个分区独立执行

控制分区并发执行数量减小内存消耗

每个分区单独重试

shuffle

Writer

Aggr

Scan

Writer

Aggr

Scan

Writer

Aggr

Scan

Writer

Aggr


使用DLA Presto的优势

DLA Presto(兼容Presto)的目标是提供比开源自建更高的性价比、开箱即用的体验、方便的数据摄入、MySQL生态带来的简单易用、内置各种优化的数据湖分析计算服务。用户可以先通过使用Serverless版本低成本试用,然后根据使用频率的高低、对资源是否有强独占的需求来决定生产环境使用Serverless版本还是CU版本。DLA SQL还在不断发展中,目前规划中的一些特性包含:

  • 按照时间段或者工作负载进行自动扩缩容,帮助用户节省成本。
  • 支持文件缓存机制,提升查询性能
  • 内置大数据最佳实践,自动拦截Bad SQL

欢迎大家关注我们的钉钉群获取最新的信息:

分享:

相关文章
|
3月前
|
消息中间件 分布式计算 关系型数据库
大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
69 0
|
5月前
|
SQL 关系型数据库 HIVE
实时计算 Flink版产品使用问题之如何将PostgreSQL数据实时入库Hive并实现断点续传
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
7月前
|
SQL 缓存 关系型数据库
ClickHouse(19)ClickHouse集成Hive表引擎详细解析
Hive引擎允许对HDFS Hive表执行 `SELECT` 查询。目前它支持如下输入格式: -文本:只支持简单的标量列类型,除了 `Binary` - ORC:支持简单的标量列类型,除了`char`; 只支持 `array` 这样的复杂类型 - Parquet:支持所有简单标量列类型;只支持 `array` 这样的复杂类型
241 1
|
7月前
|
SQL 分布式计算 安全
ClickHouse(22)ClickHouse集成HDFS表引擎详细解析
ClickHouse的HDFS引擎允许直接在Hadoop生态系统内管理数据。使用`ENGINE=HDFS(URI, format)`,其中URI指定HDFS路径,format定义文件格式(如TSV、CSV或ORC)。表可读写,但不支持`ALTER`、`SELECT...SAMPLE`、索引和复制操作。通配符可用于文件路径,如`*`、`?`和范围`{N..M}`。Kerberos认证可配置。虚拟列包括文件路径 `_path` 和文件名 `_file`。有关更多信息,参见相关文章系列。
185 0
|
SQL 物联网 关系型数据库
实时即未来,车联网项目之phoenix on hbase 即席查询【四】
实时即未来,车联网项目之phoenix on hbase 即席查询【四】
223 0
|
存储 负载均衡 监控
基于 EMR OLAP 的开源实时数仓解决方案之 ClickHouse 事务实现
阿里云 EMR OLAP 与 Flink 团队深度合作,支持了 Flink 到 ClickHouse 的 Exactly-Once写入来保证整个实时数仓数据的准确性。本文介绍了基于 EMR OLAP 的开源实时数仓解决方案。
基于 EMR OLAP 的开源实时数仓解决方案之 ClickHouse 事务实现
|
存储 负载均衡 监控
基于 EMR OLAP 的开源实时数仓解决方案之 Flink + ClickHouse 事务实现
本文介绍了如何支持 Flink 到 ClickHouse 的 Exactly-Once 写入来保证整个实时数仓数据准确性的现有机制及实现方案。
基于 EMR OLAP 的开源实时数仓解决方案之 Flink + ClickHouse 事务实现
|
存储 Java 数据库连接
基于EMR OLAP的开源实时数仓解决方案之ClickHouse事务实现
Flink 和 ClickHouse 分别是实时流式计算和 OLAP 领域的翘楚,很多互联网、广告、游戏等客户都将两者联合使用于构建用户画像、实时 BI 报表、应用监控指标查询、监控等业务,形成了实时数仓解决方案
基于EMR OLAP的开源实时数仓解决方案之ClickHouse事务实现
|
消息中间件 分布式计算 关系型数据库
阿里云 E-MapReduce ClickHouse 操作指南 04 期 — 数据导入
阿里云 E-MapReduce(简称 EMR )是运行在阿里云平台上的一种大数据处理的系统解决方案。ClickHouse 作为开源的列式存储数据库,主要用于在线分析处理查询(OLAP),能够使用 SQL 查询实时生成分析数据报告。而阿里云 EMR ClickHouse 则提供了开源 OLAP 分析引擎 ClickHouse 的云上托管服务。
阿里云 E-MapReduce ClickHouse 操作指南 04 期 — 数据导入
|
SQL 存储 缓存
DLA-Presto二月更新
大家过年好啊,阿里云数据湖分析DLA-Presto二月迭代轻磅发布,请查收。 分区投影: 帮您解决分区爆炸后查询慢的问题。 Cassandra Connector: 针对小表的性能优化比目前开源版本提高60多倍。 控制ETL结果文件数: 解决您的小文件多的问题。 CU支持指定默认Hint: 如果一个hint每个SQL都要写,那么我们配置到CU级别吧。

热门文章

最新文章