May-Hologres
2020-11-19
6707浏览量
刚刚结束的2020天猫双11中,MaxCompute交互式分析(Hologres)+实时计算Flink搭建的云原生实时数仓首次在核心数据场景落地,为大数据平台创下一项新纪录。借此之际,我们将陆续推出云原生实时数仓双11实战系列内容,本文重点介绍Hologres如何帮助阿里巴巴客户体验部(CCO),构建集实时化、自助化、系统化于一体的用户体验实时数仓,完美助力双11场景,支持上千+服务大屏,削峰30%,节约成本近30%。
作者:映海(任海峰),阿里巴巴CCO数据应用中台实时技术负责人
CCO是Chief Customer Officer的缩写,也是阿里巴巴集团客户体验事业部的简称。在阿里巴巴经济体内,CCO是“客户第一”价值观落地的组织保障,是整个经济体客户体验的神经网络,也是触达消费者和商家的最前线。“成为新商业的服务生态摇篮”,“让体验成为商业的核心竞争力”是我们的愿景。凭借着为消费者、商家和经济体提供专业服务的小二,为平台不断挖掘存量客户价值的体验运营专家,为业务发展提供底层支撑的数据、产品和技术人才,我们成为了互联网行业独一无二的数字化服务体验团队 —— 一支有爱有担当,富有创造力的“阿里柔军”。
从2016年开始CCO开始将实时数据应用到业务中,一开始主要支撑双十一作战室大屏应用。(注:双11作战室又名光明顶,是阿里巴巴双11期间的总指挥室,其作战大屏承载了全集团双11期间的作战指挥系统,是阿里巴巴作战组织的技术、产品、服务串联起来的“作战指挥图”。)
2017年实时数据应用出现了规模化的上涨,不再局限于大促,在日常的客服小二管理实时监控、对内运营数据产品、线上产品数据应用及算法模型在线应用场景中开始大规模应用。2018年开始整体实时数据任务高保障作业数已经接近400,大促中,双十一指挥室大屏也全面取消了准实时的应用,全面实时化落地,截止到目前,实时作业数已经超过800+。从作业的规模、各类引擎中间件的使用、业务场景的覆盖发展到非常多元化的一个阶段。
整体上CCO在实时数据的应用上呈现出几个特点:
伴随着场景的丰富、数据量的剧增以及业务端不断变化的查询要求等,既要快速响应业务需求提供高可靠和低延时的数据服务,又要保证系统不断的平稳运行,其背后的技术系统不断受到挑战。
CCO的实时架构演进分为三个阶段:数据库阶段、传统数据仓库阶段、实时数仓阶段。
第一个阶段为数据库阶段,采用典型的Lambda架构,数据从采集->加工->服务,根据业务场景烟囱化建设,在数据架构上不做分层,以任务为单位来支撑对应的应用场景,将数据全部预处理完毕,存储到OLTP和KV引擎,直接通过Point Query提供对外服务。
在数据处理层,通过Flink多流Join,通过Hbase做维表关联,将流式数据预处理到指定粒度,持久化到数据库中并提供对应服务。
在场景少、任务少的情况下,这种end to end的建设方式,既灵活又节省成本,并且能提供较高QPS低RT的服务能力。但随着业务场景的复杂度增加,运维开发成本越来越大,全部采用预处理并且每个开发同学都需要从源头end to end加工的方式已经不能适应业务的变化。
随着实时数据应用的规格上线,以及数据库阶段的明显痛点,发展到了传统数据仓库阶段。传统数据仓库阶段架构的优化点如下:
通过引入数据仓库的分层架构以及MPP的技术,增强了整个实时数据架构的灵活性和数据的复用性,但随着数据体量和规模的增加,我们发现,任务量在规模化膨胀,引擎成本在逐年增加,我们构建的数仓中的数据并没有真正意义上流转起来,由于存储的多样,服务的多样,造成不可避免的在不同的任务和引擎中冗余大量的烟囱化的业务逻辑和数据。
为了解决业务对稳定性SLA不同级别的要求,我们将KV引擎和OLAP引擎按照业务保障等级做了实例拆分和资源隔离,在保障提升的同时,我们不得不将已经加工过的数据,重复加工,并且写入到不同的实例和引擎中去,这就使得数据有非常多的冗余,且多个系统也带来高额的运维开发成本。
传统数据仓库阶段,随着任务规模的持续增长,数据开发同学需要维护多个任务作业,同时业务应用对实时数据的诉求也越来越强,于是,一系列的数据开发问题逐渐呈现,例如开发效率如何提升,数据复用性如何提高,数据成本如何降低?这也就使得我们不得不对数据仓库阶段的技术架构不断优化和演进,随之而来的就是第3阶段--实时数仓阶段。
首先我们来分析一下,传统数据仓库演进为实时数仓最主要的困难点:
鉴于以上建设实时数仓的困难点和迫切性,我们也在一直调研和探索究竟有什么产品能够有能力解决这些问题。也是某个契机了解到了Hologres,Hologres的定位是服务和分析一体化,这一点也很符合我们后期的技术规划方向。通过跟团队的深入沟通以及前期产品的深度测试,最终选定了Hologres来作为实时数仓的主要载体。为什么要选择Hologres呢?,Hologres有哪些优秀的能力可以落地在CCO的场景中呢?
下面是由Hologres组成的现CCO实时数仓架构:
从开始接触Hologres,到Hologres真正落地CCO的具体场景,包括双11光明顶指挥大屏,以及日常运营等场景,Hologres带来的显著业务价值主要如下:
服务资源现场管理上千+大屏,帮助服务资源现场合理调度人力、预测排班,实时监控预警,帮助几十+SP服务商,多家政企和数十+校企等大幅提升服务资源的调度能力,让上万+小二能快速响应商家和消费者的服务请求。
基于CCO业务数据+消费者全渠道语聊数据+行为操作数据,围绕逆向全链路交易场景,买卖家联合、结构化和非结构化交叉,深度洞察问题根因,并快速解决问题,以往从发现问题到去查问题以及解决问题,需要耗费大量的人力、精力以及物力,而现在体验引擎的智能化,使得问题能够被快速定位,这样也就有更多的时间和精力去解决问题,往往几分钟就能得到解决,提升了整个流程的用户体验。
对于业务来说,成本也是一个重要的考虑因素,尤其是在数据量越来越大的情况下。替换Hologres之后,在整个双11期间,整体的成本预估节省几百万,相比之前节省30%左右。目前CCO还处于迁移过度阶段,为了保证系统的整体稳定性,部分业务还没有完全替换,后续也会开始推动整体的迁移工作,预计整体迁移完毕后预计可以节省更多的资源。
未来我们希望可以继续在流批一体、HSAP上做更深入的探索,希望能与Hologres保持持续的共建,能够推动引擎发展也能更好的服务于业务发展。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
Hologres是一款兼容PostgreSQL 11协议的一站式实时数仓,与大数据生态无缝打通,支持PB级数据高并发、低延时的分析处理,可以轻松而经济地使用现有BI工具对数据进行多维分析透视和业务探索。欢迎加入钉群:交互式分析Hologres交流群32314975