让你的QuickBI报表快起来: 使用DLA Presto来无缝加速-阿里云开发者社区

开发者社区> 云原生数据湖 Data Lake Analytics> 正文
登录阅读全文

让你的QuickBI报表快起来: 使用DLA Presto来无缝加速

简介: QuickBI提供了通过DLA Presto加速MaxCompute查询的功能,在TPCH测试中,查询的性能提升最小的1倍多,最大的8倍多,让您的报表飞起来 :)

Quick BI是专为云上用户量身打造的新一代智能BI服务平台, 提供海量数据实时在线分析服务,支持拖拽式操作、提供了丰富的可视化效果。QuickBI提供了通过DLA加速MaxCompute查询的功能,当报表基于MaxCompute 数据源创建时,您可以在Quick BI上配置DLA加速引擎,通过DLA Presto为MaxCompute 数据源加速,从而节约报表的查询时间,提升用户体验。

关于加速的效果,我们专门针对TPCH数据集做了测试,TPCH一共22条SQL中,查询的特征是偏IO密集型的SQL(17条)都有加速效果,加速效果从最小的1.x倍,到最大的8.x倍,比如提升倍数最大的Q12 111.6s -> 13s,大大提高了体验。

为了方便大家体验这个加速功能,咱们在文章末尾准备了一个免费试用的活动,欢迎大家试用。

原理

开启查询加速后,QuickBI会在DLA中创建MaxCompute的表,当用户查看报表时,QuickBI会同时向MaxCompute和DLA发起查询,如果DLA先返回结果,就会使用DLA的查询结果,从而达到查询加速的效果。

在DLA中会对MaxCompute的数据、分区等信息进行缓存。如果一个查询依赖的数据存在于缓存中且缓存有效(MaxCompute中没有进行过更新操作,因此MaxCompute中的数据和缓存一致),则直接读取缓存的数据,否则从MaxCompute读取数据。这样DLA总是能返回最新的数据,并且在对MaxCompute中同样的数据进行多次查询时,会起到加速的效果。

DLA对MaxCompute的查询加速不仅限于来自QuickBI的查询,直接通过DLA查询MaxCompute数据源也可以享受到查询加速的效果。

加速效果

我们通过一个测试来验证DLA查询加速的效果。
数据源:向MaxCompute导入TPCH-100GB的数据。最大的两个表 lineitem 6亿行左右。orders 1.5亿行。lineitem表按照l_shipdate分区,分区数2000+,orders表按照o_orderdate分区,分区数2000+。其他表仍然不分区。
测试SQL:TPCH的22条SQL(其中Q20 ODPS报错跑不出来)。
测试方法:分别在MaxCompute中直接执行SQL,和通过DLA64核256GB的CU执行SQL,比较延时。
测试结果
DLA中有加速效果的查询如下:

dla-odps-boost-marked.png

这张图的纵轴是查询的运行时间,单位是毫秒,横轴是所有运行的查询。可以看出TPCH一共22条SQL中,绝大部分有加速的效果,这些查询的特征是偏IO密集型的,加速效果从最小的1.x倍,到最大的8.x倍,比如提升倍数最大的Q12 111.6s -> 13s,大大提高了体验。

实施步骤

步骤1 开通Presto CU

DLA只在CU版提供了Maxcompute查询加速功能。因此,如果您没有开通Presto CU,需要参考开通CU文档进行开通。
注意:
• DLA Presto与需要加速MaxCompute项目要在同一地域。
• 推荐规格32核128 GB及以上版本。

步骤2 配置加速引擎

在Quick BI配置加速引擎,具体操作请参见配置加速引擎
说明 在配置加速引擎之前,需要将IP地址10.152.69.0/24,10.152.163.0/24,139.224.4.0/24加入到DLA的白名单。否则,Quick BI无法成功连接DLA,起不到加速查询的效果。

优惠活动

针对QuickBI加速的场景,DLA这边推出了32C免费试用两周的活动,消除您试用的后顾之忧,优惠的开通可以直接找相关对接的阿里云对接的同学,或者直接加入我们的钉钉群进行咨询:

dingding_dla.jpeg

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
云原生数据湖 Data Lake Analytics
使用钉钉扫一扫加入圈子
+ 订阅

云原生数据湖分析Data Lake Analytics是云原生数据湖的分析与计算产品形态,存储计算分离。提供 Serverless Spark、Serverless Presto、一站式数据湖管理;

官方博客
官网链接