流式实时处理线上生产数据的装置和方法制造方法及图纸

技术编号:24331063 阅读:33 留言:0更新日期:2020-05-29 19:37
本发明专利技术公开了一种流式实时处理线上生产数据的装置和方法。在本发明专利技术中,基于流式处理方式实时读取的多个数据源的线上生产数据可以转存为键值对格式的单数据源分表,并且,各数据源的键值对格式的单数据源分表可以周期性地合并为多数据源宽表以实现多数据源的整合,从而,能够以可观的消费效率、并在保证数据完整性的前提下实现多数据源的整合,从而,本发明专利技术能够以可观的消费效率、并在保证数据完整性的前提下实现低开发成本的多数据源整合,以满足对数据实时性的需求。而且,多数据源宽表即可以提供给分布式文件系统以实现相对简单的数据核对,还可以反馈给分布式发布订阅消息系统用于下游业务使用。

【技术实现步骤摘要】
流式实时处理线上生产数据的装置和方法
本专利技术涉及大数据的数据加工领域,特别涉及一种流式实时处理线上生产数据的装置、一种流式实时处理线上生产数据的方法、以及一种数据处理设备和一种非瞬时计算机可读存储介质。
技术介绍
随着大数据的发展,需要加工的数据量也不断地增长。基于这样的情况,传统的离线T+1加工方式很难保证时效性,难以满足从业务角度对数据实时性的需求。
技术实现思路
本专利技术的一个实施例提供了一种流式实时处理线上生产数据的装置,包括:数据接入模块,所述数据接入模块基于流式处理方式从分布式发布订阅消息系统读取多个数据源的线上生产数据;数据缓冲模块,所述数据缓冲模块将各数据源的线上生产数据转存为键值格式的单数据源分表;数据合并模块,所述数据合并模块周期性地将各数据源的键值对格式的单数据源分表合并为多数据源宽表。可选地,所述数据接入模块通过调用针对流数据和批数据的分布式处理引擎读取线上生产数据。可选地,各数据源的线上生产数据在分布式发布订阅消息系中按照主键对分区存储,所述数据接入模块从各分区并行读取各数据源的线上生产数据。可选地,所述数据缓冲模块在分布式面向列的数据库中转存键值对格式的单数据源分表。可选地,所述数据缓冲模块根据预先针对各数据源设置的配置文件在对应的单数据源分表中设定主键标识、数据库行键、表间关联字段、以及是否存在针对更新操作的修改内容字段。可选地,所述数据缓冲模块将线上生产数据中的新增数据直接转换为键值对格式、将更新数据进行数据覆盖后转换为键值对格式、以及将删除数据增加删除记号后转换为键值对格式;并且,所述数据缓冲模块将键值对格式的新增数据、更新数据、以及删除数据存入至对应的单数据源分表中,其中,若同一单数据源分表存在多个对应的数据库行键,则所述数据缓冲模块将多个对应的数据库行键拼接;若单数据源分表中存在针对更新操作的修改内容字段,则所述数据缓冲模块进行更新判决。可选地,所述数据合并模块在关系型数据库中合并得到多数据源宽表。可选地,所述数据合并模块通过基于结构化查询语言的表间关联实现多数据源宽表的合并。可选地,所述数据合并模块以预设的时间窗周期性地合并得到多数据源宽表。可选地,进一步包括:数据生产模块,所述数据生产模块将多数据源宽表存入至分布式文件系统、和/或将多数据源宽表转换为日志格式后提供给分布式发布订阅消息系统。本专利技术的另一个实施例提供了一种流式实时处理线上生产数据的方法,包括:基于流式处理方式从分布式发布订阅消息系统读取多个数据源的线上生产数据;将各数据源的线上生产数据转存为键值格式的单数据源分表;周期性地将各数据源的键值对格式的单数据源分表合并为多数据源宽表。可选地,读取多个数据源的线上生产数据包括:通过调用针对流数据和批数据的分布式处理引擎读取线上生产数据。可选地,各数据源的线上生产数据在分布式发布订阅消息系中按照主键对分区存储,并且,读取多个数据源的线上生产数据包括:从各分区并行读取各数据源的线上生产数据。可选地,将各数据源的线上生产数据转存为键值对格式的单数据源分表包括:在分布式面向列的数据库中转存键值对格式的单数据源分表。可选地,将各数据源的线上生产数据转存为键值对格式的单数据源分表包括:根据预先针对各数据源设置的配置文件在对应的单数据源分表中设定主键标识、数据库行键、表间关联字段、以及是否存在针对更新操作的修改内容字段;将线上生产数据中的新增数据直接转换为键值对格式、将更新数据进行数据覆盖后转换为键值对格式、以及将删除数据增加删除记号后转换为键值对格式;将键值对格式的新增数据、更新数据、以及删除数据存入至对应的单数据源分表中,其中,若同一单数据源分表存在多个对应的数据库行键,则将多个对应的数据库行键拼接;并且,若单数据源分表中存在针对更新操作的修改内容字段,则进行更新判决。可选地,将各数据源的键值对格式的单数据源分表合并为多数据源宽表包括:在关系型数据库中合并得到多数据源宽表。可选地,将各数据源的键值对格式的单数据源分表合并为多数据源宽表包括:通过基于结构化查询语言的表间关联实现多数据源宽表的合并。可选地,进一步包括:将多数据源宽表存入至分布式文件系统、和/或将多数据源宽表转换为日志格式后提供给分布式发布订阅消息系统。本专利技术的另一个实施例提供了一种数据处理设备,包括处理器,所述处理器用于执行如上所述方法的步骤。本专利技术的另一个实施例提供了一种非瞬时计算机可读存储介质,所述非瞬时计算机可读存储介质存储指令,所述指令用于所述处理器执行如上所述方法的步骤。如上可见,基于上述实施例,基于流式处理方式实时读取的多个数据源的线上生产数据可以转存为键值对格式的单数据源分表,并且,各数据源的键值对格式的单数据源分表可以周期性地合并为多数据源宽表以实现多数据源的整合,从而,能够以可观的消费效率、并在保证数据完整性的前提下实现多数据源的整合,以满足对数据实时性的需求。而且,作为进一步的延续,多数据源宽表即可以提供给分布式文件系统以实现相对简单的数据核对,还可以反馈给分布式发布订阅消息系统用于下游业务使用。附图说明图1为一个实施例中流式实时处理线上生产数据的装置的示例性结构示意图;图2为如图1所示装置中的数据接入模块的原理性示意图;图3为如图1所示装置中的数据缓冲模块的原理性示意图;图4为如图1所示装置中的数据合并模块的原理性示意图;图5为一个实施例中流式实时处理线上生产数据的方法的示例性流程示意图;图6为如图5所示方法的扩展流程示意图;图7为如图5所示方法的一具体实例的流程图;图8为一个实施例中的数据处理设备的结构示意图。具体实施方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本专利技术进一步详细说明。图1为一个实施例中流式实时处理线上生产数据的装置的示例性结构示意图。请参见图1,在一个实施例中,流式实时处理线上生产数据的装置可以包括:数据接入模块11、数据缓冲模块12、数据合并模块13、以及数据生产模块14。数据接入模块11可以基于流式处理方式从分布式发布订阅消息系统20读取多个数据源的线上生产数据。其中,上述的分布式发布订阅消息系统20可以是诸如卡夫卡(Kafka)等具有高吞吐量的开源流处理平台,其具备处理多数据源的所有动作流数据的能力,分布式发布订阅消息系统20中可访问的线上生产数据可以是日志格式的,例如对话(Topic)数据中包括的二进制日志(binlog)。而且,数据接入模块11可以调用例如快速灵活连接(Flink)等针对流数据和批数据的分布式处理引擎,以通过调用的分布式处理引擎从分布式发布订阅消息系统20读取线上生产数据。相比于传统流式处理方式中常用的暴风(Storm)而言,Flink具有更多的功能,例如机器学习、批处理、流式处理等,并且Flink本文档来自技高网...

【技术保护点】
1.一种流式实时处理线上生产数据的装置,其特征在于,包括:/n数据接入模块,所述数据接入模块基于流式处理方式从分布式发布订阅消息系统读取多个数据源的线上生产数据;/n数据缓冲模块,所述数据缓冲模块将各数据源的线上生产数据转存为键值格式的单数据源分表;/n数据合并模块,所述数据合并模块周期性地将各数据源的键值对格式的单数据源分表合并为多数据源宽表。/n

【技术特征摘要】
1.一种流式实时处理线上生产数据的装置,其特征在于,包括:
数据接入模块,所述数据接入模块基于流式处理方式从分布式发布订阅消息系统读取多个数据源的线上生产数据;
数据缓冲模块,所述数据缓冲模块将各数据源的线上生产数据转存为键值格式的单数据源分表;
数据合并模块,所述数据合并模块周期性地将各数据源的键值对格式的单数据源分表合并为多数据源宽表。


2.根据权利要求1所述的装置,其特征在于,所述数据接入模块通过调用针对流数据和批数据的分布式处理引擎读取线上生产数据。


3.根据权利要求1所述的装置,其特征在于,各数据源的线上生产数据在分布式发布订阅消息系中按照主键对分区存储,所述数据接入模块从各分区并行读取各数据源的线上生产数据。


4.根据权利要求1所述的装置,其特征在于,所述数据缓冲模块在分布式面向列的数据库中转存键值对格式的单数据源分表。


5.根据权利要求4所述的装置,其特征在于,所述数据缓冲模块根据预先针对各数据源设置的配置文件在对应的单数据源分表中设定主键标识、数据库行键、表间关联字段、以及是否存在针对更新操作的修改内容字段。


6.根据权利要求5所述的装置,其特征在于,
所述数据缓冲模块将线上生产数据中的新增数据直接转换为键值对格式、将更新数据进行数据覆盖后转换为键值对格式、以及将删除数据增加删除记号后转换为键值对格式;
并且,所述数据缓冲模块将键值对格式的新增数据、更新数据、以及删除数据存入至对应的单数据源分表中,其中,
若同一单数据源分表存在多个对应的数据库行键,则所述数据缓冲模块将多个对应的数据库行键拼接;
若单数据源分表中存在针对更新操作的修改内容字段,则所述数据缓冲模块进行更新判决。


7.根据权利要求1所述的装置,其特征在于,所述数据合并模块在关系型数据库中合并得到多数据源宽表。


8.根据权利要求1所述的装置,其特征在于,所述数据合并模块通过基于结构化查询语言的表间关联实现多数据源宽表的合并。


9.根据权利要求1所述的装置,其特征在于,所述数据合并模块以预设的时间窗周期性地合并得到多数据源宽表。


10.根据权利要求1所述的装置,其特征在于,进一步包括:
数据生产模块,所述数据生产模块将多数据源宽表存入至分布式文件系统、和/或将多数据源宽表转换为日志格式后提供给分布式发布订阅消息系统。


11.一种流式实时处理线上生产数据的方法,其特征在于,包括:
基于流式处理...

【专利技术属性】
技术研发人员:任文治袁建军
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京;11

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

1