恭喜小红书!业界最大数据湖0故障迁上阿里云

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 恭喜小红书!业界最大数据湖0故障迁上阿里云

最近,小红书技术团队完成了一件前所未有的壮举: 一年内,把业界最大数据湖0故障迁上阿里云。

fa0972d9226a2e7a4e0067dd21422244.jpg

壮举的背后意味着风险和挑战。

作为中国头部互联网公司之一,小红书月活用户已过3亿,其数据湖存储了过去11年的所有原始数据,包括结构化、半结构化和非结构化数据。近年来,随着业务的高速增长,小红书在线处理数据的需求不断增加,同时离线处理所积累的历史问题,也提高了切换的难度。


为此,2023年11月,小红书共有1500人参与迁云项目——计划一年内,把小红书的数据湖搬上阿里云。

饶是如此,难度依旧超出想象。即便是业界体量最大的案例,也远小于小红书的本次迁移。

62cef6e4f389b140872c38e22f1ca1df.png

*注:任务=数据处理过程(如,数据出入数仓就需要通过任务进行调度)


// 拉着1500人一起开盲盒


2023年11月,项目组正式成立,在小红书内部出现了一种声音,觉得这是个「推着推着就会不了了之的事」。


不看好的理由,来自于沉重的历史包袱。


这是小红书历史上首次盘点公司数字资产,过去11年发展历程中积累了大量无主任务与不标准操作。即便前期做了取舍,仍需要大量治理。


即便压力重重,团队还是在立项文档的最后一行写下了4个字,「干就完了」。


首先要解决的还是标准问题。


过去的数据平台开发模式混乱,需要在迁移前把新的基础环境搭建好,切换到自研平台,统一开发标准。


其次根据标准进行治理。


大家把这一过程形容为「拉着1500人一起开盲盒,如果不打开就不知道里面有多千奇百怪」。


以下是几种典型:

  • 引用自己写的「野生」代码· 离线任务不按规范经过数仓,直接访问在线
  • 源代码已丢失、流程已丢失
  • 交接好几手,「跑很久没挂,就一直没管」


为此,小红书几大业务的负责人,把各自OKR的最重要一项列为迁云,开始为结果负责、推动问题解决。


数据平台与业务技术的配合也变得更加紧密。


// 如果项目失败,可能的原因是什么?


在迁云项目中,关键是「舍掉什么」以及「谁来拍板」,背后对应着两个「有限」:


1. 时间有限


量大,无法一次性全量迁移。


为此团队总结出了一套取舍的标准:「长期无人维护、访问,说明不重要」、「断掉后没有人举手,说明不重要」。同时在测试环境中频繁演练、迭代。


2. 准确度有限


需要和项目验收方提前达成共识。

算法类:算法数据工程负责人验收。

报表类:由数据分析负责人验收。懂数据,更易拉齐与收敛。


子城是小红书迁云项目负责人,在他看来,这一次会议很关键,「跟算法数据工程负责人和DI负责人拉齐标准、一起排查验收,大大降低了验收环节的难度」。


// 到底还有多少问题需要解决?


完成治理后,项目在2024年5月正式进入双跑阶段。作为切换到正式环境前最后的测试,是稳定性最大的保障。需要把数据拷贝到阿里云,两边同时跑数,验证正确性与及时性。


这一阶段,需要解决的问题数不胜数。


类似「蜘蛛网」,数据从入仓到出仓,需要经过一条漫长的链路,通过各种任务进行处理,也在双跑中带来了三个问题:

一、在其中的网状结构中,下游数据会受到上游影响,一个小小的错误就会带来很大的偏差,难以归因;

二、算法具有随机性,如果不跑就不知道会有什么问题;

三、现有的任务仍随着业务的发展在快速新增,导致每次链路都会有所不同。


每周都会平均新增500多个问题,推进起来十分缓慢。问题的积累最终造成了延期。问题很严峻,项目组开始了全面的复盘。


首先要做的仍然是顶层的取舍。


任务多,时间有限,则必须先解决最重要的问题。最终确定:高风险任务>高优任务>普通任务的判断逻辑。


这一原则让项目团队更明确需要重点解决的问题。


// 保障割接无故障


灵活的调整之下,进度很快被追回。


团队士气高涨,开始自发给自己提出了更高要求:把准确度从90%提高到99%,进度上要求自己提前1个月完成任务,同时确保P2及以上的故障小于等于3个。


8月,项目结束双跑,进入割接阶段。需要断掉跑数过程,并在新云上观察结果。一旦产生故障,不但影响用户体验,还会带来直接的资产损失。最主要的目标也因此从速度变成了质量。


正式双跑定在了9月,一周时间,所有人在会议室完成线下割接,一旦出现问题,就当下立刻解决。

f1f07a9e61ec0c41feead509e5628e5a.png 割接现场


阿里云团队也全程在现场保障。让他们印象最深的是,「小红书技术团队反应速度很快,出现了问题,第二天就能闭环处理」。


在全力保障之下,团队顺利完成了割接,没有发生任何一个P2及以上故障。


// 客户成功才是最大的价值


2024年11月,小红书迁云项目正式宣告结束。在没有故障的情况下,迁移数据500PB,任务11万。参与人数1500人,涉及部门40多个。


迁移至阿里云上后,数据湖可通过多个OSS Bucket支持纳入统一资源池,实现多个Bucket共享资源池内的OSS吞吐及QPS能力。这样的流控能力在面向小红书复杂业务场景,可灵活调配资源,高效利用吞吐性能,降低不同业务租户间的互相影响。


阿里云原生HDFS+DLF元数据可实现无缝对接Hadoop EMR体系,支持元数据线性扩展能力,轻松应对小红书数百PB数据下的元数据线性增长。


在结项会议上,阿里云智能集团资深副总裁、公共云事业部总裁刘伟光分享了一个小故事。


他翻到了多年前的一次会议记录。2021年的一次交流会议中,他和小红书中台技术负责人凯奇第一次谈到了数据湖迁云的可能,三年后终于一起见证了小红书的成长,与迁云项目的落地。


刘伟光说:「三年中小红书发生了巨大的变化,到今天变成了一个国民级的APP,作为云厂商,客户的成功也是我们最高兴的事」。


对于小红书迁云项目成员而言,他们也因为这个项目创造了历史:第一次系统性盘点了小红书十多年的数字资产,第一次参与千人以上、涉及公司所有产品的项目,共同完成了业界最大体量的迁云项目。


这些第一次为大家带来了「信心」的提升。


有人说,「做完这个项目,再做任何事都不会怵了」。


/ END /

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
8月前
|
Cloud Native 安全 数据管理
阿里云数据湖构建
阿里云数据湖构建
116 0
|
5月前
|
存储 分布式计算 监控
揭秘阿里云EMR:如何巧妙降低你的数据湖成本,让大数据不再昂贵?
【8月更文挑战第26天】阿里云EMR是一种高效的大数据处理服务,助力企业优化数据湖的成本效益。它提供弹性计算资源,支持根据需求调整规模;兼容并优化了Hadoop、Spark等开源工具,提升性能同时降低资源消耗。借助DataWorks及Data Lake Formation等工具,EMR简化了数据湖构建与管理流程,实现了数据的统一化治理。此外,EMR还支持OSS、Table Store等多种存储选项,并配备监控优化工具,确保数据处理流程高效稳定。通过这些措施,EMR帮助企业显著降低了数据处理和存储成本。
190 3
|
5月前
|
安全 数据管理 大数据
数据湖的未来已来:EMR DeltaLake携手阿里云DLF,重塑企业级数据处理格局
【8月更文挑战第26天】在大数据处理领域,阿里云EMR与DeltaLake的集成增强了数据处理能力。进一步结合阿里云DLF服务,实现了数据湖的一站式管理,自动化处理元数据及权限控制,简化管理流程。集成后的方案提升了数据安全性、可靠性和性能优化水平,让用户更专注业务价值。这一集成标志着数据湖技术向着自动化、安全和高效的未来迈出重要一步。
106 2
|
5月前
|
存储 机器学习/深度学习 弹性计算
阿里云EMR数据湖文件系统问题之OSS-HDFS全托管服务的问题如何解决
阿里云EMR数据湖文件系统问题之OSS-HDFS全托管服务的问题如何解决
|
5月前
|
安全 对象存储
阿里云EMR数据湖文件系统问题之JindoFSOSS的单一prefix热点的问题如何解决
阿里云EMR数据湖文件系统问题之JindoFSOSS的单一prefix热点的问题如何解决
|
5月前
|
存储 安全 API
阿里云EMR数据湖文件系统问题之JindoFS元数据查询和修改请求的问题如何解决
阿里云EMR数据湖文件系统问题之JindoFS元数据查询和修改请求的问题如何解决
|
8月前
|
存储 缓存 安全
阿里云EMR数据湖文件系统: 面向开源和云打造下一代 HDFS
本文作者详细地介绍了阿里云EMR数据湖文件系统JindoFS的起源、发展迭代以及性能。
72775 79
|
5月前
|
存储 缓存 数据管理
阿里云EMR数据湖文件系统问题之JindoFS数据孤岛的问题如何解决
阿里云EMR数据湖文件系统问题之JindoFS数据孤岛的问题如何解决
|
5月前
|
存储 对象存储 云计算
阿里云EMR数据湖文件系统问题之JindoFS处理大量小文件的问题如何解决
阿里云EMR数据湖文件系统问题之JindoFS处理大量小文件的问题如何解决
|
5月前
|
存储 对象存储
阿里云EMR数据湖文件系统问题之JindoFS的Snapshot实现的问题如何解决
阿里云EMR数据湖文件系统问题之JindoFS的Snapshot实现的问题如何解决