CN102081661A - 基于xml的异构关系型数据库的数据集成方法和*** - Google Patents
基于xml的异构关系型数据库的数据集成方法和*** Download PDFInfo
- Publication number
- CN102081661A CN102081661A CN 201110021096 CN201110021096A CN102081661A CN 102081661 A CN102081661 A CN 102081661A CN 201110021096 CN201110021096 CN 201110021096 CN 201110021096 A CN201110021096 A CN 201110021096A CN 102081661 A CN102081661 A CN 102081661A
- Authority
- CN
- China
- Prior art keywords
- data
- query
- integration
- integrated
- result
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于XML的异构关系型数据库的数据集成方法和***,旨在解决大量数据信息不能被高效地利用的问题。该方法包括如下步骤:获取数据集成需求和集成前期准备;若集成应用涉及了新数据库产品,则执行向***中添加新支持的数据库产品;添加与集成有关的数据源;生成查询请求配置文档;在***的持久化参数设置界面上录入持久化参数;在***的执行集成计划界面上,选取集成计划文档,执行该集成计划,等待软件***处理,如此反复执行步骤4到步骤6,直到完成所有的集成任务。基于XML的异构关系型数据库的数据集成***是由集成任务管理器、数据源管理器、查询分解优化器、数据提取器、结果整合器和结果持久器所构成的功能模块构架。
Description
技术领域
本发明涉及一种信息技术领域的数据集成方法,更确切地说,本发明涉及一种基于XML的异构关系型数据库的数据集成方法,也可以说,本发明涉及一种实施基于XML的异构关系型数据库的数据集成***。
背景技术
近年来,众多企业伴随着业务的发展积累了大量的数据。然而,由于企业内部以及企业之间数据库***的分布性、异构性和独立性,导致“信息孤岛”的形成,使得大量数据不能被正确高效地利用。因此,解决这一现实问题,对企业的运营和发展具有重要意义。
目前特定行业如银行、电信等已经拥有成熟的数据交换和数据集成的方法和工具。中小型企业也有数据集成的需求,但却没有统一的行业标准,数据流通格式杂乱,数据集成困难,需要一种扩展性强、通用性好的技术方案来解决该实际问题。
传统的解决方案有两种:
1.搭建中心数据仓库,将集成的数据全部汇集到其中。这种方法,需要大量的数据存储和维护性的软硬件设备,费用昂贵,不易维护,且不能与源数据库保持同步,数据利用率不高。
2.联邦数据库,将***中所有数据库之间建立彼此访问的接口。这种方法的维护和扩展会涉及到整个***,工作量大,成本很高。
发明内容
本发明所要解决的问题是克服了现有技术存在的技术问题,提供了一种适合于中小型企业的、廉价高效的、扩展性和可移植性强的、跨操作***和数据库平台的基于XML的异构关系型数据库的数据集成方法,也可以说,本发明提供了一种基于XML的异构关系型数据库的数据集成***。
为解决上述技术问题,本发明是采用如下技术方案实现的:所述的基于XML的异构关系型数据库的数据集成方法包括如下步骤:
1.获取数据集成需求和集成前期准备。
2.若集成应用涉及了新数据库产品,则执行添加新支持的数据库产品。
3.在全局查询请求配置界面的数据源的视区上,添加拟集成的数据源和拟导入数据的目的数据源。
4.在全局查询请求配置界面上,录入方案的信息,选择查询请求文档的保存位置,生成查询请求配置文档。
5.在持久化参数设置界面上,录入持久化参数,选择集成计划文档的保存路径,生成集成计划文档,若目的数据表不存在,在持久化参数设置界面上录入新建表的信息,创建一个新的数据表,然后再录入持久化参数.
6.在执行集成计划界面上,选取一个集成计划文档,执行该集成计划,等待软件***处理,执行集成计划界面上会显示集成计划执行的状态和异常情况,执行完毕后,结果报告界面会显示集成结果数据统计报表,特殊处理异常表中的数据,如此反复执行第4至6步骤,直到完成所有的集成任务。
技术方案中所述的获取数据集成需求和集成前期准备的步骤如下:
1.获取数据集成需求,确定集成的范围,制定数据集成计划,书写需求规格。
2.确定集成数据源所在的数据库环境,获取数据源的信息,包括:数据库的产品类型、版本、数据库名称、数据库IP地址、数据库服务端口、及其具有通过JDBC操纵数据库权限的登陆用户名和口令。
3.确定集成涉及的数据表,获取数据表信息,包括:表模式,表名称,字段列表和对应数据类型的列表。
4.分析需求,将集成任务分解成若干相互独立的子任务,确定每个子任务的集成逻辑,将集成逻辑形式化为查询方案,查询方案可以用结构化查询语言来表示,应当注意的是:查询语句中的每一个表和属性列都要有一个其所属数据库的标识作为前缀。
5.完成对集成目的数据库的设计。
6.获取结果持久化参数:
1)目的数据源信息。
2)目的数据表信息。
3)查询结果属性和目的表属性的映射关系。
4)指定一个数据导入异常表,记录下该数据表的信息。
7.对已获得的各项参数进行验证和确认,完成对已得到的查询方案和目的数据库设计方案的评审和确认。
技术方案中所述的若集成应用涉及了新数据库产品,则执行添加新支持的数据库产品的步骤如下:
1.获取新增数据库产品中包括数据类型的名称和特性的所有数据类型的信息。
2.根据数据类型的特性,指定其映射为一种通用数据类型。
3.将获取到的与通用数据类型映射信息和特性信息添加到数据类型字典中。
一种基于XML的异构关系型数据库的数据集成方法的数据集成***,其包 括:
一个收集用户提交的全局查询请求和持久化参数,对全局查询请求和持久化参数进行合法性检查,分发集成任务,监控集成过程,报告集成结果的集成任务管理器。
一个实现了数据源动态管理,完成关系表的映射处理,为用户提供数据源全局视图的数据源管理器。
一个将查询请求根据数据的映射关系分解为若干子查询请求和全局查询元数据,并对子查询请求进行优化,生成子查询计划的查询分解优化器。
一个将接收到的子查询计划分配给数据提取引擎,对底层数据源发布SQL查询提取数据,并将查询结果集转换为中间结果XML数据的数据提取器。
一个接收中间结果XML数据和全局查询元数据,利用关系代数引擎,对中间结果进行整合,生成最终的全局查询结果的查询结果整合器。
一个将整合后的结果数据导入到已有数据库中的结果持久器。
与现有技术相比本发明的有益效果是:
1.本发明所述的基于XML的异构关系型数据库的数据集成方法在数据集成的过程中,可以保证不对数据源做任何改变,因此集成的风险和代价小。
2.本发明所述的基于XML的异构关系型数据库的数据集成方法使用了动态的数据源管理,查询所得数据即为最新数据,保证了数据的一致性。
3.本发明所述的基于XML的异构关系型数据库的数据集成方法无需搭建中心数据仓库,省去了数据库软件产品以及海量存储设备的费用,降低了集成项目的风险。
4.本发明所述的基于XML的异构关系型数据库的数据集成方法由具有跨平台性的Java程序语言编写,***具有平***立性,容易移植。
5.本发明所述的基于XML的异构关系型数据库的数据集成方法需要支持新的数据库产品或者数据源时,只需要在数据源字典或者数据类型字典中注册相应的项目即可,这使得***具有良好的扩展性,容易维护,成本较低。
6.本发明所述的基于XML的异构关系型数据库的数据集成方法由集成的需求决定需要提取的数据,在数据提取前进行了查询优化,数据利用率很高。
附图说明
下面结合附图对本发明作进一步的说明:
图1为本发明所述的基于XML的异构关系型数据库的数据集成方法的步骤流程图;
图2为本发明所述的基于XML的异构关系型数据库的数据集成***的功能模块构架框图;
图3为本发明所述的基于XML的异构关系型数据库的数据集成***的数据 源管理器的功能模块构架框图;
图4~图6为利用本发明所述的基于XML的异构关系型数据库的数据集成***查询请求的一种表示方法;
图7为利用本发明所述的基于XML的异构关系型数据库的数据集成***的一种全局查询配置的用户可视化界面;
图8为利用本发明所述的基于XML的异构关系型数据库的数据集成***一种中间结果XML数据表示方法。
具体实施方式
下面结合附图对本发明作详细的描述:
本发明提供了一种适合于中小型企业的、廉价高效的、扩展性和可移植性强的、跨操作***和数据库平台的基于XML的异构关系型数据库的数据集成方法。
该方法是基于自编的一个基于XML的异构关系型数据库的数据集成的计算机程序,该计算机程序是运行在网络环境中,基于自主定义的Java和XML数据类型***的、具有动态数据源管理、集成任务配置和优化,数据提取和整合,结果持久化功能的跨平台的数据集成的软件***。该方法同时给出了软件***新增数据库产品的解决方法,以及具体数据集成应用的处理步骤。
I.基于XML的异构关系型数据库的数据集成方法
按照计算机程序方法流程的步骤,基于XML的异构关系型数据库的数据集成方法的步骤如下:
1.获取数据集成需求和集成前期准备
1)获取数据集成需求,确定集成的范围,制定数据集成计划,书写需求规格。
2)确定集成数据源所在的数据库环境。获取数据源的信息,包括:数据库的产品类型,版本,数据库名称,数据库IP地址,数据库服务端口,及其具有通过JDBC操纵数据库权限的登陆用户名和口令。
3)确定集成涉及的数据表,获取数据表信息,包括:表模式,表名称,字段列表和对应数据类型的列表。
4)分析需求,将集成任务分解成若干相互独立的子任务,确定每个子任务的集成逻辑,将集成逻辑形式化为查询方案。查询方案可以用结构化查询语言来表示。应当注意的是:查询语句中的每一个表和属性列都要有一个其所属数据库的标识作为前缀。
5)完成对集成目的数据库的设计。
6)获取结果持久化参数:
(1)目的数据源信息。
(2)目的数据表信息。
(3)查询结果属性和目的表的属性的映射关系。
(4)指定一个数据导入异常表,记录下该数据表的信息。
7)对已获得的各项参数进行验证和确认。完成对已得到的查询方案和目的数据库设计方案的评审和确认。
2.若集成应用涉及了新数据库产品,则执行向软件***中添加新支持的数据库产品。
3.与集成软件***的全局查询请求配置界面的数据源的视区上,添加与集成有关的数据源,包括拟集成的数据源和拟导入数据的目的数据源。
4.选取一个查询方案,在全局查询请求配置的界面上,录入该方案的信息,选择查询请求文档的保存位置,生成一个查询请求配置文档。
5.在***的持久化参数设置界面上,录入持久化参数,选择集成计划文档的保存路径,生成一个集成计划文档。若目的数据表不存在,可以在界面上录入新建表的信息,创建一个新的数据表,然后再录入持久化参数。
6.在***的执行集成计划界面上,选取一个集成计划文档,执行该集成计划,等待软件***处理,界面上会显示集成计划执行的状态和异常情况。执行完毕后,结果报告界面会显示集成结果数据统计报表,特殊处理异常表中的数据。如此反复执行步骤4到步骤6,直到完成所有的集成任务。
II.基于XML的异构关系型数据库的数据集成方法向软件***中添加新支持的数据库产品的步骤如下:
1.获取新增数据库产品中所有数据类型的信息,包括数据类型的名称和特性。
2.根据数据类型的特性,指定其映射为一种通用数据类型。
3.将获取到的与通用数据类型映射信息和特性信息添加到集成软件***的数据类型字典中。
III.基于XML的异构关系型数据库的数据集成***
参阅图2,对于同一计算机程序按照装置进行阐述,基于XML的异构关系型数据库的数据集成***是由集成任务管理器、数据源管理器、查询分解优化器、数据提取器、结果整合器和结果持久器所构成的功能模块构架。
1.集成任务管理器
收集用户提交的全局查询请求和持久化参数,对全局查询请求和持久化参数进行合法性检查,分发集成任务,监控集成过程,报告集成结果。集成任务管理器的实现过程为:
1)确定查询请求的表示形式,这种表示须有如下特点:
(1)能准确无二义性地表达出每个涉及集成的数据表;
(2)能清楚表达出结构化查询语言的语义。图4~图6给出了一种表示方法的实施例。
2)创建用户可视化界面,包含四个部分:全局查询请求配置、持久化参数设置、执行集成计划和结果报告。
全局查询请求的用户界面须有如下特点:
(1)展现出数据源表模式的统一视图;
(2)能表达出结构化查询语言的语义;
(3)提供供用户参考和选择的必要信息,方便用户操作。
参阅图7,图中给出了一种全局查询请求配置界面的解决方案,左面为数据源视区,显示可用数据源,可在该视区上添加,除去和刷新数据源。右边为查询配置视区,划分为六个分区,每个分区对应一个结构化查询的子句。可以在每个分区中添加若干项目,项目中包含可供用户选择的数据表和列信息、运算符号以及供用户输入的域。最下面是结果视区,可以创建查询请求和配置查询请求的保存位置。
持久化参数设置界面能收集查询结果持久化的参数,包括:目的数据源信息、目的数据表信息、查询结果属性和目的表属性的映射关系、数据导入异常表信息。收集持久化参数前需要选择一个查询请求,持久化参数的表属性应与查询结果的属性在个数和类型上对应一致。在该界面上可以配置集成计划的保存位置。另外,可通过该界面在数据源中新建数据表。
执行集成计划界面,体现如下功能:集成方案选择,集成计划执行状态反馈,错误和异常提示。
结果报告界面显示了集成计划执行的情况信息,显示集成结果数据统计报表。
3)构建与数据源管理器、查询分解优化器、数据提取器、结果整合器和结果持久器的通讯接口。确定消息和数据传递的语义以及错误和异常的处理方式。
4)实现业务处理流程:
(1)全局查询请求配置界面与用户交互,与数据源管理器通信,可完成数据源的添加,除去,刷新功能。
(2)全局查询请求配置界面与用户交互,与数据源管理器通信,获取全局查询信息,生成全局查询请求配置文档,对其进行词法,语法的验证检查,若发现错误,反馈用户更正。
(3)持久化参数设置界面与用户交互,与数据源管理器通信,获取查询请求配置文档和持久化参数,生成集成计划文档。若目的数据表尚不存在,可以使用建表器新建数据表之后再指定持久化参数。建表器的处理流程:读取用户建表参数;将其转换为DDL代码;与数据源管理器数据交互,获取数据源信息; 建立数据库连接,执行建表代码;捕捉异常信息,报告建表结果。
(4)用户与执行集成计划界面交互,获取集成计划文档。集成命令发出后,获取全局查询请求,并传递给查询分解优化器。建立与查询分解优化器,数据提取器,结果整合器的通信连接,监控执行状态,收集异常消息和统计信息,写入日志,向用户报告执行情况。读取持久化参数,将持久化参数和整合的结果数据传递给数据持久器,并监控持久化状态,收集异常和统计信息,写入日志,向用户报告持久化情况。
(5)持久化完成后,收集集成过程统计信息,生成和显示集成结果数据统计报表。
2.数据源管理器
参阅图3,提供了动态的数据源管理,完成关系表的映射处理,为用户提供数据源全局视图。图中表示了数据源管理器的内部构造:
1)建立数据源字典,它保存了数据集成涉及的数据源及其数据表的信息。其中数据源的信息包括:数据库的产品类型,版本,数据库名称,数据库IP地址,数据库服务端口,及其具有通过JDBC操纵数据库权限的登录用户名和口令。数据表信息包括:表模式,表名称,字段和对应数据类型的列表。数据源管理器在***运行过程中维护这个数据源字典。数据源的添加、除去和刷新操作对应着数据源字典的信息更新。
2)创建四种通用数据类型,CHAR、NUMBER、DATE和BOOLEAN,每种数据类型具有该种数据类型的元信息,它包括:通用数据类型的特性,与其他通用数据类型的兼容性,和兼容转换的条件。
3)创建数据类型字典,它保存了数据库数据类型与通用数据类型的映射信息。当***添加新的数据源产品的时候,需要在数据类型字典中添加相应的映射项目。
4)构建数据源的全局视图,它表现了在数据源字典中注册的数据源,数据表,属性列的信息,还包括每个属性列的数据类型对应的通用数据类型。凡是在数据源字典中注册的数据源,数据表,属性列在全局视图中都是可见的。
5)构建元信息提取引擎,该引擎包含数据访问的公共接口和元信息的通用提取方法。元信息提取引擎接受用户的操作指令,数据源信息和表名信息,建立JDBC连接,验证数据源的可用性,并从数据源中读取属性列和对应数据类型的信息,将信息数据同步到数据源字典中。
3.查询分解优化器
查询分解优化器的作用是将查询请求根据数据的映射关系分解为若干子查询请求和全局查询元数据,并对子查询请求进行优化,生成子查询计划。查询分解优化器的工作过程如下:
1)接收查询请求,生成关系代数表达式树。From子句中的表,作为关系代数表达式树的叶子结点。利用Where子句的连接条件对上述叶子结点进行归并,其中Where子句中同一数据库的表的连接条件优先归并,生成二叉树森林,然后用不同数据库表的连接条件归并上述的二叉树森林,生成一棵二叉树。当连接条件不足生成一棵二叉树时,用笛卡尔积归并剩余的二叉树森林。投影、聚集和普通的选择条件全部放置在树根,等待优化。
2)按照选择下推,投影下推,聚集下推的原则化简关系代数表达式树。
3)生成查询计划和查询元数据。经过各种下推优化之后,遍历关系代数表达式树中的结点,找到这种条件的结点:以该结点为根结点的子树中的关系代数只涉及同一数据库,而它的父结点不具备这种性质。将以这些节点为根的子树表达的关系代数,转换为SQL查询计划。Where子句中,涉及多数据库表连接的条件,会生成全局查询元数据。
4)将所得到的若干子查询计划,发送到数据提取器。
5)将所得到的全局查询元数据,发送到结果整合器。
6)将工作进度,异常或错误发送到集成任务管理器。
4.数据提取器
数据提取器的主要作用为:接收子查询计划,并将它们分配到数据提取引擎,每个数据提取引擎将执行一个子查询计划,对底层数据源发布SQL查询提取数据,并将查询结果集转换为中间结果XML数据。数据提取器实现过程如下:
1)确定中间结果XML数据表示形式,它有如下特点:
(1)表达出数据表结构信息;
(2)表达出表数据记录信息;
(3)表达出数据表的规模信息;
(4)结构清晰简单,无二义性,冗余数据少,容易解析和生成。可以将中间结果XML数据定义成表结构和表数据两个XML文档,XML表数据文档的每一属性列都唯一参照一个XML表结构文档。
参阅图8,图中给出了一种实现方案:表数据文档记录了该数据文档的数据规模、每条记录的每一个属性列的信息。其中每个属性列信息包括参照的表结构文档名称、列编号和数据。表结构文档记录了该表结构文档的名称、数据源的信息、每个属性列的编号、名称、数据类型和其映射成为的通用数据类型及其类型属性。
2)虚拟化文件存储,建立超大文件管理机制。可以重写Java语言的File类,使文件类在逻辑上是一个文件,而物理上是一个文件组。文件组中的文件小于文件***的上限的大小,防止文件溢出。
3)建立内存缓冲机制,采用基于流的输出方法生成XML文档。
4)构建数据提取引擎,该引擎包含数据访问的公共接口和数据的通用提取方法。
5)实现数据提取流程:
(1)接收子查询计划。
(2)与数据源管理器数据通信获得子查询的元信息。
(3)建立JDBC连接,获取子查询的结果集,将结果集数据转换为中间结果XML数据。
(4)将中间结果XML数据传递给结果整合器。
5.结果整合器
结果整合器接收中间结果XML数据和全局查询元数据,利用关系代数引擎,对中间结果进行整合,生成最终的全局查询结果。结果整合器实现过程如下:
1)构建排序引擎
输入为一个XML表数据文档,拟排序的XML表结构和关键字属性列的编号,属性列的通用数据类型,升降序参数。输出为有序的中间结果XML数据,实现过程如下:
(1)在内存中建立数据记录的数据结构。
(2)根据***的配置,定义内排序容纳上限。
(3)建立内存缓冲机制,选用STAX工具解析XML文档。采用基于流的输出方法生成XML文档。
(4)批量地读入数据,进行归并内排序,输出到外存文件。
(5)做归并外排序,得到排序结果。
2)构建自然连接引擎
输入为两个XML表数据文档,要做连接属性列编号,已排序标记。输出为表连接后的中间结果XML数据。实现过程如下:
(1)若XML表数据未按照连接属性列排序,调用排序引擎在连接列上排序;
(2)在内存中建立数据记录的数据结构;
(3)用STAX按序解析两个XML表数据文档,遇到值相同的属性列,就生成一条记录,用基于流的方法输出。直到文档解析完毕,得到连接结果。
3)构建笛卡尔积引擎
输入为做笛卡尔积的两个XML表数据文档。输出为笛卡尔积运算后的中间结果XML数据。实现过程如下:
(1)在内存中建立数据记录的数据结构。
(2)用STAX解析其中一个XML表数据文档,对于每一条记录Ri,遍历另一个XML表数据文档中的每一条记录Rj,生成的新记录(Ri,Rj),用基于流的方法输出,直到文档解析完毕,得到连接结果。
(3)表数据文档解析完毕,得到笛卡尔积结果。
4)构建聚集引擎
输入为做聚集的表数据文档,groupby子句,having子句。聚集操作类型和属性列。实现过程如下:
(1)在内存中建立数据记录的数据结构。
(2)根据***配置,定义内存容纳记录上限。
(3)按照groupby子句中的属性列调用排序引擎。
(4)用STAX解析表数据文档,按序扫描记录。分组属性列每遇到新值生成一个分组,用having子句的条件做筛选。当筛选后分组的记录总数超过内存容纳记录上限,分组的全部记录以流的方式输出至外存,继续处理下一条记录,直至扫描结束。对组记录进行一遍扫描,做聚集运算,得到一条记录,输出结果。组记录扫描完毕,得到聚集结果。
5)实现数据整合流程
(1)获得查询元数据,调入至内存的数据结构中。
(2)确定连接表的顺序选择策略,可利用启发式规则:每次选择数据规模之和较少的两个表做表连接。
(3)根据查询结果的元数据,确定要做的关系代数运算,调用关系代数运算引擎,对中间结果进行处理和整合。
(4)将工作进度,异常或错误发送到集成任务管理器。将整合数据结果传递给集成任务管理器。
6.结果持久器
将整合后的结果数据导入到已有数据库中。结果持久器的实现过程如下:
1)构建数据转换引擎。它遍历查询结果的每条记录,根据查询结果属性列和导入表属性列之间的对应关系,生成SQL***语句脚本。
2)数据导入引擎,该引擎包含数据导入的公共接口和通用方法。它读取持久化信息和数据源信息,建立JDBC连接,执行SQL***语句脚本,捕捉导入过程中的异常,***异常的数据尝试***到异常表中。
3)实现数据持久化流程。获取持久化参数和整合的结果数据,调用数据转换引擎将结果数据转换为SQL脚本,调用数据导入引擎,批量执行脚本。将数据导入的状态和异常发送到集成任务管理器。
Claims (4)
1.一种基于XML的异构关系型数据库的数据集成方法,其特征是包括如下步骤:
1)获取数据集成需求和集成前期准备;
2)若集成应用涉及了新数据库产品,则执行添加新支持的数据库产品;
3)在全局查询请求配置界面的数据源的视区上,添加拟集成的数据源和拟导入数据的目的数据源;
4)在全局查询请求配置界面上,录入方案的信息,选择查询请求文档的保存位置,生成查询请求配置文档;
5)在持久化参数设置界面上,录入持久化参数,选择集成计划文档的保存路径,生成集成计划文档,若目的数据表不存在,在持久化参数设置界面上录入新建表的信息,创建一个新的数据表,然后再录入持久化参数;
6)在执行集成计划界面上,选取一个集成计划文档,执行该集成计划,等待软件***处理,执行集成计划界面上会显示集成计划执行的状态和异常情况,执行完毕后,结果报告界面会显示集成结果数据统计报表,特殊处理异常表中的数据,如此反复执行第4)至6)步骤,直到完成所有的集成任务。
2.按照权利要求1所述的基于XML的异构关系型数据库的数据集成方法,其特征在于,所述的获取数据集成需求和集成前期准备的步骤如下:
1)获取数据集成需求,确定集成的范围,制定数据集成计划,书写需求规格;
2)确定集成数据源所在的数据库环境,获取数据源的信息,包括:数据库的产品类型、版本、数据库名称、数据库IP地址、数据库服务端口、及其具有通过JDBC操纵数据库权限的登陆用户名和口令;
3)确定集成涉及的数据表,获取数据表信息,包括:表模式,表名称,字段列表和对应数据类型的列表;
4)分析需求,将集成任务分解成若干相互独立的子任务,确定每个子任务的集成逻辑,将集成逻辑形式化为查询方案,查询方案可以用结构化查询语言来表示,应当注意的是:查询语句中的每一个表和属性列都要有一个其所属数据库的标识作为前缀;
5)完成对集成目的数据库的设计;
6)获取结果持久化参数:
(1)目的数据源信息;
(2)目的数据表信息;
(3)查询结果属性和目的表属性的映射关系;
(4)指定一个数据导入异常表,记录下该数据表的信息;
7)对已获得的各项参数进行验证和确认,完成对已得到的查询方案和目的数据库设计方案的评审和确认。
3.按照权利要求1所述的基于XML的异构关系型数据库的数据集成方法,其特征在于,所述的若集成应用涉及了新数据库产品,则执行添加新支持的数据库产品的步骤如下:
1)获取新增数据库产品中包括数据类型的名称和特性的所有数据类型的信息;
2)根据数据类型的特性,指定其映射为一种通用数据类型;
3)将获取到的与通用数据类型映射信息和特性信息添加到数据类型字典中。
4.一种基于XML的异构关系型数据库的数据集成方法的数据集成***,其特征在于包括:
一个收集用户提交的全局查询请求和持久化参数,对全局查询请求和持久化参数进行合法性检查,分发集成任务,监控集成过程,报告集成结果的集成任务管理器;
一个实现了数据源动态管理,完成关系表的映射处理,为用户提供数据源全局视图的数据源管理器;
一个将查询请求根据数据的映射关系分解为若干子查询请求和全局查询元数据,并对子查询请求进行优化,生成子查询计划的查询分解优化器;
一个将接收到的子查询计划分配给数据提取引擎,对底层数据源发布SQL查询提取数据,并将查询结果集转换为中间结果XML数据的数据提取器;
一个接收中间结果XML数据和全局查询元数据,利用关系代数引擎,对中间结果进行整合,生成最终的全局查询结果的查询结果整合器;
一个将整合后的结果数据导入到已有数据库中的结果持久器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110021096 CN102081661A (zh) | 2011-01-19 | 2011-01-19 | 基于xml的异构关系型数据库的数据集成方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110021096 CN102081661A (zh) | 2011-01-19 | 2011-01-19 | 基于xml的异构关系型数据库的数据集成方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102081661A true CN102081661A (zh) | 2011-06-01 |
Family
ID=44087624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110021096 Pending CN102081661A (zh) | 2011-01-19 | 2011-01-19 | 基于xml的异构关系型数据库的数据集成方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102081661A (zh) |
Cited By (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521711A (zh) * | 2011-12-26 | 2012-06-27 | 北京瑞风协同科技股份有限公司 | 装备质量特性的数据模型构建的控制方法及装置 |
CN102521254A (zh) * | 2011-11-17 | 2012-06-27 | 广东电网公司电力科学研究院 | 异构数据库的统一访问方法 |
CN102750358A (zh) * | 2012-06-12 | 2012-10-24 | 中国电力科学研究院 | 一种***数据模型到cim模型的映射方法及*** |
CN102789491A (zh) * | 2012-07-03 | 2012-11-21 | 河海大学 | 一种可配置的数据订阅和发布***及其方法 |
CN103294821A (zh) * | 2013-06-17 | 2013-09-11 | 北京工业大学 | 基于多层子查询结果分支树的xml数据查询结果访问方法 |
CN103309977A (zh) * | 2013-06-14 | 2013-09-18 | 广东电网公司电力科学研究院 | 异构数据资源整合的方法 |
CN103336843A (zh) * | 2013-07-18 | 2013-10-02 | 山东中创软件工程股份有限公司 | 一种数据集成方法及装置 |
CN103368980A (zh) * | 2012-03-26 | 2013-10-23 | 深圳市财付通科技有限公司 | 一种jsonp数据请求方法和装置 |
CN103455381A (zh) * | 2012-05-29 | 2013-12-18 | 国际商业机器公司 | 用于将源软件组件的源对象的表示解序列化为目标软件组件的方法和*** |
CN103793399A (zh) * | 2012-10-31 | 2014-05-14 | 北京航天长峰科技工业集团有限公司 | 一种政法***信息资源整合方法 |
CN103902671A (zh) * | 2014-03-19 | 2014-07-02 | 北京科技大学 | 一种异构多源数据的动态集成方法及*** |
CN103942234A (zh) * | 2013-01-21 | 2014-07-23 | 中国电信股份有限公司 | 对多个异构数据库操作的方法、中间件装置及*** |
CN104346377A (zh) * | 2013-07-31 | 2015-02-11 | 克拉玛依红有软件有限责任公司 | 一种基于唯一标识的数据集成和交换方法 |
CN105243162A (zh) * | 2015-10-30 | 2016-01-13 | 方正国际软件有限公司 | 基于关系型数据库存储的对象化数据模型查询方法及装置 |
CN105359141A (zh) * | 2013-05-17 | 2016-02-24 | 甲骨文国际公司 | 支持基于流的etl和基于实体关系的etl的组合 |
CN105488229A (zh) * | 2016-01-20 | 2016-04-13 | 航天科工智慧产业发展有限公司 | 一种异构数据环境下的数据交换与集成方法 |
CN105956126A (zh) * | 2016-05-06 | 2016-09-21 | 南京国电南自电网自动化有限公司 | 基于关键字主次分类的xml查询方法 |
CN106815371A (zh) * | 2017-02-06 | 2017-06-09 | 浪潮通用软件有限公司 | 一种通过可视化配置实现跨数据源的数据读取方法 |
CN106844485A (zh) * | 2016-12-23 | 2017-06-13 | 航天星图科技(北京)有限公司 | 一种企业异构数据库智能集成的***及方法 |
CN107368588A (zh) * | 2017-07-24 | 2017-11-21 | 人教数字出版有限公司 | 一种异构资源同构化方法及装置 |
CN107480225A (zh) * | 2017-09-11 | 2017-12-15 | 爱普(福建)科技有限公司 | 实现控制站与第三方数据库数据共享的方法及计算机程序产品 |
CN107679071A (zh) * | 2017-08-22 | 2018-02-09 | 中国科学院计算机网络信息中心 | 一种面向关系数据库的通用数据服务定制化封装方法 |
CN108132936A (zh) * | 2016-11-30 | 2018-06-08 | 北京国双科技有限公司 | 数据导入方法及装置 |
CN108235755A (zh) * | 2015-07-15 | 2018-06-29 | 魏庆军 | 一种物联网控制器用户界面的方法及*** |
CN109067558A (zh) * | 2018-06-11 | 2018-12-21 | 玖富金科控股集团有限责任公司 | 数据服务方法及*** |
CN109145025A (zh) * | 2018-09-14 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 一种多数据源集成的数据查询方法、装置及业务服务器 |
CN109344166A (zh) * | 2018-08-14 | 2019-02-15 | 中国平安人寿保险股份有限公司 | 数据库的监控方法、计算机可读存储介质和终端设备 |
CN109495581A (zh) * | 2018-12-13 | 2019-03-19 | 爱普(福建)科技有限公司 | 一种多异构控制站的通信方法和装置 |
CN109783694A (zh) * | 2019-01-30 | 2019-05-21 | 清华大学 | 基于xml的跨平台大型仪器共享信息集成方法及*** |
CN110069559A (zh) * | 2019-03-21 | 2019-07-30 | 中国人民解放军陆军工程大学 | 一种具有高度自控性的异构信息***数据分析和集成方法 |
CN110544092A (zh) * | 2019-08-22 | 2019-12-06 | 杭州趣链科技有限公司 | 一种区块链的动态新增多类型数据库数据操作上链方法 |
CN110597844A (zh) * | 2019-08-14 | 2019-12-20 | 中国平安财产保险股份有限公司 | 异构数据库数据统一访问方法及相关设备 |
CN110781189A (zh) * | 2019-10-25 | 2020-02-11 | 北京达佳互联信息技术有限公司 | 文档平台构建方法、装置、电子设备及存储介质 |
CN110909059A (zh) * | 2019-11-25 | 2020-03-24 | 杭州晨鹰军泰科技有限公司 | 一种数据集成***、方法、设备及存储介质 |
CN111177134A (zh) * | 2019-12-26 | 2020-05-19 | 上海科技发展有限公司 | 适用于海量数据的数据质量分析方法、装置、终端及介质 |
CN111221791A (zh) * | 2018-11-27 | 2020-06-02 | 中云开源数据技术(上海)有限公司 | 一种多源异构数据导入数据湖的方法 |
CN111443970A (zh) * | 2020-03-24 | 2020-07-24 | 山东浪潮通软信息科技有限公司 | 一种组装多来源数据的方法、装置、设备及可读介质 |
CN112817580A (zh) * | 2021-01-27 | 2021-05-18 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN114217899A (zh) * | 2021-12-15 | 2022-03-22 | 平安国际智慧城市科技股份有限公司 | 数据持久化方法、装置、电子设备及存储介质 |
CN116932575A (zh) * | 2023-09-12 | 2023-10-24 | 长城证券股份有限公司 | 基于Spark的跨数据源操作方法、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101067814A (zh) * | 2007-05-10 | 2007-11-07 | 浪潮集团山东通用软件有限公司 | 数据访问层Xml格式数据与关系数据间的映射转换方法 |
CN101739436A (zh) * | 2009-09-28 | 2010-06-16 | 孙彬 | 基于xml的柔性数据迁移方法 |
-
2011
- 2011-01-19 CN CN 201110021096 patent/CN102081661A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101067814A (zh) * | 2007-05-10 | 2007-11-07 | 浪潮集团山东通用软件有限公司 | 数据访问层Xml格式数据与关系数据间的映射转换方法 |
CN101739436A (zh) * | 2009-09-28 | 2010-06-16 | 孙彬 | 基于xml的柔性数据迁移方法 |
Cited By (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521254A (zh) * | 2011-11-17 | 2012-06-27 | 广东电网公司电力科学研究院 | 异构数据库的统一访问方法 |
CN102521711B (zh) * | 2011-12-26 | 2016-03-02 | 北京瑞风协同科技股份有限公司 | 装备质量特性的数据模型构建的控制方法及装置 |
CN102521711A (zh) * | 2011-12-26 | 2012-06-27 | 北京瑞风协同科技股份有限公司 | 装备质量特性的数据模型构建的控制方法及装置 |
CN103368980A (zh) * | 2012-03-26 | 2013-10-23 | 深圳市财付通科技有限公司 | 一种jsonp数据请求方法和装置 |
CN103455381A (zh) * | 2012-05-29 | 2013-12-18 | 国际商业机器公司 | 用于将源软件组件的源对象的表示解序列化为目标软件组件的方法和*** |
CN102750358A (zh) * | 2012-06-12 | 2012-10-24 | 中国电力科学研究院 | 一种***数据模型到cim模型的映射方法及*** |
CN102789491A (zh) * | 2012-07-03 | 2012-11-21 | 河海大学 | 一种可配置的数据订阅和发布***及其方法 |
CN102789491B (zh) * | 2012-07-03 | 2016-03-16 | 河海大学 | 一种可配置的数据订阅和发布***及其方法 |
CN103793399A (zh) * | 2012-10-31 | 2014-05-14 | 北京航天长峰科技工业集团有限公司 | 一种政法***信息资源整合方法 |
CN103942234A (zh) * | 2013-01-21 | 2014-07-23 | 中国电信股份有限公司 | 对多个异构数据库操作的方法、中间件装置及*** |
CN105359141A (zh) * | 2013-05-17 | 2016-02-24 | 甲骨文国际公司 | 支持基于流的etl和基于实体关系的etl的组合 |
CN103309977A (zh) * | 2013-06-14 | 2013-09-18 | 广东电网公司电力科学研究院 | 异构数据资源整合的方法 |
CN103294821B (zh) * | 2013-06-17 | 2016-01-20 | 北京工业大学 | 基于多层子查询结果分支树的xml数据查询结果访问方法 |
CN103294821A (zh) * | 2013-06-17 | 2013-09-11 | 北京工业大学 | 基于多层子查询结果分支树的xml数据查询结果访问方法 |
CN103336843A (zh) * | 2013-07-18 | 2013-10-02 | 山东中创软件工程股份有限公司 | 一种数据集成方法及装置 |
CN103336843B (zh) * | 2013-07-18 | 2017-02-15 | 山东中创软件工程股份有限公司 | 一种数据集成方法及装置 |
CN104346377A (zh) * | 2013-07-31 | 2015-02-11 | 克拉玛依红有软件有限责任公司 | 一种基于唯一标识的数据集成和交换方法 |
CN104346377B (zh) * | 2013-07-31 | 2017-08-08 | 克拉玛依红有软件有限责任公司 | 一种基于唯一标识的数据集成和交换方法 |
CN103902671A (zh) * | 2014-03-19 | 2014-07-02 | 北京科技大学 | 一种异构多源数据的动态集成方法及*** |
CN103902671B (zh) * | 2014-03-19 | 2018-04-13 | 北京科技大学 | 一种异构多源数据的动态集成方法及*** |
CN108235755A (zh) * | 2015-07-15 | 2018-06-29 | 魏庆军 | 一种物联网控制器用户界面的方法及*** |
CN108235755B (zh) * | 2015-07-15 | 2021-07-20 | 魏庆军 | 物联网控制器用户界面的方法及*** |
CN105243162B (zh) * | 2015-10-30 | 2018-10-30 | 方正国际软件有限公司 | 基于关系型数据库存储的对象化数据模型查询方法及装置 |
CN105243162A (zh) * | 2015-10-30 | 2016-01-13 | 方正国际软件有限公司 | 基于关系型数据库存储的对象化数据模型查询方法及装置 |
CN105488229A (zh) * | 2016-01-20 | 2016-04-13 | 航天科工智慧产业发展有限公司 | 一种异构数据环境下的数据交换与集成方法 |
CN105956126A (zh) * | 2016-05-06 | 2016-09-21 | 南京国电南自电网自动化有限公司 | 基于关键字主次分类的xml查询方法 |
CN108132936A (zh) * | 2016-11-30 | 2018-06-08 | 北京国双科技有限公司 | 数据导入方法及装置 |
CN106844485A (zh) * | 2016-12-23 | 2017-06-13 | 航天星图科技(北京)有限公司 | 一种企业异构数据库智能集成的***及方法 |
CN106815371A (zh) * | 2017-02-06 | 2017-06-09 | 浪潮通用软件有限公司 | 一种通过可视化配置实现跨数据源的数据读取方法 |
CN107368588B (zh) * | 2017-07-24 | 2020-09-01 | 人教数字出版有限公司 | 一种异构资源同构化方法及装置 |
CN107368588A (zh) * | 2017-07-24 | 2017-11-21 | 人教数字出版有限公司 | 一种异构资源同构化方法及装置 |
CN107679071A (zh) * | 2017-08-22 | 2018-02-09 | 中国科学院计算机网络信息中心 | 一种面向关系数据库的通用数据服务定制化封装方法 |
CN107679071B (zh) * | 2017-08-22 | 2020-12-18 | 中国科学院计算机网络信息中心 | 一种面向关系数据库的通用数据服务定制化封装方法 |
CN107480225A (zh) * | 2017-09-11 | 2017-12-15 | 爱普(福建)科技有限公司 | 实现控制站与第三方数据库数据共享的方法及计算机程序产品 |
CN109067558A (zh) * | 2018-06-11 | 2018-12-21 | 玖富金科控股集团有限责任公司 | 数据服务方法及*** |
CN109344166B (zh) * | 2018-08-14 | 2023-06-09 | 中国平安人寿保险股份有限公司 | 数据库的监控方法、计算机可读存储介质和终端设备 |
CN109344166A (zh) * | 2018-08-14 | 2019-02-15 | 中国平安人寿保险股份有限公司 | 数据库的监控方法、计算机可读存储介质和终端设备 |
CN109145025A (zh) * | 2018-09-14 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 一种多数据源集成的数据查询方法、装置及业务服务器 |
CN109145025B (zh) * | 2018-09-14 | 2021-09-24 | 创新先进技术有限公司 | 一种多数据源集成的数据查询方法、装置及业务服务器 |
CN111221791A (zh) * | 2018-11-27 | 2020-06-02 | 中云开源数据技术(上海)有限公司 | 一种多源异构数据导入数据湖的方法 |
CN109495581A (zh) * | 2018-12-13 | 2019-03-19 | 爱普(福建)科技有限公司 | 一种多异构控制站的通信方法和装置 |
CN109783694A (zh) * | 2019-01-30 | 2019-05-21 | 清华大学 | 基于xml的跨平台大型仪器共享信息集成方法及*** |
CN109783694B (zh) * | 2019-01-30 | 2021-02-12 | 清华大学 | 基于xml的跨平台大型仪器共享信息集成方法及*** |
CN110069559A (zh) * | 2019-03-21 | 2019-07-30 | 中国人民解放军陆军工程大学 | 一种具有高度自控性的异构信息***数据分析和集成方法 |
CN110597844A (zh) * | 2019-08-14 | 2019-12-20 | 中国平安财产保险股份有限公司 | 异构数据库数据统一访问方法及相关设备 |
CN110597844B (zh) * | 2019-08-14 | 2023-07-21 | 中国平安财产保险股份有限公司 | 异构数据库数据统一访问方法及相关设备 |
CN110544092B (zh) * | 2019-08-22 | 2022-04-01 | 杭州趣链科技有限公司 | 一种区块链的动态新增多类型数据库数据操作上链方法 |
CN110544092A (zh) * | 2019-08-22 | 2019-12-06 | 杭州趣链科技有限公司 | 一种区块链的动态新增多类型数据库数据操作上链方法 |
CN110781189A (zh) * | 2019-10-25 | 2020-02-11 | 北京达佳互联信息技术有限公司 | 文档平台构建方法、装置、电子设备及存储介质 |
CN110909059A (zh) * | 2019-11-25 | 2020-03-24 | 杭州晨鹰军泰科技有限公司 | 一种数据集成***、方法、设备及存储介质 |
CN111177134A (zh) * | 2019-12-26 | 2020-05-19 | 上海科技发展有限公司 | 适用于海量数据的数据质量分析方法、装置、终端及介质 |
CN111443970B (zh) * | 2020-03-24 | 2023-11-03 | 浪潮通用软件有限公司 | 一种组装多来源数据的方法、装置、设备及可读介质 |
CN111443970A (zh) * | 2020-03-24 | 2020-07-24 | 山东浪潮通软信息科技有限公司 | 一种组装多来源数据的方法、装置、设备及可读介质 |
CN112817580A (zh) * | 2021-01-27 | 2021-05-18 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN112817580B (zh) * | 2021-01-27 | 2023-09-01 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN114217899A (zh) * | 2021-12-15 | 2022-03-22 | 平安国际智慧城市科技股份有限公司 | 数据持久化方法、装置、电子设备及存储介质 |
CN114217899B (zh) * | 2021-12-15 | 2023-10-17 | 深圳平安智慧医健科技有限公司 | 数据持久化方法、装置、电子设备及存储介质 |
CN116932575A (zh) * | 2023-09-12 | 2023-10-24 | 长城证券股份有限公司 | 基于Spark的跨数据源操作方法、设备及存储介质 |
CN116932575B (zh) * | 2023-09-12 | 2023-12-15 | 长城证券股份有限公司 | 基于Spark的跨数据源操作方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102081661A (zh) | 基于xml的异构关系型数据库的数据集成方法和*** | |
US7917463B2 (en) | System and method for data warehousing and analytics on a distributed file system | |
US9946780B2 (en) | Interpreting relational database statements using a virtual multidimensional data model | |
US8655861B2 (en) | Query metadata engine | |
CN102982075B (zh) | 支持访问异构数据源的***和方法 | |
CN103064875B (zh) | 一种服务化空间数据分布式查询方法 | |
US7690000B2 (en) | Metadata journal for information technology systems | |
US8943059B2 (en) | Systems and methods for merging source records in accordance with survivorship rules | |
CN103455540B (zh) | 从数据仓库模型生成内存模型的***和方法 | |
EP1594051A2 (en) | Extraction, transformation and loading designer module of a computerized financial system | |
CN109656963B (zh) | 元数据获取方法、装置、设备及计算机可读存储介质 | |
CN103942234A (zh) | 对多个异构数据库操作的方法、中间件装置及*** | |
US8122044B2 (en) | Generation of business intelligence entities from a dimensional model | |
CN103559189B (zh) | 基于元数据集成模型的电力仿真培训资源管理***及方法 | |
CN103262076A (zh) | 分析数据处理 | |
CN107291471B (zh) | 一种支持可定制化数据采集的元模型框架*** | |
CN109241054A (zh) | 一种多模型数据库***、实现方法以及服务器 | |
CN108009270A (zh) | 一种基于分布式内存计算的文本检索方法 | |
CN111198898B (zh) | 大数据查询方法及大数据查询装置 | |
CN106599052A (zh) | 一种基于ApacheKylin的数据查询***及其方法 | |
CN110309171A (zh) | 数据库查询方法、服务器和*** | |
CN113553341A (zh) | 多维数据分析方法、装置、设备及计算机可读存储介质 | |
CN111125045B (zh) | 一种轻量级etl处理平台 | |
CN108984631A (zh) | 一种大数据的生成及调用方法和装置 | |
CN112735571A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110601 |