9月14日,阿里云云原生实时数仓升级发布。阿里云计算平台的产品专家分享了实时计算Flink版和Hologres构建企业级一站式实时数仓的核心能力升级及新功能解读。
当前,大数据正在从计算规模化向实时化演进,实时数仓的应用场景也越来越广泛。例如:央视春晚,可通过大屏实时统计全国的收视率和观众画像;多个城市正在开展的城市大脑项目, 通过 IoT 的摄像头信息,实时捕获各个城市中的交通、车辆、人流等信息进行交通监察与治理;银行、证券交易所等金融机构实时监控交易行为,进行反作弊反洗钱等行为的探测;电商大促场景下,可通过大屏实时展示成交额并实现毫秒级更新。除此之外,智能客服、物流跟踪、订单分析、直播质量监控等也是实时数仓的典型应用场景。由此可见,实时数据的处理与分析为越来越多的企业创造了业务价值。
实时数仓越来越重要。然而建设实时数仓时,企业却常常面临各种问题。当前实时数仓建设的痛点主要有以下三方面:首先,企业对于数据的准确性、时效性、性价比三方面都同时具有强烈需求。不但对数据实时写入能力要求高、查询延时敏感、查询维度繁多且维度不固定,而且希望兼顾明细查询和聚合查询两类不同负载,同时要求在成本上有所控制。其次,随着手机应用、小程序等场景日益增多,企业对于半结构化数据的分析需求强烈。第三,由于业务需求更新频繁,实时任务变更频繁,企业需要更加敏捷的实时数仓来适应频繁的变更。
为了解决客户建设实时数仓中面临的痛点,阿里云实时计算Flink版+Hologres实时数仓解决方案升级。
本次升级发布的新功能集中在数据写入、查询与分析、企业级能力三个方面。
数据写入:拥有实时应用场景的客户(如实时大屏、实时风控等)对于数据写入的实时性有着极高要求,要求数据写入即可见。同时,由于企业数据来源复杂,会涉及到许多的数据更新、修正的场景,进一步加大了实时写入与更新的难度。Hologres作为一站式实时数据仓库引擎,提供海量数据高性能的实时写入,数据写入即可查。同时,阿里云实时计算Flink版+Hologres可通过主键提供高性能的Upsert能力,整个写入和更新过程确保Exactly Once,满足对数据的合并、更新等需求。
企业在数据写入时,还面临着数据时效性低、成本高、同步效率低等困难。本次发布的表结构变更自动同步功能解决了数据时效性问题,整库同步功能减少了资源浪费,分库分表合并同步提升了数据同步效率。
随着业务的迭代和发展,数据源的表结构变更已成为常见现象,企业需要及时修改实时同步作业以适配最新的表结构。这些操作带来了较高的运维成本,也影响了数据时效性。为解决这个问题,阿里云实时计算Flink版支持通过Catalog实现元数据的自动发现和管理,配合 CTAS (Create Table AS)语法,使用一行SQL实现数据同步和表结构的变更自动同步,降低运维成本,提升数据时效性。在实际工作场景中,分析师常要通过单张表逐一同步的方式将整个数据库同步到数仓中做进一步分析,不但浪费资源,也为上游数据库带来较大压力。针对这个问题,阿里云 Flink CDC 提供了整库同步特性,节省成本,降低数据库压力。另外,分析师也常常需要将分库分表的业务数据汇聚到一张数仓中的大表中进行分析,针对这种场景,阿里云实时计算Flink版+Hologres提供了分库分表合并同步特性,通过在 CTAS 语法支持源库和源表的正则表达式,源数据库的分表可以高效地合并同步到下游 Hologres 数仓中。
查询与分析:本次发布的Hologres实时物化视图功能优化了聚合场景,减少计算量,显著提升查询性能。JSON列式存储优化提升了半结构化数据查询和存储效率。Hologres Binlog + 阿里云实时计算Flink版支持了有状态的全链路事件实时驱动开发场景。
Hologres新版本已支持实时物化视图功能,数据在写入时即预计算,以空间换时间,提高查询效率。JSON作为一个数据单位,提供了存储上的灵活性,但限制了分析时的效率,为了访问JSON中部分节点不得不读取整个JSON数据结构,效率非常低下,存储上也很难压缩。Hologres的JSON列式存储优化,平衡了灵活性(Schemaless)与性能,提升数据存储压缩效率,减少数据转换等操作,提升查询效率。Binlog是Hologres很有特色的新能力,支持对每次数据更新的详细记录,应用在数仓层次间数据实时加工、多实例间数据同步、数据行列转换 、数据变化检测等多种场景。
企业级能力方面:Hologres提供了数据加密和脱敏、访问控制、容灾备份等能力。
除了产品功能发布外,产品专家还分享了某知名全球TOP20游戏公司的案例。该客户通过阿里云Flink版+Hologres实时数仓方案替换开源架构,简化数据处理链路,统一数仓架构,统一存储,提升查询性能,完美支撑数据分析、广告投放、实时决策等多个场景,助力业务快速增长。