CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
数据工程师入门/课时/大数据组件
RawBlame
课时目录12 节

数据工程师入门

  1. 01数据工程是什么
  2. 02基础技能
  3. 03Python 与 SQL
  4. 04存储与数仓
  5. 05数据采集与 ETL
  6. 06编排工具
  7. 07大数据组件
  8. 08数据建模
  9. 09质量与安全
  10. 10云平台与对象存储
  11. 11流处理与 Reverse ETL
  12. 12综合练习

大数据组件

Spark、Kafka、Hadoop 生态概览。

35 分钟

大数据组件

当数据量超出单机 MySQL/pandas 舒适区,分布式计算与消息系统进入视野。本课建立 Spark、Kafka、Hadoop 生态的地图,不要求立刻搭集群。

学习目标

  • 理解何时从 ELT 升级到 Spark 等分布式引擎
  • 掌握 Kafka 在数据管道中的角色(与业务 MQ 区分)
  • 了解 Hadoop HDFS / YARN 的历史地位

规模与选型

数据规模典型方案
GB 级MySQL + Python/dbt
TB 级Spark / 云数仓
持续事件流Kafka + Flink / Spark Streaming

CodeRoadMap 当前体量 MySQL + 批 ETL 足够;Kafka 作为事件与 CDC 扩展,见 /tracks/kafka-essentials。

Apache Spark

内存分布式计算,批 + 流统一 API:

# PySpark 伪代码
df = spark.read.jdbc(url, "cf_lesson", properties=props)
df.groupBy("track_id").count().write.parquet("s3://lake/lesson_counts")
组件作用
Spark SQLDataFrame/SQL 转换
Spark Streaming微批流处理
Delta / Iceberg湖仓表格式(ACID)

ETL 逻辑可从 pandas 平移到 Spark SQL,思维一致、规模不同。

Apache Kafka

分布式 commit log,数据工程里常见用途:

  • 业务事件总线(订单、注册)
  • CDC:数据库变更 → Topic → 数仓同步
  • 日志采集缓冲

与 Redis Pub/Sub 对比见 kafka-vs-mq。深入消费、分区、lag 见整个 kafka-essentials track。

MySQL binlog → Debezium → Kafka topic "db.coderoadmap.cf_track"
                                → Spark/Flink → staging 表

Hadoop 生态(概览)

组件现状
HDFS大量迁移到 S3/GCS 对象存储
MapReduce被 Spark 取代为主力
HiveSQL on 大数据,仍常见于离线仓

知道名词即可;新项目优先 云对象存储 + Spark/Trino + 托管 Kafka。

与路线图的关系

  • /roadmaps/data-engineer — Big Data 节点
  • /tracks/kafka-essentials — 必衔接副 track
  • de-streaming — 实时管道
  • 练习

    • 说明 CodeRoadMap 哪些场景暂不需要 Spark
    • 画 Kafka CDC 从 MySQL 到 staging 的数据流
    • 完成 kafka-intro 并复述 MQ 三类收益

    小结

    Spark 算大规模批/流,Kafka 传事件与 CDC;Hadoop 是历史底座,对象存储是今日常态。 下一课讲维度建模。

    加载本节练习…
    ← 上一课编排工具下一课 →数据建模