大数据系统

第一章|大数据系统的第一性原理(原理总纲)

1.1 大数据并不是"数据大",而是约束发生了变化

本质变化只有三点:

  1. 单机假设失效

    • 存储、计算、内存都无法纵向扩展
  2. 失败成为常态

    • 节点、磁盘、网络随时会失败
  3. 全局一致性成本急剧上升

    • 跨节点、跨机房、跨地域

👉 大数据系统的本质:在不可靠的分布式环境中,对海量数据提供可接受的计算与访问语义


1.2 所有大数据系统都在解决的四个核心问题

问题本质矛盾
数据如何放分区 vs 复制
数据如何找元数据定位
数据如何算计算向数据移动
数据是否一致一致性 vs 延迟

4V 只是表象,真正的矛盾是:


1.3 稳定知识:不可动摇的设计事实

  1. **数据一定要分区**
  2. **元数据一定要集中或分级**
  3. **写入一定是日志化的**
  4. **随机写一定会退化为顺序写**
  5. **强一致一定有延迟成本**
  6. **计算一定要靠近数据**

所有系统差异,只在"取舍点"不同。


第二章|大数据系统的抽象分层模型(认知骨架)

2.1 抽象分层(不依赖任何具体技术)

L1 数据来源层L2 数据接入 / 传输层L3 数据存储层L4 资源与调度层L5 数据计算层L6 服务 / 查询层L7 业务建模与决策层

这不是 Hadoop 架构,而是:

任何大规模数据系统都逃不掉的结构事实


2.2 横向贯穿能力(比组件更重要)


第三章|数据存储的核心架构模式(不变规律)

3.1 为什么 LSM Tree 成为事实标准

问题本质:

不变结论:

模式抽象:

MemTable → WAL → SSTable → Compaction

系统映射:


3.2 元数据分级定位:避免中心瓶颈

稳定模式:

Root → Metadata → User Data

设计哲学:

系统映射:


第四章|数据计算系统的两条主线

4.1 批处理:吞吐优先,延迟可牺牲

核心假设:

不变模式:

系统映射:


4.2 流处理:时间成为一等公民

本质变化:

核心难题:

演进路径(问题驱动):

At-least-once → Lambda → Kappa → DataFlow

系统映射:


第五章|一致性与事务:从最终一致到严格串行化

5.1 一致性不是非黑即白

层级代价代表系统
最终一致延迟低Kafka / NoSQL
可串行化成本中Megastore
严格串行化成本高Spanner

5.2 分区事务:现实世界的妥协

核心思想:

模式抽象:

系统映射:


5.3 Spanner:一致性与时间的统一

关键突破:

不变启示:

如果你能控制时间,你就能控制一致性


第六章|大数据平台:技术系统之外的系统

6.1 平台的真正使命

不是跑得动计算,而是让组织可持续使用数据


6.2 不可或缺的非功能系统

这些系统决定:


第七章|架构选型的通用方法论(可迁移)

7.1 架构不是选工具,而是匹配约束

约束条件架构倾向
强一致事务NewSQL / Spanner-like
写多读少LSM
离线分析批处理
实时决策流处理
低维护成本架构简化(Kappa)

7.2 判断一个系统是否"先进"的标准

❌ 不是:

✅ 而是:


结语|从工具到哲学

大数据的终点不是某个系统,而是一套稳定的认知结构

当:

真正留下的,是:

关联内容(自动生成)