跳到主要内容

大数据平台组件总览

完整架构图​

┌─────────────────────────────────────────────────────────────┐
│ DolphinScheduler 调度平台 │
│ (Master + Worker + API + ZooKeeper) │
└─────────────────────────────────────────────────────────────┘
│ │ │
│ │ │
▼ ▼ ▼
┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ SeaTunnel │ │ Spark │ │ Kafka │
│ 数据集成 │ │ 计算引擎 │ │ 消息队列 │
└──────────────────┘ └──────────────────┘ └──────────────────┘
│ │ │
│ │ │
▼ ▼ ▼
┌──────────────────────────────────────────────────────────┐
│ 数据存储层 │
│ MySQL/PostgreSQL | Doris/StarRocks | HDFS | ES │
└──────────────────────────────────────────────────────────┘

已集成的组件​

1. 任务调度层​

DolphinScheduler ✅​

  • 文档: 高可用集群部署指南
  • 状态: 已完成
  • 部署方式: 3 节点高可用集群(虚拟机)
  • 关键特性:
    • Master/Worker角色分离
    • ZooKeeper 3 节点集群
    • 外置 PostgreSQL 数据库
    • systemd 开机自启

2. 数据集成层​

SeaTunnel ✅​

  • 文档: SeaTunnel 集成指南
  • 状态: 已集成到 DS
  • 部署方式: 独立部署或本地部署
  • 关键特性:
    • 支持 100+ 数据源
    • 实时 CDC 同步
    • 高性能传输
    • 断点续传

DataX ✅​

  • 文档: DataX 离线数据同步指南
  • 状态: 已集成到 DS
  • 部署方式: 本地安装
  • 关键特性:
    • 异构数据源同步
    • 离线批量同步
    • 成熟稳定
    • 阿里生态

3. 计算引擎层​

Spark ✅​

  • 文档: Spark 集成指南
  • 状态: 已集成到 DS
  • 部署方式: Standalone/YARN/K8s
  • 关键特性:
    • 内存计算(快 100 倍)
    • SQL、流处理、机器学习
    • 多语言支持
    • 丰富的生态系统

4. 消息队列层​

Kafka ✅​

  • 文档: Kafka 集群部署与集成指南
  • 状态: 已部署并集成
  • 部署方式: 3 节点集群
  • 关键特性:
    • 百万级 TPS
    • 分布式架构
    • 持久化存储
    • 实时数据管道

待扩展的组件​

计算引擎​

  • Flink - 流批一体计算引擎

    • 实时计算
    • 复杂事件处理
    • 精确一次语义
  • Presto/Trino - 交互式查询引擎

    • 联邦查询
    • 秒级响应
    • ANSI SQL

数据存储​

  • HDFS - 分布式文件系统

    • 海量存储
    • 高容错性
    • 流式访问
  • ClickHouse - OLAP 数据库

    • 列式存储
    • 实时分析
    • 高性能查询
  • Elasticsearch - 搜索引擎

    • 全文检索
    • 日志分析
    • 实时监控

其他工具​

  • Airflow - Python 工作流调度
  • Sqoop - Hadoop 数据导入导出
  • Flume - 日志收集
  • Oozie - Hadoop 工作流调度

典型数据链路​

链路一:实时数仓​

MySQL → 
Debezium(CDC) →
Kafka →
SeaTunnel → Doris (实时数仓)
Flink → Doris (实时计算)

涉及组件:

  • DolphinScheduler: 调度和监控
  • Kafka: 消息缓冲
  • SeaTunnel/Flink: 数据处理
  • Doris: 数据存储和查询

链路二:离线 ETL​

PostgreSQL → 
DataX →
HDFS/Hive →
Spark SQL →
Doris/StarRocks

涉及组件:

  • DolphinScheduler: 调度 ETL 工作流
  • DataX: 数据抽取
  • Spark: 数据清洗和转换
  • Doris: 数据服务

链路三:日志分析​

App Server → 
Filebeat →
Kafka →
Logstash →
Elasticsearch →
Kibana

涉及组件:

  • Kafka: 日志缓冲
  • Logstash: 日志处理
  • Elasticsearch: 存储和检索
  • Kibana: 可视化

技术选型建议​

场景一:实时数据同步​

需求: MySQL 实时同步到 Doris

推荐方案:

  • SeaTunnel (首选)

    • 支持 CDC
    • 配置简单
    • 性能好
  • 备选: Flink CDC

    • 功能更强大
    • 学习曲线陡峭

场景二:离线数据仓库​

需求: 构建 T+1 数据仓库

推荐方案:

  • DataX (数据抽取)
  • Spark SQL (数据处理)
  • Hive/Doris (数据存储)

场景三:实时计算​

需求: 实时风控、实时推荐

推荐方案:

  • Kafka (消息队列)
  • Flink (实时计算)
  • Doris/ClickHouse (结果存储)

场景四:日志分析平台​

需求: 集中式日志管理和分析

推荐方案:

  • ELK Stack (Elasticsearch + Logstash + Kibana)
  • Kafka (日志缓冲)
  • Filebeat (日志采集)

性能对比​

组件吞吐量延迟适用场景
SeaTunnel高低实时/批量同步
DataX中中离线同步
Spark高中批量处理
Flink高极低实时计算
Kafka极高低消息队列

资源规划建议​

小型集群(测试环境)​

DolphinScheduler: 3 节点 (4C8G)
SeaTunnel/DataX: 1 节点 (4C8G)
Spark: 3 节点 (8C16G)
Kafka: 3 节点 (4C8G, 100GB SSD)
PostgreSQL: 1 节点 (4C8G, 独立)

中型集群(准生产)​

DolphinScheduler: 3 节点 (8C16G)
SeaTunnel: 2 节点 (8C16G)
Spark: 5 节点 (16C32G)
Kafka: 3 节点 (8C16G, 500GB SSD)
PostgreSQL: 主从 (8C16G)
Doris: 3 节点 (16C32G)

大型集群(生产环境)​

DolphinScheduler: 3-5 节点 (16C32G)
SeaTunnel: 3-5 节点 (16C32G)
Spark: 10-20 节点 (32C64G)
Kafka: 5-7 节点 (16C32G, 1TB+ NVMe)
PostgreSQL: HA 集群 (16C64G)
Doris: 5-10 节点 (32C64G)

运维保障​

监控体系​

  • Prometheus + Grafana: 统一监控平台
  • Node Exporter: 系统指标采集
  • JMX Exporter: Java 应用监控
  • Alertmanager: 告警管理

日志管理​

  • ELK Stack: 集中式日志分析
  • Loki: 轻量级日志聚合
  • Filebeat: 日志采集

备份恢复​

  • 数据库: pg_dump/WAL-G
  • 配置文件: Git 版本控制
  • 元数据: 定期导出
  • 快照: 虚拟机/容器快照

总结​

当前 bigdata/ 目录已包含完整的大数据平台核心组件:

✅ 调度层: DolphinScheduler(高可用集群)
✅ 集成层: SeaTunnel + DataX(实时 + 离线)
✅ 计算层: Spark(批量处理)
✅ 消息层: Kafka(实时数据管道)

形成了从数据采集 → 数据传输 → 数据处理 → 数据存储 → 任务调度的完整闭环,可以满足企业级大数据平台的建设需求。

后续可根据业务需要,逐步添加 Flink、Presto、ClickHouse 等更多组件,构建更加完善的大数据生态系统。