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中有加速效果的查询如下:
这张图的纵轴是查询的运行时间,单位是毫秒,横轴是所有运行的查询。可以看出TPCH一共22条SQL中,绝大部分有加速的效果,这些查询的特征是偏IO密集型的,加速效果从最小的1.x倍,到最大的8.x倍,比如提升倍数最大的Q12 111.6s -> 13s,大大提高了体验。
实施步骤
步骤1 开通Presto CU
DLA只在CU版提供了Maxcompute查询加速功能。因此,如果您没有开通Presto CU,需要参考开通CU文档进行开通。
注意:
• DLA Presto与需要加速MaxCompute项目要在同一地域。
• 推荐规格64核256 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这边推出了64C免费试用一周的活动,消除您试用的后顾之忧,优惠的开通可以直接找相关对接的阿里云对接的同学,或者直接加入我们的钉钉群进行咨询: