System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 多源异构数据采集方法、系统、计算机设备和存储介质技术方案_技高网

多源异构数据采集方法、系统、计算机设备和存储介质技术方案

技术编号:41112342 阅读:2 留言:0更新日期:2024-04-25 14:04
本发明专利技术涉及计算机技术领域,涉及一种多源异构数据库的数据采集方法、系统、装置和存储介质。其中,方法包括以下步骤:判断接入的数据源是否为单一数据源;若为单一数据源,则将数据源切分入库;若为多数据源,则对接入的数据源的数据容量进行测算,得到数据容量测算结果;获取服务器存储空间;配置多种数据缓存方法;根据所述数据容量测算结果和所述服务器存储空间,选择相应的数据缓存方法对接入的数据源进行缓存;对缓存后的源数据进行关联采集,将数据源切分入库。本申请将多种缓存方式进行融合,为接入数据源动态分配缓存方式,从而提高数据处理的实时性和高效性,且避免数据丢失。

【技术实现步骤摘要】

本专利技术涉及计算机,具体而言,涉及一种多源异构数据库的数据采集方法、系统、装置和存储介质。


技术介绍

1、数据中心建设过程中,数据采集是必不可少的一环。多源异构数据库之间关联取数情况是最常见的场景之一。要实现多源异构数据库之间的关联,首先需要将待关联的各数据源数据缓存到同一个存储中,让“多源”变成“单源”,然后再对“单源”数据进行关联采集操作,目前采用以下两种方式实现多源异构数据库之间的关联取数。第一种是基于内存的数据缓存,是将各数据源的数据分别提取到内存中,并在内存中进行缓存,再基于内存数据进行数据关联查询处理;第二种是基于磁盘的数据缓存,是将各数据源的数据分别进行提取到磁盘中,并在磁盘中以文件方式存储,再基于磁盘数据进行数据关联查询处理。上述两种多源异构数据库之间的关联取数方式存在以下几个弊端:一是基于内存的数据缓存方式对内存硬件要求极高,当缓存的数据量极大时,容易出现内存使用瓶颈,导致内存溢出而丢失数据;并且基于内存的数据缓存方式的数据持久化能力弱,在服务器断电或者读取新数据时,需要重新从异构源获取数据,既增加了网络开销,又降低了数据处理的实效性。二是基于磁盘的数据缓存方式无法做到数据读写的高效性及实时性,同时数据的频繁读写也增大系统i/o压力。

2、有鉴于此,特提出本申请。


技术实现思路

1、本专利技术的目的在于提供一种多源异构数据库的数据采集方法、系统、装置和存储介质,解决现有的多源异构数据库之间的关联取数方法容易丢失数据、读取慢和实时性差的问题。

<p>2、本专利技术通过下述技术方案实现:

3、第一方面,提供一种多源异构数据采集方法,包括以下步骤:判断接入的数据源是否为单一数据源;若为单一数据源,则将数据源切分入库;若为多数据源,则对接入的数据源的数据容量进行测算,得到数据容量测算结果;获取服务器存储空间;配置多种数据缓存方法;根据所述数据容量测算结果和所述服务器存储空间,选择相应的数据缓存方法对接入的数据源进行缓存;对缓存后的源数据进行关联采集,将数据源切分入库。

4、进一步的,对接入的数据源的数据容量进行测算之前,包括以下步骤:根据数据源的类型将接入的数据源拆分为关系型数据源和非关系型数据源;对接入的数据源的数据容量进行测算的方法为:统计关系型数据源的数据量大小和各字段字符大小,统计非关系型数据源的数据量大小和各字段字符大小。

5、进一步的,多种数据缓存方法包括:基于内存的数据缓存方法、基于列示数据库的数据缓存方法和基于分布式文件的数据缓存方法。

6、进一步的,选择相应的数据缓存方法对接入的数据源进行缓存,包括以下步骤:当数据容量测算结果小于服务器存储空间的二十分之一时,选择基于内存的数据缓存方法对数据源进行缓存;当数据容量测算结果大于服务器存储空间的二十分之一且小于服务器存储空间的十分之一时,选择基于列示数据库的数据缓存方法对接入的数据源进行缓存;当数据容量测算结果大于服务器存储空间的十分之一时,选择基于分布式文件的数据缓存方法对接入的数据源进行缓存。

7、第二方面,提供一种多源异构数据采集系统,包括:分析控制模块、容量测算模块、内存获取模块、方法配置模块、数据缓存模块、关联采集模块、切分入库模块和数据拆分模块。其中,分析控制模块用于判断接入的数据源是否为单一数据源;若为单一数据源,则控制切分入库模块工作;若为多数据源,则控制容量测算模块工作。容量测算模块用于对接入的数据源的数据容量进行测算,得到数据容量测算结果。内存获取模块用于获取服务器存储空间。方法配置模块用于配置多种数据缓存方法。数据缓存模块用于根据所述数据容量测算结果和所述服务器存储空间,选择相应的数据缓存方法对接入的数据源进行缓存。关联采集模块用于对缓存后的多源数据进行关联采集。切分入库模块用于将数据源切分入库。数据拆分模块用于根据数据源的类型将接入的数据源拆分为关系型数据源和非关系型数据源。

8、进一步的,所述容量测算模块包括:第一统计单元和第二统计单元。其中,第一统计单元用于统计关系型数据源的数据量大小和各字段字符大小。第二统计单元用于统计非关系型数据源的数据量大小和各字段字符大小。

9、进一步的,所述方法配置模块包括:第一方法配置单元、第二方法配置单元和第三方法配置单元。其中,第一方法配置单元用于配置基于内存的数据缓存方法。第二方法配置单元用于配置基于列示数据库的数据缓存方法。第三方法配置单元用于配置基于分布式文件的数据缓存方法。

10、进一步的,所述数据缓存模块包括:第一数据缓存单元和第二数据缓存单元。其中,第一数据缓存单元用于当数据容量测算结果小于服务器存储空间的二十分之一时,选择基于内存的数据缓存方法对数据源进行缓存。第二数据缓存单元用于当数据容量测算结果大于服务器存储空间的二十分之一且小于服务器存储空间的十分之一时,选择基于列示数据库的数据缓存方法对接入的数据源进行缓存。第三数据缓存单元用于当数据容量测算结果大于服务器存储空间的十分之一时,选择基于分布式文件的数据缓存方法对接入的数据源进行缓存。

11、第三方面,提供一种计算机设备,包括依次通信连接的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如第一方面所述的多源异构数据采集方法。

12、第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面所述的多源异构数据采集方法。

13、本专利技术与现有技术相比,具有如下的优点和有益效果:通过动态识别数据源类型,根据数据源的数据容量与服务器内存空间的大小关系,动态分配不同的数据缓存方式。其中,列式数据库缓存有利于数据结构填充的优化和压缩,对于数据量庞大的接入数据源可提高缓存效率;分布式文件缓存支持大数据量存储,且不受应用进程重启影响,防止数据丢失,不占用应用进程的内存空间,以及能够保持缓存数据的一致性;内存缓存可针对数据容量较小的接入数据源,提升缓存速率。本申请将多种缓存方式进行融合,为接入数据源动态分配缓存方式,从而提高数据处理的实时性和高效性,且避免数据丢失。

本文档来自技高网
...

【技术保护点】

1.一种多源异构数据采集方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种多源异构数据采集方法,其特征在于,

3.根据权利要求1或2所述的一种多源异构数据采集方法,其特征在于,多种数据缓存方法包括:基于内存的数据缓存方法、基于列示数据库的数据缓存方法和基于分布式文件的数据缓存方法。

4.根据权利要求3所述的一种多源异构数据采集方法,其特征在于,选择相应的数据缓存方法对接入的数据源进行缓存,包括以下步骤:

5.一种多源异构数据采集系统,其特征在于,包括:

6.根据权利要求5所述的一种多源异构数据采集系统,其特征在于,

7.根据权利要求5或6所述的一种多源异构数据采集系统,其特征在于,所述方法配置模块包括:

8.根据权利要求7所述的一种多源异构数据采集系统,其特征在于,所述数据缓存模块包括:

9.一种计算机设备,其特征在于,包括依次通信连接的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如权利要求1~4中任意一项所述的多源异构数据采集方法。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行如权利要求1~4中任意一项所述的多源异构数据采集方法。

...

【技术特征摘要】

1.一种多源异构数据采集方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种多源异构数据采集方法,其特征在于,

3.根据权利要求1或2所述的一种多源异构数据采集方法,其特征在于,多种数据缓存方法包括:基于内存的数据缓存方法、基于列示数据库的数据缓存方法和基于分布式文件的数据缓存方法。

4.根据权利要求3所述的一种多源异构数据采集方法,其特征在于,选择相应的数据缓存方法对接入的数据源进行缓存,包括以下步骤:

5.一种多源异构数据采集系统,其特征在于,包括:

6.根据权利要求5所述的一种多源异构数据采集系统,其特征在于,

...

【专利技术属性】
技术研发人员:周辉彭宏
申请(专利权)人:四川川大智胜系统集成有限公司
类型:发明
国别省市:

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

1