流批一体架构
技术栈
开发语言(三者都可以)
- Java
- Scala
- Python
技术选型
- K8s
- Debezium
- Kafka
- Flink (Hdfs, RockDB)
- Clickhouse
- Doris
- ElasticSearch
- MySQL
- DataX (离线抽取, 主要用于历史,历史数据初始化)
批流一体架构
架构实现步骤
- 1. 实时同步业务库数据到企业总线
1.1 SqlServer 数据实时投递到Kafka
1.2 MySQL 数据实时投递到Kafka
- 2. 进行数仓实时ETL
2.1 从kafka中实时数据原始数据到clickhouse
2.2 Kafka作为数仓DW层,使用Flink作为实时ETL工具,将数据整合后发送到Kafka
- 3. 同步数仓数据到落地库,进行OLAP操作或者提供AppService
3.1 实时同步clickhouse(可进行准实时开发和离线数据开发)
3.2 实时同步到ES
3.3 实时同步到Doris
- 4. 提供数据服务标准和进行OpenApi开发
4.1 合理规划维度指标数据,进行指标分类
4.2 组织数据API服务标准与使用规范
4.3 进行OpenAPI的开发
问题:
- 历史数据初始化问题
- 故障恢复机制
- 状态存储问题