数仓采集通道的设计

本文涉及的产品
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 数仓采集通道的设计

数仓采集通道的设计


a53fa7633514475fa766316fab7a2e3e.jpeg



写在前面

  • 离线和实时数仓共用一套数据采集通道系统
  • 数据采集存储到HDFS上
  • 完全分布式(三个节点)


方案一:


(node01)Flume(TailDir Source) + Kafka Channel + HDFS Sink +  Kafka --> Kafka(node02)


架构图:

1.png


Kafka Channel有一个参数: parseAsFlumeAgent = true ,即 数据以Event的方式发送给Kafka 


Event 格式 : Header + Body 


数据发送到 HDFS Sink ,下游可以解析出Body数据,Event数据存储在node02节点的kafka主题TopicA中,离线数仓这样设计没有问题


但是对于实时数仓那个来说,header的数据是不需要的,这样就导致多存储了一些无用的数据


如果将参数 parseAsFlumeAgent 设置为false,这样实时数仓就可以只读取到body的数据,看起来似乎就完美解决了这个问题,其实不然。


因为我们需要实现Flume中`拦截器`的功能,而拦截器的实现需要 结合header 来使用,故此种实时和离线共用的数据采集系统不合适,会丢失header数据。


方案二:


(node01)FLume(TailDir Source) + Kafka Channel + Kafka --> Kafka(node02)


架构图:

2.png3e.png


参数 parseAsFlumeAgent 设置为false


此方案数仓采集过程一共4个链路(数据传输环节)

如下图:

4.png


方案三:


(node01)FLume(TailDir Source) + Kafka Channel + Kafka Sink + Kafka --> Kafka(node02)


架构图:

5c.png

参数 parseAsFlumeAgent 设置为false


上游:数据通过node01的Kafka Channel存储到node02的Kafka主题(只有body数据)中,再从Kafak主题中读取数据


下游:拦截器处理,利用Kafka Channel将数据从Kafak主题中读取出来,


此方案数仓采集过程一共3个链路(数据传输环节)

如下图:

6.png


与方案二相比,该方案节省一个Sink,节省一个数据传输环节,相应地提高了性能


最终方案


方案三的采集设计通道更符合本项目的需求,架构图:


7c.png



结束!

相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
消息中间件 数据采集 SQL
1、电商数仓(用户行为采集平台)数据仓库概念、用户行为日志、业务数据、模拟数据、用户行为数据采集模块、日志采集Flume(一)
1、电商数仓(用户行为采集平台)数据仓库概念、用户行为日志、业务数据、模拟数据、用户行为数据采集模块、日志采集Flume(一)
|
SQL 消息中间件 JSON
4、离线数仓数据同步策略(全量表数据同步、增量表数据同步、首日同步、采集通道脚本)(二)
4、离线数仓数据同步策略(全量表数据同步、增量表数据同步、首日同步、采集通道脚本)(二)
|
消息中间件 canal SQL
4、离线数仓数据同步策略(全量表数据同步、增量表数据同步、首日同步、采集通道脚本)(一)
4、离线数仓数据同步策略(全量表数据同步、增量表数据同步、首日同步、采集通道脚本)(一)
|
消息中间件 SQL JSON
3、数仓之采集工具MaxWell(MaxWell简介、MaxWell原理、MaxWell部署、MaxWell使用)
3、数仓之采集工具MaxWell(MaxWell简介、MaxWell原理、MaxWell部署、MaxWell使用)
|
消息中间件 数据采集 JSON
1、电商数仓(用户行为采集平台)数据仓库概念、用户行为日志、业务数据、模拟数据、用户行为数据采集模块、日志采集Flume(二)
1、电商数仓(用户行为采集平台)数据仓库概念、用户行为日志、业务数据、模拟数据、用户行为数据采集模块、日志采集Flume(二)
|
3月前
|
运维 算法 机器人
阿里云AnalyticDB具身智能方案:破解机器人仿真数据、算力与运维之困
本文将介绍阿里云瑶池旗下的云原生数据仓库AnalyticDB MySQL推出的全托管云上仿真解决方案,方案采用云原生架构,为开发者提供从开发环境、仿真计算到数据管理的全链路支持。
|
28天前
|
存储 人工智能 关系型数据库
阿里云AnalyticDB for PostgreSQL 入选VLDB 2025:统一架构破局HTAP,Beam+Laser引擎赋能Data+AI融合新范式
在数据驱动与人工智能深度融合的时代,企业对数据仓库的需求早已超越“查得快”这一基础能力。面对传统数仓挑战,阿里云瑶池数据库AnalyticDB for PostgreSQL(简称ADB-PG)创新性地构建了统一架构下的Shared-Nothing与Shared-Storage双模融合体系,并自主研发Beam混合存储引擎与Laser向量化执行引擎,全面解决HTAP场景下性能、弹性、成本与实时性的矛盾。 近日,相关研究成果发表于在英国伦敦召开的数据库领域顶级会议 VLDB 2025,标志着中国自研云数仓技术再次登上国际舞台。
191 0
|
2月前
|
存储 人工智能 分布式计算
数据不用搬,AI直接炼!阿里云AnalyticDB AI数据湖仓一站式融合AI+BI
阿里云瑶池旗下的云原生数据仓库AnalyticDB MySQL版(以下简称ADB)诞生于高性能实时数仓时代,实现了PB级结构化数据的高效处理和分析。在前几年,为拥抱大数据的浪潮,ADB从传统数仓拓展到数据湖仓,支持Paimon/Iceberg/Delta Lake/Hudi湖格式,为开放的数据湖提供数据库级别的性能、可靠性和管理能力,从而更好地服务以SQL为核心的大规模数据处理和BI分析,奠定了坚实的湖仓一体基础。
|
3月前
|
存储 人工智能 关系型数据库
从“听指令”到“当参谋”,阿里云AnalyticDB GraphRAG如何让AI开窍
阿里云瑶池旗下的云原生数据仓库 AnalyticDB PostgreSQL 版 GraphRAG 技术,创新融合知识图谱动态推理+向量语义检索,通过实体关系映射与多跳路径优化,构建可应对复杂场景的决策引擎。本文将通过家电故障诊断和医疗预问诊两大高价值场景,解析其如何实现从“被动应答”到“主动决策”的跨越。

热门文章

最新文章