淘菜菜 (一):基于Flink和Hologres的实时数仓架构升级之路

作者:旋宇,淘菜菜数据研发

前言:

阿里淘菜菜(简称TCC)主营社区团购,其在阿里至少历经6年时间,为了更好支持业务发展,淘菜菜也在不断演进其技术架构。2020年淘菜菜开始与Hologres合作,历经2次大的架构升级,从传统多组件的架构升级为现在稳定的高可用实时数仓2.0,承载上千万RPS写入、几百T数据存储和秒级查询响应。在此合作过程中,淘菜菜技术团队不断沉淀出实时数仓场景下的最佳实践、开发实践、开发规范等,基于此背景,我们将会合作推出系列文章,介绍淘菜菜基于Hologres搭建实时数仓的最佳实践,内容将会包括架构升级、场景实践、容灾实践以及最近业界比较关心的成本治理等,期望与更多的企业互通有无,在数仓建设上更加简单、方便、高效。

本期我们将会带来系列文章第一篇:淘菜菜技术架构的前世今生–技术架构升级之路。

淘菜菜业务简介

阿里淘菜菜(简称TCC)事业部的前身是盒马优选及零售通,2021年初合并成立了淘菜菜事业部,主要做社区团购,和多多买菜、美团优选业务模式一致,主营生鲜和日销品,采用次日达的配送方式为用户提供服务。2022年开始和淘宝深度合作,作为淘宝生鲜和日销品类目的补充。目前淘菜菜属于稳定发展阶段,微信、淘宝、淘特、支付宝等多渠道入口,日均用户访问量上千万,数据量约有几百T。

在这里插入图片描述

在这里插入图片描述

发展历程:从数据库到高可用实时数仓

为了支持淘菜菜丰富的业务需求,其背后的技术发展历经了最初的零售通原始数据库架构、零售通传统lambda架构、Hologres实时数仓、Hologres高可用实时数仓这4个阶段。

在这里插入图片描述

阶段1:16年之前原始架构- jstorm阶段

该阶段为实时数仓的初期建设,主要用于零售通团队的实时作战大屏,以及核心数据产品的报表看板等。技术方案采用的jstrom,有专门的实时团队同学支持,实时任务数10个以内,实时计算的资源在3000+CU。

阶段2:16-20年传统架构 -FlinkSQL阶段

16年之后,零售通业务开始规模化增长,因此业务场景变得更加丰富,包括实时大屏、实时营销活动分析、渠道实时分析等。这个阶段主要基于Flink SQL发展,同时离线开发同学慢慢开始加入,和实时团队同学配合进行实时需求支持。直到到19年B系研发同学开始独立支持实时数据体系的建设,这个时期实时任务数快速增长到500+。资源使用也比第一个阶段上升30%。

阶段3:20年实时数仓 - Flink+Hologres阶段

随着业务的快速发展,实时数仓的建设越来越臃肿,也开始出现一些开发和运维问题。而当时Hologres也开始在集团内大面积推广,于是我们开始考虑用一套新的方案解决老架构存在的问题。因此这个阶段开始基于Flink+Hologres进行实时架构升级。

在这个阶段,零售通和盒马优选合并成淘菜菜团队。面对日益增长的数据,技术上主要要解决的问题就是实时开发提效,追求高效率、高灵活,以此来满足淘菜菜所有小二实时&离线数据的查询需求,核心应用场景包括交易实时多维分析,物流供应链实时服务、指标中心自助分析和离线报表加速等。

我们用了一年的时间(从20年9月到21年9月)完成了架构升级,通过新架构缩短了实时处理链路,提高数据处理效率,让实时数仓变得更加高效快捷。

阶段4:21年高可用实时数仓-Flink+Hologres读写分离部署

21年架构升级完成后,在新的阶段,我们的核心目标就是提升新架构的稳定性。同时业务发展也逐渐趋于稳定,除了常规场景的支持,也开始参与双11、双12等大促节日,因此成本的治理也开始提上日程,我们期望能够用最简单的架构,最少的资源支撑所有的场景。

在高可用稳定性方面,我们使用写链路的主备链路,应用层

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值