数仓整体系统架构图(HDFS / COS / Hive / Iceberg / OLAP)
① OLTP 联机事务处理|业务数据库
MySQL
业务库,线上交易
SQL Server
业务库,线上交易
PostgreSQL
业务库,线上交易
Excel CSV
静态数据文件
↓ 数据同步
② 数据同步层
DataX / Canal / Flink
采集业务数据,写入底层存储
↓ 原始数据写入文件
③ 底层存储层
HDFS
自建集群分布式块存储
OSS 对象存储
阿里云上的云存储
S3 对象存储
AWS云上的对象存储
COS 对象存储
腾讯云上的对象存储,等价于OSS和S3
↓ 存放数仓物理文件|
注册元信息 →
④ 数仓分层物理文件 Parquet / ORC
ODS 贴源层
DWD 明细层
DWS 汇总层
ADS 应用层
元数据中心
Hive Metastore
记录表、分区、路径、Schema;不存储业务数据
↓ OLAP引擎读取元数据+读写存储文件
⑤ OLAP 联机分析处理引擎
Spark SQL
批处理ETL,数仓分层加工
Trino
联邦交互式查询,多源跨存储即席分析
MPP‑OLAP 数据库(自带存储)
StarRocks
Apache Doris
两种使用模式:①导入数据至内部存储;②外部表映射,直接读取HDFS/COS上Parquet文件
↓ SQL查询提交,对外提供服务
⑥ 消费端
Notebook
Jupyter / Zeppelin
BI报表可视化
报表、大屏分析
业务应用接口
业务服务调用
关键链路说明(对应原Mermaid逻辑)
SparkSQL:读取HiveMetastore元数据,读写HDFS/COS,完成ETL后输出ODS/DWD/DWS/ADS分层文件
Trino:联邦查询;对接Hive元数据+HDFS/COS,也可以直连MySQL等外部业务源
StarRocks / Doris:既可导入数仓分层数据,也可通过外部表直接读对象存储上的parquet,依赖Hive Metastore获取schema
上层Notebook、BI、业务应用向各类OLAP引擎提交SQL完成分析