Skip to content

BIG DATA 大数据

技术栈一览

从数据的采集,传输,存储,计算,分析,应用等方面,来介绍

1. 数据采集与传输

  • Kafka:高吞吐分布式消息队列,用于日志/事件流传输。
  • Pulsar:新一代消息/流平台,支持多租户。
  • Flume:日志采集、聚合、传输,常用于日志入HDFS。
  • Logstash / Filebeat:Elastic 生态日志采集。
  • DataX / SeaTunnel:异构数据源离线同步工具。
  • Flink CDC / Canal / Maxwell:数据库变更数据捕获(CDC),实时同步。

2. 数据存储

  • HDFS:Hadoop 分布式文件系统,大数据存储基础。
  • 对象存储:S3、MinIO、OSS,云原生数据湖存储。
  • HBase:基于 HDFS 的列式 NoSQL,适合海量随机读写。
  • Cassandra:分布式宽列 NoSQL,高可用。
  • MongoDB:文档型 NoSQL。
  • Elasticsearch:分布式搜索与分析引擎,常用于日志检索。
  • ClickHouse / Doris / StarRocks:高性能 OLAP 存储与分析。
  • 数据湖格式:Apache Iceberg、Apache Hudi、Delta Lake,提供事务、增量读写、时间旅行等能力。

数据仓库

3. 数据计算与处理

批处理计算

  • MapReduce:Hadoop 早期批处理模型,已逐步被替代。
  • Spark:主流批处理/微批处理引擎,支持 SQL、ML、Graph。
  • Hive:SQL on Hadoop,离线数仓核心。
  • Tez:Hive 执行引擎优化。

实时计算

  • Flink:主流实时流处理引擎,支持事件时间、精确一次语义。

  • Spark Structured Streaming

  • Storm:早期实时计算框架。

SQL / OLAP 分析

  • Doris
  • StarRocks
  • ClickHouse
  • Presto / Trino:联邦查询引擎,跨数据源交互式分析。
  • Impala:Hadoop 上的交互式 SQL 引擎。

4. 数据查询与分析

  • Hive SQL / Spark SQL / Flink SQL:大数据 SQL 分析入口。
  • Presto / Trino:跨源即席查询。
  • ClickHouse / Doris / StarRocks:OLAP 多维分析。
  • Kylin:预计算 OLAP 引擎。
  • Druid:实时分析数据库。

5. 资源管理与调度

  • YARN:Hadoop 资源管理,调度 MapReduce、Spark 等任务。
  • Kubernetes:云原生资源编排,越来越多大数据组件容器化运行。
  • Mesos:早期通用资源管理框架。
  • Volcano / YuniKorn:K8s 上的批处理/大数据任务调度器。

6. 任务调度与工作流

  • Apache Airflow:Python 工作流调度平台。
  • DolphinScheduler:国产分布式可视化调度。
  • Azkaban / Oozie:Hadoop 生态传统工作流调度。

7. 数据集成与 ETL/ELT

  • SeaTunnel / DataX:数据同步与集成。
  • Flink CDC:实时 CDC 同步。
  • dbt:数据仓库转换建模工具。
  • Kettle / NiFi:传统 ETL 工具。

8. 协调与服务发现

  • ZooKeeper:分布式协调、配置管理、选举。
  • etcd:云原生场景下的分布式键值存储与协调。

9. 数据治理与元数据

  • Apache Atlas:元数据管理与数据血缘。
  • DataHub / Amundsen:现代元数据管理平台。
  • Apache Ranger:统一权限管控。
  • Kerberos:大数据集群认证。
  • Apache Knox:集群边界网关。

10. 可视化与 BI

  • Superset:开源可视化 BI 平台。
  • Grafana:监控与指标可视化。
  • Tableau / Power BI / FineBI / Metabase:商业或开源 BI 工具。

11. 监控运维

  • Prometheus + Grafana:集群与任务监控。
  • Zabbix / Nagios:传统运维监控。
  • EFK / ELK:日志采集检索分析栈。

12. 开发语言与工具

  • Java / Scala:大数据核心组件主要开发语言。
  • Python:数据科学、Spark/Flink API、Airflow 等常用。
  • SQL:数据仓库与分析通用语言。

精简

类别最主流技术说明
数据采集与传输Kafka事实标准消息队列/事件流平台
数据存储HDFS / S3传统自建大数据平台存储底座;云上可用对象存储 S3/OSS
批计算Spark最主流的批处理/微批处理引擎
流计算Flink实时计算事实标准
交互式分析/OLAPClickHouse高性能分析型数据库,社区活跃
数仓Hive
数据湖/湖仓一体Iceberg
资源管理与调度YARNHadoop 生态标准;云原生趋势用 Kubernetes
工作流调度Airflow最通用的工作流编排平台
数据集成/CDCFlink CDC实时数据同步主流方案
分布式协调ZooKeeper分布式协调与元数据管理标准
元数据与治理Apache AtlasHadoop 生态元数据与血缘管理
可视化 BISuperset最流行的开源 BI 平台
监控运维Prometheus + Grafana集群与任务监控主流组合
开发语言SQL数据分析与数仓核心语言;Java/Scala/Python 按需配合

学习路线

  • Java
  • SQL
  • Linux
  • Hadoop/HDFS
  • Hive
  • Kafka
  • Spark
  • Flink
  • Doris/StarRocks
  • Iceberg/Paimon
  • DolphinScheduler
  • Docker/Kubernetes

基于 MIT 许可发布