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综合练习

存储与数仓

OLTP/OLAP、关系库、文档库、数仓架构。

35 分钟

存储与数仓

OLTP 管交易,OLAP 管分析。 数据工程师要会在关系库、文档库与数仓之间选型,并设计从业务库到分析层的分层架构。

学习目标

  • 区分 OLTP 与 OLAP 的工作负载特征
  • 了解关系库、文档库、列存数仓的适用场景
  • 理解 staging → warehouse → mart 分层

OLTP vs OLAP

维度OLTP(如 MySQL 业务库)OLAP(如 Snowflake / BigQuery)
查询模式点查、短事务大范围扫描、聚合
写入频繁单行/小批批量加载为主
schema高度规范化星型/宽表偏 denormalized
延迟毫秒级秒~分钟可接受

CodeRoadMap 的 cf_track、cf_user_progress 是典型 OLTP;「全站学习时长 Top 10」应走 OLAP 或物化视图。

存储选型

类型代表典型用途
关系库MySQL, PostgreSQL业务源库、小型 mart
文档库MongoDB半结构化日志、catalog
列存数仓Snowflake, BigQuery, Redshift企业级分析
对象存储S3, GCS, MinIO原始文件、数据湖

本站主栈 MySQL 8 见 sql-intro;数仓可在云托管服务或 MySQL 分析实例上 轻量模拟。

数仓分层(Medallion / 经典三层)

Bronze / Staging   — 贴源层,尽量保真
Silver / Warehouse — 清洗、统一键、SCD
Gold / Mart        — 面向主题的宽表(课程、用户、收入)

命名示例:

stg_coderoadmap__tracks      # 从 cf_track 同步
dim_track                    # 维度表
fct_lesson_completion        # 事实表:完课事件
mart_learning_daily          # 日报 mart

同步策略

  • 全量:小表、首次加载
  • 增量:updated_at 水位线
  • CDC:binlog / Debezium → Kafka(见 de-streaming)

与路线图的关系

  • /roadmaps/data-engineer — Data Warehousing 节点
  • /tracks/sql-essentials — 表设计与 JOIN
  • de-modeling — 下一课维度建模
  • 练习

    • 画 CodeRoadMap 三层架构:OLTP → Staging → Mart
    • 说明为何不应在业务库跑 SELECT COUNT(*) GROUP BY 全表扫描
    • 列举 2 个适合放对象存储的原始数据例子

    小结

    选对存储类型,再谈分层与同步;MySQL 是源,数仓是分析主场。 下一课深入 ETL 模式。

    加载本节练习…
    ← 上一课Python 与 SQL下一课 →数据采集与 ETL