一种基于流处理和消息队列的数据处理平台制造技术

技术编号:39584033 阅读:12 留言:0更新日期:2023-12-03 19:34
本发明专利技术提供一种基于流处理和消息队列的数据处理平台,包括实时数据采集模块

【技术实现步骤摘要】
一种基于流处理和消息队列的数据处理平台


[0001]本专利技术涉及数据处理
,尤其涉及一种基于流处理和消息队列的数据处理平台


技术介绍

[0002]目前,传统意义上的数据仓库主要处理
T+1
数据
(
即:今天产生的数据分析结果明天才能看到
)。
[0003]然而,随着互联网的发展,越来越多的业务指标需要实时查看,以便于更好的进行业务分析,例如,在举行活动的时候,若能够更好的把握活动的各项指标趋势,可以更好的调整策略,达成活动目标

此外,数据时效性在企业运营中的重要性也日益凸现,例如,实时推荐

精准营销

广告投放效果

实时物流等

数据的实时处理能力成为企业提升竞争力的一大因素,最初阶段企业主要采用来一个需求,编写一个实时计算任务的方式来处理实时数据,随着需求的增多,计算任务也相应增多,并且不同任务的开发人员不同,导致开发风格差异化,该阶段的实时数据处理缺乏统一的规划,代码风格差异化严重,在维护成本和开发效率上有很大障碍


技术实现思路

[0004]本专利技术提供了一种基于流处理和消息队列的数据处理平台,以解决现有技术中的数据处理平台实时性差

维护成本高和开发效率低的问题

[0005]本专利技术提供的基于流处理和消息队列的数据处理平台,包括:实时数据采集模块

实时数仓模块和实时指标访问模块;
[0006]所述实时数据采集模块,部署有流式数据传输工具,用于实时采集指定数据库的实时数据,并将所述实时数据发送给消息队列;
[0007]所述实时数仓模块,用于抽取消息队列中的实时数据,并进行转换和加载的流处理操作,形成宽表存储于构建的实时数仓;
[0008]所述实时指标访问模块,用于访问实时数仓中的数据以进行开发或展示

[0009]在一种可能的实现方式中,所述流式数据传输工具包括卡夫卡连接器,所述消息队列包括卡夫卡消息队列

[0010]在一种可能的实现方式中,所述卡夫卡连接器在挂掉重启后,从起始消费的系统改变号开始消费

[0011]在一种可能的实现方式中,所述实时数据包括企业业务系统数据库的
binlog
日志与归档日志,和
/
或,企业应用系统数据库的日志文件;
[0012]其中,企业业务系统数据库端注册有分布式服务工具
Debezium
,用于将
binlog
日志与归档日志转换为事件流提供给卡夫卡连接器;企业应用系统数据库注册有
Filebeat
工具,用于集中企业应用系统数据库的日志文件并转发给卡夫卡连接器

[0013]在一种可能的实现方式中,所述实时数仓模块包括:
[0014]数据贴源层,用于构建数据准备区,接入实时数据采集模块发送的实时数据,并针对实时数据对应的每个数据表创建一个消息集合;
[0015]数据明细层,作为业务层和数据仓库的隔离层,用于读取数据贴源层的消息集合并进行数据清洗转换以及雪花模型建模,生成事实表及维度表的消息集合;
[0016]数据中间层,用于对事实表及维度表的消息集合对应的数据进行聚合操作,生成中间数据消息集合;
[0017]数据服务层,用于消费中间数据消息集合,整合中间数据形成针对不同主题域的数据汇总宽表,并将数据汇总宽表推送给列式存储数据库;
[0018]数据应用层,用于为各应用访问请求提供数据服务

[0019]在一种可能的实现方式中,所述数据明细层,还通过维度退化方法将数据贴源层的消息集合对应的数据退化至事实表中,以减少事实表和维度表的关联

[0020]在一种可能的实现方式中,所述数据服务层,通过
Redis
记录中间数据消息集合的消息位置,每次消费时,从
Redis
读取要消费的中间数据消息集合的消息位置

[0021]在一种可能的实现方式中,所述推送给列式存储数据库的数据汇总宽表设置唯一约束

[0022]在一种可能的实现方式中,所述实时指标访问模块,对于
PC
端报表平台,提供
jdbc
的形式访问列式存储数据库的数据进行报表的开发及展示

[0023]在一种可能的实现方式中,所述实时指标访问模块,对于移动端,提供访问数据
API
进行数据展示,数据
API
的数据缓存结果存于
Redis
集群

[0024]本专利技术提供的基于流处理和消息队列的数据处理平台,包括实时数据采集模块

实时数仓模块和实时指标访问模块,实时数据采集模块部署有流式数据传输工具,用于实时采集指定数据库的实时数据,并发送到消息队列;支持低延迟

高容错

多场景的数据采集;实时数仓模块,用于抽取消息队列中的实时数据,并进行转换和加载的流处理操作,形成宽表存储于构建的实时数仓;能够支持低延迟

高吞吐

高容错

精准消费;实时指标访问模块,用于访问访问实时数仓中的数据以进行开发或展示;支持多场景
(
移动端
、PC

)
,辅助业务移动办公

整体架构高可用

伸缩性强

可横向扩展,为企业提供实时决策能力

本专利技术提高了实时数据处理的时效性,且具备较高的开发效率和较低的维护成本

附图说明
[0025]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图

[0026]图1是本专利技术实施例提供的基于流处理和消息队列的数据处理平台的组成架构示意图;
[0027]图2是本专利技术实施例提供的实时数仓模块的组成架构示意图;
[0028]图3是本专利技术实施例提供的指标访问流程的示意图

具体实施方式
[0029]以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构

技术之类的具体细节,以便透彻理解本专利技术实施例

然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本专利技术

在其它情况中,省略对众所周知的系统

装置

电路以及方法的详细说明,以免不必要的细本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于流处理和消息队列的数据处理平台,其特征在于,所述平台包括实时数据采集模块

实时数仓模块和实时指标访问模块;所述实时数据采集模块,部署有流式数据传输工具,用于实时采集指定数据库的实时数据,并将所述实时数据发送给消息队列;所述实时数仓模块,用于抽取消息队列中的实时数据,并进行转换和加载的流处理操作,形成宽表存储于构建的实时数仓;所述实时指标访问模块,用于访问实时数仓中的数据以进行开发或展示
。2.
如权利要求1所述的基于流处理和消息队列的数据处理平台,其特征在于,所述流式数据传输工具包括卡夫卡连接器,所述消息队列包括卡夫卡消息队列
。3.
如权利要求2所述的基于流处理的数据处理平台,其特征在于,所述卡夫卡连接器在挂掉重启后,从起始消费的系统改变号开始消费
。4.
如权利要求3所述的基于流处理和消息队列的数据处理平台,其特征在于,所述实时数据包括企业业务系统数据库的
binlog
日志与归档日志,和
/
或,企业应用系统数据库的日志文件;其中,企业业务系统数据库端注册有分布式服务工具
Debezium
,用于将
binlog
日志与归档日志转换为事件流提供给卡夫卡连接器;企业应用系统数据库注册有
Filebeat
工具,用于集中企业应用系统数据库的日志文件并转发给卡夫卡连接器
。5.
如权利要求1至4任一项所述的基于流处理和消息队列的数据处理平台,其特征在于,所述实时数仓模块包括:数据贴源层,用于构建数据准备区,接入实时数据采集模块发送的实时数据,并针对实时数据对应的每个数据表创建一个消息集合;数据明细层,作为业务层...

【专利技术属性】
技术研发人员:李庆安
申请(专利权)人:深圳联友科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1