简介:本篇将重点介绍Hologres在阿里巴巴淘宝营销活动分析场景的最佳实践,揭秘Flink+Hologres流批一体首次落地阿里双11营销分析大屏背后的技术考验。
概要:刚刚结束的天猫双11中,MaxCompute交互式分析(下称Hologres)+实时计算Flink搭建的云原生实时数仓首次在核心数据场景落地,为大数据平台创下一项新纪录。借此之际,我们将陆续推出云原生实时数仓双11实战系列内容,本篇将重点介绍Hologres在阿里巴巴淘宝营销活动分析场景的最佳实践,揭秘Flink+Hologres流批一体首次落地阿里双11营销分析大屏背后的技术考验。
一、背景介绍
在淘系业务运营中,大促是业务运营和用户增长中非常重要的场景,而营销活动分析产品作为大促期间用来服务决策、指导运营的核心数据产品,覆盖活动前、中、后全链路的分析,其中需要满足不同角色小二在不同阶段下,对数据时效性和数据灵活性的不同要求,整体产品大图如下:
老版营销活动分析是基于常规的实时离线数据体系FW的产品架构,在之前的各类大大小小的活动中,也暴露了比较多的问题,其中核心的问题可以归纳为三类:
实时和离线数据不一致:相同口径的数据实时和离线不一致,包括数据逻辑口径不统一、数据接口不统一,由于实时和离线数据开发割裂(开发人员和接口),不仅仅增加了整体数据的运维成本,同时产品搭建层面的负担也大幅度提升。维护成本高:随着业务量的增加,原有数据库不能快速、灵活的支持复杂且多变的应用场景。常规的Hbase、Mysql、ADB数据库,都只能单点满足海量数据、高并发存储点查、OLAP查询,因此面对极其复杂的业务,需要依赖多个数据库,整体维护成本和依赖成本会非常高。扩展性差:在FW框架下的产品搭建逻辑复杂度高、可扩展性都比较差,在活动期间维护的成本非常大因此,如何能够快速应对频繁变动的业务诉求,以及更高效的处理活动期间的数据问题变得越来越重要,升级的新一代营销活动分析架构因而需要满足以下几个优点:1.实时数仓与离线数仓能够模型统一(实时离线逻辑统一)、接口统一(数据存储、取数统一),真正做到流批一体2.需要有更强大的数仓,既能够满足海量数据的并发写入查询,还能够满足业务的及时查询功能3.简化现有的产品搭建逻辑、降低产品实现复杂度
基于上诉背景,我们需要重构当前架构并寻找另外的替代产品来解决业务痛点。经过长时间的调用和尝试,最终我们选择了基于实时计算Flink+Hologres+FBI(阿里内部的一款可视化分析工具)的技术方案来实现天猫营销活动分析的架构重构。
二、流批一体技术方案
通过深度剖析业务对数据的要求,以及多方位数据模型探索和数仓的调研,最终确定了营销活动分析产品重构的整体技术框架,如下图所示,其中的核心要点有:
通过流批一体架构升级,实现了流批SQL逻辑计算引擎层面统一通过Hologres实现了数据存储和查询的统一利用FBI产品能力,在降低搭建成本的同时满足业务的高灵活性,同时满足不同角色对于报表的需求
**
下面,我们将详细介绍整个技术方案中核心的几大技术方案:流批一体、Hologres、FBI
1.流批一体技术框架
传统数仓架构图如下图所示,传统数仓架构核心问题:
流批间的存储层割裂,集群、表、字段都是分开的,导致应用层对接时需要写不同的取数逻辑。流批间的处理逻辑不能复用,SQL标准不一样,计算引擎不一样,导致实时和离线需要分别开发,其实很多情况下,逻辑大同小异,但系统之前不能灵活转换,导致工作量重复计算层集群分开,实时和离线对资源的使用时间段高峰不一样,导致资源利用率不够高,波峰波谷非常明显
流批一体数仓架构图如下图所示,升级后的架构主要有以下核心点需要