一种批流融合处理的大数据整合方法技术

技术编号:38739960 阅读:12 留言:0更新日期:2023-09-08 23:25
本发明专利技术公开了一种批流融合处理的大数据整合方法。该方法在Hudi(Hadoop Upserts Deletes and Incrementals)原有架构的基础上,通过重构Hudi的多表消费策略,将每个数据库的接入行为定义为一个消费组,实现Spark服务间的表信息共享,在批处理服务基础上,新增流处理分析过程,通过创建可独立运行的数据管道服务,复用数据处理逻辑,在保证已有数据服务服务统一性和一致性的基础上,提高数据处理实时性。本发明专利技术将单一的物理机/虚拟机集群模式调整为存、算分离的模式,在保留原有HDFS等存储系统基础上,将批、流计算、编排调度、数据分析分离出来,优化数据分析服务的扩展性、弹性伸缩、动态扩容与服务发现。说明书附图中的图1为本发明专利技术的摘要附图。图1为本发明专利技术的摘要附图。图1为本发明专利技术的摘要附图。

【技术实现步骤摘要】
一种批流融合处理的大数据整合方法


[0001]本专利技术公开了一种批流融合处理的大数据整合方法,属于数据科学领域,用于在保证已有数据服务服务统一性和一致性的基础上,进一步提高数据处理实时性。

技术介绍

[0002]以HDFS、Hive等Hadoop项目为核心的大数据技术在构建企业级数据湖/数据仓库的基础设施建设方面,已经成为了一种较为成型的事实标准。然而由于其原始技术基础等原因上的限制,导致该方案无法对已有的数据进行基于文件内容的高效的更新、删除等操作。
[0003]Hudi是一个面向HDFS、云存储等文件系统,对大型数据集进行摄取、管理和查询的新一代数据湖框架,通过Spark可便捷地进行需要的操作,同时将元数据暴露给Hive,再利用Presto、Kylin、Amazon Athena、Impala、Drill等多种大数据查询引擎进行数据的实时与增量查询。
[0004]本专利技术公开的一种批流融合处理的大数据整合方法,在Hudi原有架构的基础上,结合企业数据实际情况,集成和整合流处理,对Hudi架构进行定制化开发,使其能够实现数据流与批的并行化处理,以及如何在Hudi基础上进行湖仓一体化平台的数据服务。在大数据平台构建和应用的类似场景中提供可借鉴的解决方案。

技术实现思路

[0005]本专利技术要解决的问题是在企业不支持流处理的原有数据架构基础上,引入流处理架构并整合已有的批处理系统,以优化数据分析服务的扩展性、弹性伸缩、动态扩容与服务发现。
[0006]为实现上述目的,本专利技术采用的
技术实现思路
为:
[0007]一种批流融合处理的大数据整合方法,包括如下内容:
[0008](1)Hudi流处理,在CDC服务支持下,解析数据库操作日志,形成格式化数据,推送给Kafka消息队列,利用Spark Streaming消费对应主题内的数据,分间隔和批次写入数据。
[0009](2)Hudi定制化改造,重构Hudi的多表消费策略,优化Spark内部独立运行的任务分发服务,支持Spark容纳更多的表,实现Hudi流消费的服务,采用Zookeeper调度分布式集群服务,通过多个消费进程间的调度和服务发现,支持多个Spark服务间的表信息共享。
[0010](3)流处理与批处理融合,考虑已有基于批处理的接入方案和流处理方案的整合适配,将上层服务进行抽象,形成数据源、数据集等统一的服务对象,通过构建多套微服务来集中进行服务管理控制;中层涉及元数据信息部分则做流程的拆分和关联;底层复用处理逻辑,保持服务的统一和一致性。
[0011](4)优化数据服务,建立统一数据层级包含各类型数据的统一平台,对外提供统一的数据服务。
[0012]本专利技术弱相关性复杂数据定量分析方法具有以下优异效果:

保持了数据接入接
口,与对外服务接口的不变,以保证架构外向的不变性,减少了架构优化的影响;

在数据批处理的基础上,融合数据流处理,优化了数据服务的扩展性、弹性伸缩、动态扩容与服务发现。
附图说明
[0013]图1为本专利技术的总体框架图
[0014]图2为实施例中,基于CDC的数据采集与同步方案
[0015]图3为实施例中,单表与多表消费组模式流处理比较
具体实施方式
[0016]下面结合附图对本专利技术的具体实施例对本专利技术做进一步的详细说明:
[0017]实施例背景:国内某集团企业技术中心在大数据平台建设1期,使用 Hoodie作为数据中心的存储基础架构,主要以Spark的批处理形式进行关系型数据库的查询与数据落地,上层使用Airflow进行定时调度。随着接入大数据平台的业务系统持续增多,数据量的不断积累,仅以批处理进行调度显然已经不能满足数据管理和应用的需求,亟需对原来的数据接入与管理架构进行优化,在保持现有业务不变的情况下,通过引入流处理,优化数据服务性能。
[0018]实施例中的数据库实例分散,数据庞杂,包含MySQL、DB2、Oracle、 GBase等诸多类型数据库。考虑多数据源的适配性,与Kafka数据类型、格式的统一化需要,选择Debezium作为CDC的日志抽取服务以及Kafka的数据提供者,并在Debezium的上层定制了一套基于Hudi和云上可扩展的CDC整合服务方案。基于Debezium的CDC数据采集方案如图3所示。
[0019]实施例中,当前使用Hoodie作为数据中心的存储基础架构,上层使用 Airflow进行实时调度。在优化过程中,重构Hudi的多表消费策略,用以支持同一个Spark资源下容纳更多的表,实现Hudi流消费的服务。
[0020]实施例中,通过构建多套微服务,对抽象为统一服务对象的将上层服务进行集中管理控制,中层完成流程的拆分和关联,底层复用处理逻辑,保持服务的统一和一致性。
[0021]本实例通过批流的融合处理,已经成功接入了10余个业务系统中,4000 余张数据表的自动化实时接入与处理,并且可支持更多业务系统数据接入大数据平台。同时,提供接入数据的实时数据化、元数据信息管理、数据治理、工业流程分析、BI分析等服务,基本实现从人工运维到自动化运维的转变。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种批流融合处理的大数据整合方法,其特征在于,重构Hudi的多表消费策略,通过Spark服务间的表信息共享,在批处理服务基础上,新增流处理分析过程,以优化数据分析服务的扩展性、弹性伸缩、动态扩容与服务发现。包括下述内容与方法:(1)内容1:Hudi流处理,在CDC(Change Data Capture,变化数据捕捉)服务支持下,解析数据库操作日志,形成格式化数据,推送给Kafka消息队列,利用Spark Streaming消费对应主题内的数据,分间隔和批次写入数据。(2)内容2:Hudi定制化改造,重构Hudi的多表消费策略,优化Spark内部独立运行的任务分发服务,支持Spark容纳更多的表,实现Hudi流消费的服务,采用Zookeeper调度分布式集群服务,通过多个消费进程间的调度和服务发现,支持多个Spark服务间的表信息共享。(3)内容3:流处理与批处理融合,考虑已有基于批处理的接入方案和流处理方案的整合适配,将上层服务进行抽象,形成数据源、数据集等统一的服务对象,通过构建多套微服务来集中进行服务管理控制;中层涉及元数据信息部分则做流程的拆分和关联;底层复用处理逻辑,保持服务的统一和一致性。(4)内容4:优化数据服务,建立统一数据层级包含各类型数据的统一平台,对外提供统一的数据服务。2.根据权利要求1所述的Hudi流处理,其特征在于,所述的内容1具体内容与方法如下:(1)在Huid流处理模式下,切换为Merge On Read(MOR)模式存储数据,每次更新前先追加写入日志文件,不直接进行数据文件的更新操作,仅在数据做读取时候做轻量级数据与日志的合并,侧重于提高数据写入效率。(2)Hudi基于服务启动的配置信息,在任务后端异步做追加日志和已有数据的合并,达到数据一致性。3.根据权利要求1所述的Hudi定制化改造,其特征在于,所述的内容...

【专利技术属性】
技术研发人员:陈爱明曾仲大文里梁
申请(专利权)人:大连达硕信息技术有限公司
类型:发明
国别省市:

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

1