CN106055654B - 异构数据的整合方法以及装置 - Google Patents
异构数据的整合方法以及装置 Download PDFInfo
- Publication number
- CN106055654B CN106055654B CN201610383354.8A CN201610383354A CN106055654B CN 106055654 B CN106055654 B CN 106055654B CN 201610383354 A CN201610383354 A CN 201610383354A CN 106055654 B CN106055654 B CN 106055654B
- Authority
- CN
- China
- Prior art keywords
- source
- data
- object table
- acquisition
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
Abstract
本发明公开了一种异构数据的整合方法以及装置。其中方法包括:分别预先建立至少一个目标表与多个源表之间的二维关系;根据二维关系生成至少一个目标表的订阅规则,其中,订阅规则用于指示目标表中目标数据的来源;实时从多个源表中采集针对目标事物的源数据,并基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存;按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中。实现了源数据的一次抽取、多次写入的效果,避免同一张表的相同数据被重复抽取多次的情况,提高了数据同步效率,并提高了数据实时性。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种异构数据的整合方法以及装置。
背景技术
在数据整合过程中,需要经过数据抽取、数据转换清洗以及数据装载三个过程,即简称为ETL(数据仓库技术)。目前,在处理多表对多表,即目标表数据来源于源端多张表,源端数据表被多个目标表所依赖的情况下,通常采用先将源端数据表中的数据导入目标前置库中,之后再通过存储过程或者其他工具将该目标前置库中的源端数据写入该多个目标表中。
但是,目前存在的问题是,通过上述数据整合方法在写入不同的目标表时,需要按照目标表依赖的源表进行数据抽取、转换清洗和装载,因此存在同一张表的相同数据被重复抽取多次的问题,影响数据同步效率,从而影响数据实时效果。
发明内容
本发明的目的旨在至少在一定程度上解决上述的技术问题之一。
为此,本发明的第一个目的在于提出一种异构数据的整合方法。该方法实现了源数据的一次抽取、多次写入的效果,避免同一张表的相同数据被重复抽取多次的情况,提高了数据同步效率,并提高了数据实时性。
本发明的第二个目的在于提出一种异构数据的整合装置。
为了实现上述目的,本发明第一方面实施例的异构数据的整合方法,包括:分别预先建立至少一个目标表与多个源表之间的二维关系;根据所述二维关系生成所述至少一个目标表的订阅规则,其中,所述订阅规则用于指示目标表中目标数据的来源;实时从所述多个源表中采集针对目标事物的源数据,并基于所述至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存;按照预设策略将汇总并缓存后的源数据装载至对应的所述至少一个目标表中。
根据本发明实施例的异构数据的整合方法,可预先分别建立至少一个目标表与多个源表之间的二维关系,并根据二维关系生成至少一个目标表的订阅规则,在数据同步的过程中,可实时从多个源表中采集针对目标事物的源数据,之后,基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存,最后,按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中。即通过目标表的订阅规则,并基于该目标表的订阅规则对实时采集到的源数据进行汇总并缓存,实现了源数据的一次抽取、多次写入的效果,避免同一张表的相同数据被重复抽取多次的情况,提高了数据同步效率,并提高了数据实时性。
为了实现上述目的,本发明第二方面实施例的异构数据的整合装置,包括:建立模块,用于分别预先建立至少一个目标表与多个源表之间的二维关系;生成模块,用于根据所述二维关系生成所述至少一个目标表的订阅规则,其中,所述订阅规则用于指示目标表中目标数据的来源;采集模块,用于实时从所述多个源表中采集针对目标事物的源数据;数据汇总模块,用于基于所述至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存;装载模块,用于按照预设策略将汇总并缓存后的源数据装载至对应的所述至少一个目标表中。
根据本发明实施例的异构数据的整合装置,可通过建立模块分别预先建立至少一个目标表与多个源表之间的二维关系,生成模块根据二维关系生成至少一个目标表的订阅规则,采集模块可实时从多个源表中采集针对目标事物的源数据,数据汇总模块基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存,装载模块按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中。即通过目标表的订阅规则,并基于该目标表的订阅规则对实时采集到的源数据进行汇总并缓存,实现了源数据的一次抽取、多次写入的效果,避免同一张表的相同数据被重复抽取多次的情况,提高了数据同步效率,并提高了数据实时性。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1是根据本发明一个实施例的异构数据的整合方法的流程图;
图2(a)和(b)是根据本发明一个实施例的异构数据的整合方法的示例图;
图3是根据本发明一个实施例的异构数据的整合装置的结构框图;
图4是根据本发明一个具体实施例的异构数据的整合装置的结构框图;
图5是根据本发明另一个具体实施例的异构数据的整合装置的结构框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述根据本发明实施例的异构数据的整合方法以及装置。
图1是根据本发明一个实施例的异构数据的整合方法的流程图。如图1所示,该异构数据的整合方法可以包括:
S110,分别预先建立至少一个目标表与多个源表之间的二维关系。其中,在本发明的实施例中,“至少一个”可理解为一个或多个。
需要说明的是,在本发明的实施例中,在预先建立目标表与多个源表之间的二维关系的前提是:目标表已与源表进行过数据同步,即,确保目标表中的所有目标数据都来源于源表。
具体而言,在本发明的一个实施例中,分别确定至少一个目标表中各个目标数据所对应的数据组合来源并根据至少一个目标表中各个目标数据所对应的数据组合来源以建立至少一个目标表与多个源表之间的二维关系。可以理解,上述二维关系可理解为目标表与源表之间的关系,也就是说目标表中的目标数据都来源于哪些源表。
更具体地,可先获取目标表中的所有目标数据,并针对每个目标数据,确定每个目标数据所对应的数据组合来源,即该目标数据是由哪个或哪些源表中的数据组合而成的,之后,可根据该目标数据的数据组合来源建立该目标表与多个源表之间的二维关系,即该目标表与哪个或哪些源表之间存在对应关系可以理解,在本发明的实施例中,该源表的个数为多个。其中,在本发明的实施例中,该二维关系可包括目标表中目标数据的来源于哪些源表、以及目标表中各个字段与该源表中各个字段的转换关系。
举例而言,假设目标表1中包含数据列A1,确定该目标表1中数据列A1是由数据列A11和数据列A12组合而成,并确定该数据列A11来源源表A、数据列A12来源源表B。之后,可根据该数据列A1的数据组合来源以建立该目标表1与多个源表之间的二维关系,即目标表1与源表A、与源表B存在二维关系。
S120,根据二维关系生成至少一个目标表的订阅规则,其中,该订阅规则用于指示目标表中目标数据的来源。
具体地,针对各个目标表,在建立该目标表与多个源表之间的二维关系之后,可根据该二维关系确定该目标表中的目标数据依赖于哪个或哪些源表的哪个或哪些源数据,并根据该依赖关系来生成该目标表的订阅规则。例如,假设目标表1中包含数据列A1、A2和C1,确定数据列A1是由源数据A11和源数据A12组合而成,并确定该源数据A11来源源表A、源数据A12来源源表B,数据列C1由源表C的源数据C11组合而成的,之后,可将所依赖的属于同一个源表的源数据集合在一起,并以源表为维度,可以生成该目标表1的订阅规则为:目标表1=源表A(A11)+源表B(A12)+源表C(C11)。
S130,实时从多个源表中采集针对目标事物的源数据,并基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存。
具体而言,在本发明的实施例中,可先确定多个源表的类型信息,并根据类型信息确定多个源表对应的采集方式,之后,可根据采集方式实时从多个源表中采集针对目标事物的源数据。其中,在本发明的实施例中,该类型信息可理解为该多个源表所在数据库的类型,如Oracle数据库、MySQL、BD2等;该类型信息还可理解为多个源表中表结构,该表结构包括如字段、类型、主键、外键、索引等。其中,该目标事物即可理解为目标数据库事物。
也就是说,可确定该多个源表的类型,并针对不同类型的多个源表采用不同的采集方式,并根据不同的采集方式实时从多个源表中采集针对目标事物的源数据。
在本发明的一个实施例中,根据采集方式实时从多个源表中采集针对目标事物的源数据的具体实现过程可如下:针对目标事物,根据多个源表所对应的数据库日志判断是否存在有变更动作的源表;如果存在有变更动作的源表,则根据采集方式从有变更动作的源表中采集变更动作对应的源数据。应当理解,该数据库日志中记载了该数据库中数据表的数据变化过程。
更具体地,针对该目标事物,可先获取该目标事物所涉及到的多个源表对应的数据库日志文件,并读取该多个源表对应的数据库日志文件以判断是否存在有变更动作的源表,若存在,则根据该有变更动作的源表所对应的采集方式,从该有变更动作的源表中采集该变更动作对应的源数据。其中,在本发明的实施例中,该变更动作可包括但不限于增加记录、修改记录以及删除记录等。
在实时从多个源表中采集针对该目标事物的源数据之后,可基于目标表的订阅规则对实时采集到的源数据进行汇总并缓存。也就是说,基于目标表的订阅规则,可将实时采集到的源数据汇总到该目标表对应的缓存池中并进行缓存,即基于订阅规则,可将采集到的源数据汇总到订阅了该源数据的目标表对应的缓存池中。例如,假设采集到的源数据为A1,该源数据A1可分别对应目标表1和目标表2,也就是目标表1和目标表2中的目标数据均与源数据A1有依赖关系,当基于目标表1和目标表2的订阅规则,可将采集到的源数据A1汇总到目标表1对应的缓存池中并进行缓存,同将采集到的源数据A1汇总到目标表2对应的缓存池中并进行缓存。由此,通过对采集到的源数据进行汇总并缓存,实现了源数据的一次抽取、多次写入的效果,提升了数据实时性。
S140,按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中。
具体地,可先确定目标表中目标数据的排列顺序,之后,可按照预设策略,根据该排列顺序将该目标表所对应的汇总并缓存后的源数据装载到该目标表中。其中,在本发明的实施例中,该预设策略可包括但不限于:当目标事物所对应的所有数据全部采集完成时,将汇总并缓存后的源数据装载到对应的目标表中;确定目标表的主键信息,并根据该主键信息确定多个源表中的主源表和从源表,并每当采集到主源表中的源数据时立即将该源数据装载到目标表中,当从源表中的所有源数据全部采集完成并汇总且缓存后,将汇总并缓存后的该从源表中的所有数据装载到对应的目标表中。可以理解,上述给出的预设策略的方式仅是两种示例,并不能作为对本发明的具体限定。
为了保障数据的准确性以及时效性,进一步地,在本发明的一个实施例中,在按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中之后,该整合方法还可包括:将缓存后的源数据从缓存池中进行清除。也就是说,在将缓存池中的源数据装载到对应的目标表中之后,可将该源数据从该缓存池中进行清除。由此,在节省缓存空间的同时,还保障了数据的准确性和时效性,提高了可用性及可行性。
需要说明的是,在本发明的一个实施例中,在基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存之后,在按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中之前,该整合方法还可包括:确定至少一个目标表中目标数据的目标数据类型,并将缓存池中针对至少一个目标表所需的源数据的数据类型转换为目标数据类型。也就是说,在将采集到的源数据进行缓存后,针对目标表,可根据目标数据类型将缓存的该目标表所依赖的源数据的数据类型转换为目标数据类型。由此,保证了数据的数据类型的标准化。
需要说明的是,在本发明的一个实施例中,在基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存之后,在按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中之前,该整合方法还可包括:将缓存后的源数据进行清洗。也就是说,在将采集到的源数据进行缓存后,针对同一个目标表,可将采集到的源数据进行数据一致性的检查、无效值和缺失值的处理等。由此,保证了数据的一致性、正确性及完整性。
进一步地,在本发明的一个实施例中,在对异构数据进行整合的过程中,可对从源表中采集到的源数据进行标记,并在对采集到的源数据进行汇总并缓存、且将汇总并缓存后的源数据进行装载时也均带着该标记,使得通过对源数据进行标记,可以实现数据标记追踪的功能。
根据本发明实施例的异构数据的整合方法,可先分别建立至少一个目标表与多个源表之间的二维关系,并根据二维关系生成至少一个目标表的订阅规则,并可实时从多个源表中采集针对目标事物的源数据,之后,基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存,最后,按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中。即通过目标表的订阅规则,并基于该目标表的订阅规则对实时采集到的源数据进行汇总并缓存,实现了源数据的一次抽取、多次写入的效果,避免同一张表的相同数据被重复抽取多次的情况,提高了数据同步效率,并提高了数据实时性。
为了使得本领域技术人员能够更加清楚地了解本发明,下面可举例说明。
举例而言,假设目标数据库中的目标表1和目标表2所依赖的源表为源表A、源表B、源表C和源表D,如图2(a)所示,为源表A源表B、源表C和源表D、以及目标表1和目标表2中数据的对应关系。例如,如图2(b)所示,在进行数据整合的过程中,以目标表1为例,可预先获取目标表1中的每个数据列为A1、A2、C1、B2和B3,并确定这些目标数据所依赖的源表依次为源表A、源表C和源表B,之后,可根据该依赖关系来建立目标表1与源表A、B和C之间的二维关系,并以源表为维度,根据这些二维关系建立该目标表1的订阅规则为:目标表1=源表A(A1,A2)+源表B(B2,B3)+源表C(C1),以表示该目标表1中的目标数据来源于哪些源表。在数据实时同步的过程中,当检测到源表A、B和C中有数据变更动作时,进行采集操作,即:可从源表A、源表B和源表C中采集具有变更动作的源数据,即源数据A1、源数据A2、源数据C1、源数据B2和源数据B3,之后,可基于上述目标表1的订阅规则对该采集到的源数据进行汇总并缓存,如针对目标表1,识别并缓存到的源数据为A1、A2、B2、B3和C1,可以理解,源数据的缓存顺序可与采集并识别到的顺序有关,此时可对缓存到的源数据进行数据转换、清洗处理。之后,可根据目标表1中目标数据的排列顺序将缓存后的源数据A1、源数据A2、源数据C1、源数据B2和源数据B3装载到目标表1中。
为了实现上述实施例,本发明还提出了一种异构数据的整合装置。
图3是根据本发明一个实施例的异构数据的整合装置的结构框图。如图3所示,该异构数据的整合装置可以包括:建立模块100、生成模块200、采集模块300、数据汇总模块400和装载模块500。
具体地,建立模块100可用于分别预先建立至少一个目标表与多个源表之间的二维关系。其中,在本发明的实施例中,“至少一个”可理解为一个或多个。需要说明的是,在本发明的实施例中,建立模块100在预先建立目标表与多个源表之间的二维关系的前提是:目标表已与源表进行过数据同步,即,确保目标表中的所有目标数据都来源于源表。
具体而言,在本发明的实施例中,建立模块100可先分别确定至少一个目标表中各个目标数据所对应的数据组合来源,之后,根据至少一个目标表中各个目标数据所对应的数据组合来源以建立至少一个目标表与多个源表之间的二维关系。可以理解,上述二维关系可理解为目标表与源表之间的关系,也就是说目标表中的目标数据都来源于哪些源表。
更具体地,建立模块100可先获取目标表中的所有目标数据,并针对每个目标数据,确定每个目标数据所对应的数据组合来源,即该目标数据是由哪个或哪些源表中的数据组合而成的,之后,可根据该目标数据的数据组合来源建立该目标表与多个源表之间的二维关系,即该目标表与哪个或哪些源表之间存在对应关系。其中,在本发明的实施例中,该二维关系可包括目标表中目标数据的来源于哪些源表、以及目标表中各个字段与该源表中各个字段的转换关系。可以理解,在本发明的实施例中,该源表的个数为多个。
举例而言,假设目标表1中包含数据列A1,建立模块100可先确定该目标表1中数据列A1是由数据列A11和数据列A12组合而成,并确定该数据列A11来源源表A、数据列A12来源源表B。之后,可根据该数据列A1的数据组合来源以建立该目标表1与多个源表之间的二维关系,即目标表1与源表A、与源表B存在二维关系。
生成模块200可用于根据二维关系生成至少一个目标表的订阅规则,其中,订阅规则用于指示目标表中目标数据的来源。更具体地,针对各个目标表,在建立模块100建立该目标表与多个源表之间的二维关系之后,生成模块200可根据该二维关系确定该目标表中的目标数据依赖于哪个或哪些源表的哪个或哪些源数据,并根据该依赖关系来生成该目标表的订阅规则。例如,假设目标表1中包含数据列A1、A2和C1,生成模块200可先确定数据列A1是由源数据A11和源数据A12组合而成,并确定该源数据A11来源源表A、源数据A12来源源表B,数据列C1由源表C的源数据C11组合而成的,之后,可将所依赖的属于同一个源表的源数据集合在一起,并以源表为维度,可以生成该目标表1的订阅规则为:目标表1=源表A(A11)+源表B(A12)+源表C(C11)。
采集模块300可用于实时从多个源表中采集针对目标事物的源数据。
具体而言,在本发明的一个实施例中,如图4所示,该采集模块300可包括:确定单元310和采集单元320。其中,确定单元310可用于确定多个源表的类型信息,并根据类型信息确定多个源表对应的采集方式。采集单元320可用于根据采集方式实时从多个源表中采集针对目标事物的源数据。其中,在本发明的实施例中,该类型信息可理解为该多个源表所在数据库的类型,如Oracle数据库、MySQL、BD2等;该类型信息还可理解为多个源表中表结构,该表结构包括如字段、类型、主键、外键、索引等。其中,该目标事物即可理解为目标数据库事物。
也就是说,确定单元310可确定该多个源表的类型,并针对不同类型的多个源表采用不同的采集方式。采集单元320根据不同的采集方式实时从多个源表中采集针对目标事物的源数据。
在本发明的实施例中,采集单元320根据采集方式实时从多个源表中采集针对目标事物的源数据的具体实现过程可如下:针对目标事物,根据多个源表所对应的数据库日志判断是否存在有变更动作的源表;在存储有变更动作的源表时,根据采集方式从有变更动作的源表中采集变更动作对应的源数据。应当理解,该数据库日志中记载了该数据库中数据表的数据变化过程。
更具体地,采集单元320针对该目标事物,可先获取该目标事物所涉及到的多个源表对应的数据库日志文件,并读取该多个源表对应的数据库日志文件以判断是否存在有变更动作的源表,若存在,则根据该有变更动作的源表所对应的采集方式,从该有变更动作的源表中采集该变更动作对应的源数据。其中,在本发明的实施例中,该变更动作可包括但不限于增加记录、修改记录以及删除记录等。
数据汇总模块400可用于基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存。也就是说,数据汇总模块400基于目标表的订阅规则,可将实时采集到的源数据汇总到该目标表对应的缓存池中并进行缓存。例如,假设采集到的源数据为A1,该源数据A1可分别对应目标表1和目标表2,也就是目标表1和目标表2中的目标数据均与源数据A1有依赖关系,当基于目标表1和目标表2的订阅规则,可将采集到的源数据A1汇总到目标表1对应的缓存池中并进行缓存,同将采集到的源数据A1汇总到目标表2对应的缓存池中并进行缓存。由此,通过对采集到的源数据进行汇总并缓存,实现了源数据的一次抽取、多次写入的效果,提升了数据实时性。
装载模块500可用于按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中。更具体地,装载模块500可先确定目标表中目标数据的排列顺序,之后,可按照预设策略,根据该排列顺序将该目标表所对应的汇总并缓存后的源数据装载到该目标表中。其中,在本发明的实施例中,该预设策略可包括但不限于:当目标事物所对应的所有数据全部采集完成时,将汇总并缓存后的源数据装载到对应的目标表中;确定目标表的主键信息,并根据该主键信息确定多个源表中的主源表和从源表,并每当采集到主源表中的源数据时立即将该源数据装载到目标表中,当从源表中的所有源数据全部采集完成并汇总且缓存后,将汇总并缓存后的该从源表中的所有数据装载到对应的目标表中。可以理解,上述给出的预设策略的方式仅是两种示例,并不能作为对本发明的具体限定。
为了保障数据的准确性以及时效性,进一步地,在本发明的一个实施例中,如图5所示,该整合装置还可包括:清除模块600,清除模块600可用于装载模块500按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中之后,将缓存后的源数据从缓存池中进行清除。也就是说,在装载模块500将缓存池中的源数据装载到对应的目标表中之后,清除模块600可将该源数据从该缓存池中进行清除。由此,在节省缓存空间的同时,还保障了数据的准确性和时效性,提高了可用性及可行性。
根据本发明实施例的异构数据的整合装置,可通过建立模块分别预先建立至少一个目标表中所有目标数据之间的二维关系,生成模块根据二维关系生成至少一个目标表的订阅规则,采集模块可实时从多个源表中采集针对目标事物的源数据,数据汇总模块基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存,装载模块按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中。即通过目标表的订阅规则,并基于该目标表的订阅规则对实时采集到的源数据进行汇总并缓存,实现了源数据的一次抽取、多次写入的效果,避免同一张表的相同数据被重复抽取多次的情况,提高了数据同步效率,并提高了数据实时性。
在本发明的描述中,需要理解的是,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种异构数据的整合方法,其特征在于,包括以下步骤:
分别预先建立至少一个目标表与多个源表之间的二维关系;
根据所述二维关系生成所述至少一个目标表的订阅规则,其中,所述订阅规则用于指示目标表中目标数据的来源;
实时从所述多个源表中采集针对目标事物的源数据,并基于所述至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存;
按照预设策略将汇总并缓存后的源数据装载至对应的所述至少一个目标表中。
2.如权利要求1所述的异构数据的整合方法,其特征在于,所述分别预先建立至少一个目标表与多个源表之间的二维关系,包括:
分别确定所述至少一个目标表中各个目标数据所对应的数据组合来源;
根据所述至少一个目标表中各个目标数据所对应的数据组合来源以建立所述至少一个目标表与所述多个源表之间的二维关系。
3.如权利要求1所述的异构数据的整合方法,其特征在于,所述实时从所述多个源表中采集针对目标事物的源数据,包括:
确定所述多个源表的类型信息,并根据所述类型信息确定所述多个源表对应的采集方式;
根据所述采集方式实时从所述多个源表中采集针对所述目标事物的源数据。
4.如权利要求3所述的异构数据的整合方法,其特征在于,所述根据所述采集方式实时从所述多个源表中采集针对所述目标事物的源数据,包括:
针对所述目标事物,根据所述多个源表所对应的数据库日志判断是否存在有变更动作的源表;
如果存在有变更动作的源表,则根据所述采集方式从所述有变更动作的源表中采集所述变更动作对应的源数据。
5.如权利要求1至4中任一项所述的异构数据的整合方法,其特征在于,在所述按照预设策略将汇总并缓存后的源数据装载至对应的所述至少一个目标表中之后,所述方法还包括:
将缓存后的源数据从缓存池中进行清除。
6.一种异构数据的整合装置,其特征在于,包括:
建立模块,用于分别预先建立至少一个目标表与多个源表之间的二维关系;
生成模块,用于根据所述二维关系生成所述至少一个目标表的订阅规则,其中,所述订阅规则用于指示目标表中目标数据的来源;
采集模块,用于实时从所述多个源表中采集针对目标事物的源数据;
数据汇总模块,用于基于所述至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存;
装载模块,用于按照预设策略将汇总并缓存后的源数据装载至对应的所述至少一个目标表中。
7.如权利要求6所述的异构数据的整合装置,其特征在于,所述建立模块具体用于:
分别确定所述至少一个目标表中各个目标数据所对应的数据组合来源;
根据所述至少一个目标表中各个目标数据所对应的数据组合来源以建立所述至少一个目标表与所述多个源表之间的二维关系。
8.如权利要求6所述的异构数据的整合装置,其特征在于,所述采集模块包括:
确定单元,用于确定所述多个源表的类型信息,并根据所述类型信息确定所述多个源表对应的采集方式;
采集单元,用于根据所述采集方式实时从所述多个源表中采集针对所述目标事物的源数据。
9.如权利要求8所述的异构数据的整合装置,其特征在于,所述采集单元具体用于:
针对所述目标事物,根据所述多个源表所对应的数据库日志判断是否存在有变更动作的源表;
在存储有变更动作的源表时,根据所述采集方式从所述有变更动作的源表中采集所述变更动作对应的源数据。
10.如权利要求6至9中任一项所述的异构数据的整合装置,其特征在于,还包括:
清除模块,用于在所述装载模块按照预设策略将汇总并缓存后的源数据装载至对应的所述至少一个目标表中之后,将缓存后的源数据从缓存池中进行清除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610383354.8A CN106055654B (zh) | 2016-06-01 | 2016-06-01 | 异构数据的整合方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610383354.8A CN106055654B (zh) | 2016-06-01 | 2016-06-01 | 异构数据的整合方法以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106055654A CN106055654A (zh) | 2016-10-26 |
CN106055654B true CN106055654B (zh) | 2019-06-25 |
Family
ID=57172642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610383354.8A Active CN106055654B (zh) | 2016-06-01 | 2016-06-01 | 异构数据的整合方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106055654B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108573006B (zh) * | 2017-06-06 | 2021-03-26 | 北京金山云网络技术有限公司 | 跨机房数据同步系统、方法及装置、电子设备 |
CN107423404B (zh) * | 2017-07-27 | 2020-06-26 | 东软集团股份有限公司 | 流程实例数据同步处理方法和装置 |
CN108108436B (zh) * | 2017-12-20 | 2020-07-31 | 东软集团股份有限公司 | 数据存储方法、装置、存储介质及电子设备 |
CN109634970B (zh) * | 2018-10-19 | 2024-05-03 | 平安科技(深圳)有限公司 | 表数据同步方法、设备、存储介质及装置 |
CN109597846B (zh) * | 2018-10-22 | 2024-05-07 | 平安科技(深圳)有限公司 | 大数据平台数据仓库数据处理方法、装置和计算机设备 |
CN111198910B (zh) * | 2018-11-16 | 2023-09-26 | 杭州海康威视数字技术股份有限公司 | 数据融合方法及装置 |
CN110196923B (zh) * | 2019-05-07 | 2021-07-30 | 中国科学院声学研究所 | 一种面向水下探测的多源异构数据预处理方法及系统 |
CN110908999A (zh) * | 2019-11-18 | 2020-03-24 | 北京明略软件系统有限公司 | 数据采集方式的确定方法及装置、存储介质、电子装置 |
CN113377848A (zh) * | 2020-02-25 | 2021-09-10 | 北京数聚鑫云信息技术有限公司 | 一种数据处理方法、装置、设备及存储介质 |
CN112182091B (zh) * | 2020-12-03 | 2021-04-27 | 光大科技有限公司 | 多源数据整合方法、系统、存储介质和电子装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004744A (zh) * | 2009-09-02 | 2011-04-06 | 中国银联股份有限公司 | 从一个源表到至少一个目标库的表的数据抽取系统及方法 |
CN102945236A (zh) * | 2011-11-29 | 2013-02-27 | Ut斯达康通讯有限公司 | 一种通过事件触发同步不同数据库的方法 |
CN103500185A (zh) * | 2013-09-13 | 2014-01-08 | 北京奇虎科技有限公司 | 一种基于多平台数据生成数据表的方法和系统 |
CN105224663A (zh) * | 2015-09-30 | 2016-01-06 | 广州精点计算机科技有限公司 | 一种基于多个数据源的数据访问任务管理方法及装置 |
US9251179B2 (en) * | 2012-04-12 | 2016-02-02 | International Business Machines Corporation | Managing record location lookup caching in a relational database |
-
2016
- 2016-06-01 CN CN201610383354.8A patent/CN106055654B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004744A (zh) * | 2009-09-02 | 2011-04-06 | 中国银联股份有限公司 | 从一个源表到至少一个目标库的表的数据抽取系统及方法 |
CN102945236A (zh) * | 2011-11-29 | 2013-02-27 | Ut斯达康通讯有限公司 | 一种通过事件触发同步不同数据库的方法 |
US9251179B2 (en) * | 2012-04-12 | 2016-02-02 | International Business Machines Corporation | Managing record location lookup caching in a relational database |
CN103500185A (zh) * | 2013-09-13 | 2014-01-08 | 北京奇虎科技有限公司 | 一种基于多平台数据生成数据表的方法和系统 |
CN105224663A (zh) * | 2015-09-30 | 2016-01-06 | 广州精点计算机科技有限公司 | 一种基于多个数据源的数据访问任务管理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106055654A (zh) | 2016-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106055654B (zh) | 异构数据的整合方法以及装置 | |
CN107357846B (zh) | 关系图谱的展示方法以及装置 | |
CN106126558A (zh) | 一种舆情监控方法及装置 | |
CN109800976A (zh) | 项目投资决策方法、装置、计算机设备和存储介质 | |
CN110659973B (zh) | 资金追踪方法、装置及设备 | |
CN109726209A (zh) | 日志聚合方法及装置 | |
CN109949347A (zh) | 人体跟踪方法、装置、系统、电子设备和存储介质 | |
CN110019244A (zh) | 数据处理方法、装置和计算机可读存储介质 | |
CN106534784A (zh) | 一种用于视频分析数据结果集的采集分析存储统计系统 | |
CN109847365A (zh) | 一种面向区块链应用的防作弊方法及系统 | |
CN109800278A (zh) | 数据资产图谱使用方法、装置、计算机设备和存储介质 | |
CN109740129A (zh) | 基于区块链的报表生成方法、装置、设备及可读存储介质 | |
CN105117489B (zh) | 一种数据库管理方法、装置及电子设备 | |
CN110008246A (zh) | 元数据管理方法及装置 | |
CN106407226B (zh) | 一种数据处理方法、备份服务器及存储系统 | |
CN112818849A (zh) | 基于对抗学习的上下文注意力卷积神经网络的人群密度检测算法 | |
CN107423090A (zh) | 一种Flash播放器异常日志管理方法及系统 | |
CN109934949A (zh) | 考勤方法及装置、设备、存储介质 | |
CN109710628A (zh) | 信息处理方法及装置、系统、计算机及可读存储介质 | |
CN109710773A (zh) | 事件主体的生成方法及其装置 | |
CN102880643A (zh) | 一种动态信息的筛选显示方法和装置 | |
CN107291746A (zh) | 一种存储和读取数据的方法及设备 | |
CN109597766A (zh) | 一种测试报告的处理方法和系统 | |
CN109189343A (zh) | 一种元数据落盘方法、装置、设备及计算机可读存储介质 | |
CN107943958A (zh) | 一种个税主数据共享方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |