国内某头部跨境电商公司数仓重构之路 2021-09-09

5 篇文章 0 订阅
1 篇文章 0 订阅


一、从通信行业到跨境电商

年初换工作到现在也有小半年了,接手了一个跨境电商公司的数仓重构项目,在通信行业8年的工作经验(从O域到M域再到B域的数据处理经验)让我觉得任何数据及业务都可以玩转,显然我的想法太年轻了,被狠狠的教育了一把(下文会说明原因)。跳出舒适圈,离开自己熟悉的业务,开始一个全新的行业探索,可以给自己的职业生涯带了一些新的激情,就像刚参加工作是的状态,无限的求知欲是力量的源泉

重构之路虽然坎坷但有序进行,截止目前已经全部重构完成并在逐步支撑应用,老的应用也在排期迁移中…


二、重构之前的数仓现状

一、生产系统的数据质量差到令人发指
重来没有想过一个业务系统是没有开发环境的,所有的操作都是在正式环境上搞,今天一个开发人员上线导致数据丢失(生产数据丢失从数仓中拉数据补全,反正一切你想象不到的骚操作都有),明天上线导致业务系统瘫痪半小时,感觉都是习以为常的事情,业务模块之间缺乏校验关系,数据记录的五花八门,维表的关联关系是错的,更不能想象的是生产的大部分表竟然没有create_time,update_time字段,没有字段注释,缺失率高达40%,各种的扩展字段,我就想问问ETL怎么抽数据,怎么搞嘛?真是遇到行业风口猪都能飞起来,这样的系统竟然支撑了近30亿的年产值,只想说:大哥们辛苦了!!!

二、老数仓的一些问题
1、数仓竟然没有存储历史状态数据,所有的分析都是基于生产最新状态数据的分析
2、分析系统和业务系统解耦?想多了
3、一体化标准指标?不存在的
4、数仓分层、业务域划分?开玩笑
5、报表数据落地?什么是落地,我们都是动态查询的
6、指标字段命名标准化?大哥们都是拼音首字母来的,sdsj,hhd,hekxhs,每天都是在猜…猜…猜中度过
6、一千人的公司创建了近300张报表,平均每三个人一张报表,什么是数据产品,乱拳打死老师傅 哈哈…
7、口径说改就改了,谁都说了算,统一口径?呵呵
我们要搞大数据分析平台,买机器建机房,搭个开源的平台出来(大哥咱都这样了,用个第三方的产品它不香么,搞这么个东西谁来维护谁有能力维护,本地机房的MySQL都是隔三差五的出故障,要啥自行车。没有自研能力就老老实实买产品吧,成本低见效快),最后基于AWS和Aliyun进行了技术选型,阿里云相比开发友好度,阿里云集成度高、产品力强。确认了阿里云的产品(DataWorks+MaxCompute)。

三、短小精悍的研发团队
上面吐槽了一大堆,你们是不是觉得但凡上点规模的公司都比这个做的要好?要规范没规范,要质量没质量的。但是如果我告诉你这只是一个不到50人的研发团队做支撑你还感觉系统体验差吗?数据质量差吗?在这个跨境电商红利期,群雄逐鹿,万马奔腾的时候,能快速支撑业务变化,满足生产需要我觉得数据再差也是能理解的,毕竟是一个不到50人的团队建设了十几个项目7-8个系统,平均4-5个人就要独立完成一个系统,有些大哥可以拿到18薪,确实是干出来的,现在我想说:大哥们真的辛苦了!!!


三、数仓重构之路

1、百废待兴,先确认架构,基于MaxCompute的数据仓库架构
在这里插入图片描述
2、没规范建规范,数仓开发规范是保障数仓健康可持续建设的根基
主要定义:数仓分层、主题域划分、模型及指标命名规范、ETL开发规范、脚本开发规范等…

在这里插入图片描述
3、指导思想有了,开始干活:接数据
第一个重要工作:梳理业务系统数据源,补全数据字典。这是一个痛苦的过程,由于前期生产系统建表不规范(建表时没有creat_time\update_time,字段没有中文描述,过多的扩展字典根本不知道什么含义),反复的跟开发人员确认,最终补齐了一部分,还是有一部分确认不了的最终也流入了数仓,期间输出了一版《数据库开发规范》让生产开发人员使用,逐步改善生产数据问题。
4、ODS层沉淀全量数据
ODS做全量数据沉淀,不做任何数据清洗工作
5、DWD层模型建设
周期快照表、累计快照表、拉链表、全量表因地制宜的使用,进行一些简单的退维操作,对一些小表(字段少)进行宽表处理,减少JOIN关联,提高易用性
6、DWS层汇总模型
基于主题域划分和需求调研开发,满足目前统计要求,后续逐步优化迭代
7、核对数据
最关键和最痛苦的一个环节,由于之前的统计口径没有参照物所以也不知对错,现在重构了一版发现了很多问题。比如:生产数据质量问题,导致处理数据时有很多特殊处理,一个看似逻辑正常的操作数据都会不一样,不是生产数据错误就是技术口径少条件,反反复复的确认口径,核查数据,期间纠正了很多之前错误的口径和生产数据记录逻辑错误问题
8、数据质量保障
DATAWORKS的产品集成度很高,功能很多很好用,基础版本就能让我们爽到飞起,各种告警规则(数据重复、数据波动、任务报错,基线预警)这么一搞,就能满足我们小公司数据及时性、准确性的要求

总结

整体迁移下来,感觉小公司数据不多,但蛮复杂,流程不长但效率不高,整个公司信息化不够完善,相当一部分工作在线下,导致很多数据接入靠人工维护,不能保障时效及数据质量,相信随着业务的增长公司IT部门的不断壮大,总体都会改善,目前公司一阶段离线数仓建设完成,后续将会进行实时数仓的建设届时更新一篇实时数仓,最后一句话:路漫漫其修远兮,吾将上下而求索。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值