专业书籍精读 · Fundamentals of Data Engineering · 第 5 章

源系统数据生成

Fundamentals of Data Engineering · Ch 5 · Data Generation in Source Systems · Reis & Housley · 2022

EN →

这一章讲什么?

你在网上下一单,订单记进了商城的数据库;你点开一个页面,服务器记下一行日志;你的手机每隔几秒报一次位置。这些就是数据的「出生地」。这一章讲的是:数据在哪里出生、以什么样子出生,以及想把它取出来做报表的人,该怎么取才不闯祸。

先说个怪事

一个订单从「已下单」变成「已付款」再变成「已发货」,前后改了三次。可每天半夜去数据库里抄一遍的报表,只能看到最后那一次——中间发生过什么,彻底消失了。更糟的是,如果那单被删掉,抄的人根本不知道它存在过。

旧世界为什么难

核心机制直觉

带来了什么 / 该怎么选

数据量小、只要每天一张报表,半夜抄一遍就够;需要完整历史或分钟级新鲜度,就去跟流水账。一句诚实的代价:跟流水账更准、更实时,但要多搭一套系统、多一份维护。

一句话记住

数据工程从你管不着的上游开始:先弄懂数据怎么诞生,用不伤源头的方式取,再和源头的主人把规矩说清楚。

想看 OLTP 与 ACID、批式与日志式 CDC 的区别、事件时间与处理时间、消息队列和流的分区与投递语义,以及 Databus、Maxwell、Debezium 的实证? → 切到精读版