✅ 主流的大数据技术栈划分(2025 年通用结构)
功能层次(模块职责) 划分结构如下:
1. 数据采集(Ingestion)
2. 数据存储(Storage)
3. 数据计算(Compute)
4. 数据查询 & 分析(Query & OLAP)
5. 数据开发 & 调度(Workflow / Pipeline)
6. 数据可视化 & BI(Visualization & BI)
✅ 1. 数据采集(Ingestion)
负责数据源到大数据平台的“采集和导入”:
| 类型 | 常用组件 |
|---|---|
| 实时采集 | Kafka, Flume, Logstash, Pulsar |
| 批量采集 | Sqoop(从 RDB 导入)、DataX、Nifi、SeaTunnel |
| 结构化→湖 | AWS DMS、Flink CDC、Debezium(MySQL binlog) |
✅ 2. 数据存储(Storage)
用于大规模、低成本、可扩展的数据存储:
| 类型 | 技术 | 说明 |
|---|---|---|
| 分布式文件系统 | HDFS, S3, OSS, GCS | 底层存储,多用于数据湖 |
| 列式存储 | Parquet, ORC, Avro | 适合分析型场景 |
| NoSQL 存储 | HBase, Cassandra, MongoDB | 适合高并发读写,随机访问 |
| 数据湖存储 | Apache Iceberg, Delta Lake, Hudi | 新一代数据湖元数据管理层 |
| 元数据 & 数据目录 | Hive Metastore, AWS Glue Catalog | 提供 schema、表管理功能 |
✅ 3. 数据计算(Compute)
核心计算引擎,分为 批处理、流处理、湖仓一体计算 等:
| 类型 | 代表组件 | 说明 |
|---|---|---|
| 批处理 | Spark,FlinkBatch,MapReduce | 大规模数据 ETL、训练、离线分析 |
| 流处理 | Flink, Kafka Streams | 实时数据处理,低延迟 |
| 湖仓计算 | Trino, Presto, StarRocks(外表方式) | 计算与存储解耦,对接湖或仓 |
✅ 4. 数据查询 & OLAP(Query & OLAP)
面向分析、指标、BI 查询:
| 类型 | 系统 | 特点 |
|---|---|---|
| MPP 数据仓库 | StarRocks, Doris, ClickHouse, Greenplum | 面向大宽表、聚合指标、秒级响应 |
| SQL-on-Lake | Trino, Athena, Presto, Hive SQL | 基于 HDFS/S3 数据湖执行 SQL |
| 日志分析 | Elasticsearch, OpenSearch | 用于日志检索、指标分析 |
✅ 5. 数据开发调度(Orchestration)
用于任务编排、定时运行、依赖管理:
| 类型 | 系统 |
|---|---|
| DAG 调度 | Airflow, DolphinScheduler, Azkaban |
| 数据开发平台 | Kettle、DataSphere Studio、Linkis |
| 实时运维平台 | Flink Dashboard、StarRocks FE Console |
✅ 6. 数据可视化 & BI(Visualization)
为终端用户提供看板、图表、OLAP 分析功能:
| 系统 | 特点 |
|---|---|
| Superset | 开源 BI,支持 StarRocks、Trino 等 |
| Tableau / PowerBI | 商业级 BI 工具 |
| FineBI、帆软 | 国内主流可视化工具 |
✅ 7. 数据流转图(简化版)
数据源
↓
采集层(Kafka / Flume / DataX)
↓
存储层(HDFS / HBase / Iceberg / Hive)
↓
计算层(Flink / Spark / Trino)
↓
查询层(StarRocks / Doris / Presto)
↓
分析层(Superset / Tableau / 自研看板)
✅ 8.数据流转模块:
采存算查调展
即:
- 采:Kafka / DataX
- 存:HDFS / HBase / Iceberg
- 算:Flink / Spark
- 查:StarRocks/ Doris / Trino
- 调:Airflow / DolphinScheduler
- 展:Superset / Tableau
✅ 9.常规分层设计
源系统 → 落地层(Raw)
↓(直接存储数据,将不同数据源的数据汇聚一起)
操作数据层 ODS 【范式建模】
↓(业务转换,数据合并,数据清洗(统一枚举值,填充null值,清晰非法值等)保证数据质量)
明细层 DWD 【范式建模】
↓(聚合汇总【对通用维度数据进行简单聚合,方便复用】)
汇总层 DWM 【维度建模】
↓(按照主题业务组织宽表,用于olap分析)
数据服务层 DWS 【维度建模】
↓(格式/接口定制)
数据集市DM 【维度建模】(基于多张宽表形成某主题的报表数据) → BI/APP/API
📘 大数据常用组件(涵盖 9 大类)
| 名词/缩写 | 全称 / 类别 | 简明解释 |
|---|---|---|
| HDFS | Hadoop Distributed File System(存储) | 分布式文件系统,是 Hadoop 核心组成部分,负责将大文件切分后分布存储于多台服务器上,具备容错与高可用特性。 |
| MapReduce | 计算模型(批处理) | Hadoop 提出的编程模型,将计算分成 Map(映射)与 Reduce(归约)两个阶段,适合大规模离线计算。 |
| YARN | Yet Another Resource Negotiator(资源管理) | Hadoop 的资源调度系统,负责协调不同作业间对计算资源的使用。 |
| Hive | SQL-on-Hadoop(数据仓库) | 构建在 Hadoop 之上的数据仓库系统,允许通过类 SQL 的方式(HiveQL)对 HDFS 上的数据进行查询分析。 |
| HBase | NoSQL 数据库 | 构建在 HDFS 上的分布式、面向列的 NoSQL 数据库,适用于实时读写与大规模数据存储。 |
| Spark | 通用计算引擎(批 + 流) | 高性能的内存计算引擎,支持批处理、流处理、机器学习等,替代 MapReduce 成为主流计算框架。 |
| Flink | 实时流计算框架 | 面向事件的高吞吐低延迟计算框架,支持有状态流处理,适合构建实时数据处理系统。 |
| Kafka | 分布式消息队列(流) | 高吞吐、可持久化的发布/订阅消息系统,广泛用于日志采集、实时数据流传输。 |
| Zookeeper | 协调服务 | 分布式协调服务,常用于 Kafka、HBase、Flink 等组件进行配置管理、主节点选举等。 |
| Presto / Trino | 分布式 SQL 查询引擎 | 支持跨数据源高速 SQL 查询,广泛用于对 HDFS、S3、Hive 等数据湖仓数据执行交互式分析。 |
| Airflow | 调度系统(DAG 编排) | Python 编写的数据工作流调度器,用于执行定时任务和依赖管理,如 ETL 流程。 |
| Oozie | Hadoop 工作流调度器 | 早期 Hadoop 系统中的调度工具,编写复杂、逐渐被 Airflow 替代。 |
| Delta Lake | 增强数据湖格式 | Databricks 提出的 ACID 事务支持数据湖格式,支持版本控制、流批一体。 |
| Apache Iceberg | 新一代数据湖表格式 | 由 Netflix 提出,支持大规模数据处理、高并发、快照等特性,广受欢迎。 |
| Hudi | Hadoop Upserts Deletes and Incrementals(数据湖) | Uber 开源的数据湖方案,擅长处理增量数据、数据合并,适合实时场景。 |
| Parquet / ORC | 列式存储格式 | 高效的数据压缩和编码格式,适用于数据分析任务(比 CSV 更节省存储且查询更快)。 |
| Avro | 数据序列化格式 | 面向 Hadoop 场景的数据交换格式,支持 JSON schema 定义与演化。 |
| Superset | 数据可视化工具 | 类似于 Tableau 的开源工具,用于连接数据源并生成 BI 报表。 |
| Zeppelin | Notebook 工具 | 支持 Spark、Flink、SQL 等的交互式开发工具,适合大数据分析环境。 |
| Jupyter | Notebook 工具 | 数据科学主流工具,适合 Python + ML 场景。 |
| Flume | 日志采集工具 | 适合从服务器收集日志数据并导入 HDFS、Kafka 等系统。 |
| Logstash | 日志收集与处理 | Elastic Stack 的日志采集组件,支持过滤与格式转换。 |
| NiFi | 数据流调度系统 | 图形化界面、低代码数据流处理平台,适合可视化数据传输、清洗。 |
| ClickHouse | 列式分析数据库 | 适合做高并发 OLAP 查询,如埋点数据分析、仪表盘后台。 |
| Druid | 实时分析数据库 | 支持流式数据摄取和子秒级查询,适合仪表盘、BI 后台等场景。 |
| Snowflake | 云原生数据仓库 | 一种即开即用、弹性可扩展的现代数据仓库平台,支持多云。 |
| Redshift | AWS 数据仓库 | Amazon 提供的托管式分析数据库,适合 OLAP 任务。 |
| Atlas / Amundsen | 元数据管理工具 | 用于追踪数据血缘、字段注解、目录管理,是数据治理的重要组件。 |
| DataHub | 元数据平台 | LinkedIn 开源的数据血缘与治理平台。 |
| DolphinScheduler | 国产数据调度工具 | 国人开源,可视化强,替代 Airflow 的调度系统,广泛用于大数据平台。 |
| EMR(AWS) | Elastic MapReduce | AWS 提供的托管 Hadoop、Spark、Hive 等服务,便于快速部署大数据平台。 |
| CDP | Cloudera Data Platform | 企业级大数据平台,融合了 Hortonworks 与 Cloudera 的产品。 |