随着企业数字化转型的不断深入,越来越多的组织开始利用商业智能(BI)工具来创建报表、仪表板和数据门户,以支持各种决策与分析需求。然而,在实际应用过程中,用户常常会遇到诸如“加载速度慢”、“展示延迟”以及“分析效率低”等问题,尤其是在处理大规模数据集时,某些操作甚至可能需要数分钟才能完成。
为了实现更加流畅且高效的用户体验,BI工具必须具备强大的数据处理架构与能力,能够通过横向扩展的方式支持日益增长的数据量及计算任务。本文将要介绍的「Quick引擎」,正是这样一款能够通过多种加速模式配置来显著提升性能的解决方案,旨在满足用户对于BI工具在速度方面的需求。
01 Quick引擎:亿级数据,毫秒之间
用户可以利用Quick BI构建了一个名为Quick引擎的自定义计算内核,该引擎依托于阿里云提供的强大计算资源,具备横向扩展的能力。通过简单地增加服务器数量,即可进一步提升其在数据分析方面的处理能力。
此外,Quick引擎实现了包括抽取加速、实时加速、查询缓存以及维值加速在内的多种加速技术,为不同应用场景提供了高效的数据分析解决方案。基于部署在阿里云上的SaaS服务的实际测试结果显示,在Quick引擎的支持下,即使面对十亿级别的数据量,也能在0.5秒之内完成复杂的聚合分析任务,真正实现了“亿级数据,毫秒响应”。
Quick引擎的基本架构分为数据源、数据集和数据作品三部分。数据源是底层的数据库连接,通常为ADB、Mysql、Hive等数据仓库,而Quick引擎主要在数据源的计算过程中发挥作用;数据集用于对数据源里的表进行建模(表关联、字段类型建模等),从而将一张或多张表形成上层数据作品可用的数据对象,比如日常用到的仪表板、电子表格、即席分析。
02 抽取加速:离线周期性数据
抽取加速是一种常用的加速模式,其原理是将数据库或数仓的数据抽取到 Quick引擎的高性能列式存储引擎中,后续的分析和计算都直接在Quick引擎中进行,能够充分利用Quick引擎性能的同时,降低企业的数仓负担。一般来说,适合数据量较大的离线查询分析场景,但需要注意抽取加速的“周期性”,避免用于更新频次较高的数据源。
准备工作
为了帮助用户更好地理解和学习,这里借助一个实例进行说明:如需分析销售渠道和销售行为对某企业销售收入的具体影响,可以将包括商品、用户、省份、订单在内的各项数据汇总到一张表中。
这种场景下,用户首先需要将数据集连接至Quick BI,具体路径是:【登录Quick BI控制台】——【进入数据集编辑页面】——【在数据集编辑页面创建数据集】。
在正式开始配置抽取加速前,用户需要确认组织管理员已经开启了抽取加速功能:【登录Quick BI控制台】——【找到Quick引擎功能配置】——【打开抽取加速开关】。
加速配置
完成各项准备工作后,用户就可以为数据集进行抽取加速的配置,具体路径是:【找到数据集对应位置】——【单击数据集右侧菜单】——【选择加速配置】——【修改抽取加速配置】
其中,在抽取方式部分,用户可以选择“全表加速”、“预计算”中任意一种计算模式,全表加速能够抽取全量数据进行加速计算,在抽取空间允许的前提下,建议选择全表加速;在预计算配置下,系统仅会抽取部分数据进行加速计算,从而节约部分抽取空间。
在抽取时间部分,用户可以选择“手动触发”或“定时加速”两种方式,其中定时加速意味着系统将按照配置好的时间进行抽取加速,非常适合那些按照固定周期(如每日销售统计)更新的数据集;而选择手动触发后,系统就不会按照固定时间抽取加速,每次加速都需要手动开启。
在选择“定时加速”的基础上,用户可以在定时配置部分,选择每月、每周、每天或者每小时进行抽取加速,并在后面的配置框中确定具体更新的时间节点。
为了避免同步过多冗余数据,浪费抽取空间,用户可以只加速特定日期的数据。具体而言,在勾选“按日期加速”后,填入日期数据所对应的字段,在后续配置框内确定抽取的日期范围和起始点。一个小窍门是,如果数据集相对“固定”、生成后的历史数据不会发生变化,则更新方式选择“增量更新”,仅同步增量信息,能够加快整体的抽取速度。
同时,加速引擎支持配置加速依赖,数据更新后可自动触发加速,解决底表数据延迟产出导致加速失败问题。
在配置的最后,用户还可以设置失败报警功能,及时掌握加速动态、避免影响分析进度,该功能支持“钉钉”、“邮箱”和“钉钉群”三种接收方式,可一次性选择多个Quick BI用户作为收件人。
加速管理
完成配置后,组织管理员可以统一查看所有开启的数据集、任务的运行状态,并对这些任务进行统一管理,具体路径是:【登录Quick BI控制台】——【找到Quick引擎功能配置】——【找到页面下方的配置部分】。用户可以看到抽取加速的总容量和已使用容量。
在这里,通过单击“查看详情”,用户能够查看开启抽取加速的对应数据集。此外,用户还能通过“查看日志”、“立即加速”、“重置加速”、“修改配置”和“关闭抽取加速”,来进行对抽取加速问题查阅、手动控制、配置修改。
空间管理员也可以在查看空间下所有开启的数据集、任务的运行状态,并对这些任务进行统一管理。
03 其他加速模式:适配多种计算场景
除了常用的抽取加速外,Quick引擎还支持“查询缓存”、“维值加速”等,本文在此对其他加速模式作简要介绍,用户需要结合具体需求场景选择合适的加速模式。
图:通过判断选择合适的加速模式
查询缓存
这是一种能够加速报表访问、降低数据库压力的加速模式,其原理是将用户查询结果缓存在高速缓存组件中,并基于算法对数据集的查询进行预聚合,提前计算用户需要的结果。比如,当用户开启某个数据集的查询缓存后,只要报表被访问过,则在预设的缓存时间内,用户再访问报表时,系统无需查询即可直接显示报表数据。适用于对时效性要求不高,且查询需求相对固定的数据。
维值加速
此外,若数据集的某些维度的字段被频繁用于查询控件和即席分析时,用户可以为这些高频字段配置维度加速。比如,如果需要在一段时间内多次查看基于客户名称和产品名称的成交情况,就需要在数据集中为“客户名称”和“产品名称”这两项数据配置维值加速。
问题咨询
本文介绍了如何灵活运用包括抽取加速在内的多种加速模式,来满足不同场景的需求,为数据查询和分析提速、增效。欲知更多Quick BI的使用技巧,可以扫码咨询~
微信扫码:
钉钉扫码: