CN111625520B - 一种通用的异构数据库字段类型的映射方法及系统 - Google Patents
一种通用的异构数据库字段类型的映射方法及系统 Download PDFInfo
- Publication number
- CN111625520B CN111625520B CN202010513360.7A CN202010513360A CN111625520B CN 111625520 B CN111625520 B CN 111625520B CN 202010513360 A CN202010513360 A CN 202010513360A CN 111625520 B CN111625520 B CN 111625520B
- Authority
- CN
- China
- Prior art keywords
- field
- database
- field type
- standard
- mapping
- 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
Images
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
-
- 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/2228—Indexing structures
- G06F16/2255—Hash tables
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种通用的异构数据库字段类型的映射方法及系统,建立一个通用的数据库字段类型标准,做到各个数据库的字段类型都能映射到该字段类型标准中从而达到两个不同的数据库字段之间的转换。通过本发明通过不同类型字段建立映射,使得建立不同数据源数据集成的通用模型变得容易,能高效地采集多源数据源数据;其标准通过对多种数据库的字段类型进行分析,提取出一套较为通用的,扩展性良好的,统一的字段标准规范。这套标准适用与绝大多数数据库;拓展性强,每个数据库实现对自定义的标准数据类型映射,增加新的数据库支持实现简单,转换准确,快速,通过自定义的标准规范,实现两个数据库字段类型的转换。
Description
技术领域
本发明涉及数据处理领域,特别是涉及一种通用的异构数据库字段类型的映射方法及系统。
背景技术
目前全球企业系统越来越大,数据的总容量大约是每三年就要翻两番,这种情况下,数据存放可能分布越广,可能会出现同一个系统的数据被放到了不同的数据库中,或者由于要做系统升级换不同的数据库,要做不同数据库之间的数据移植,这时对于应用系统不同的数据库的访问的方法和方式完全不一样,造成了大量的升级工作量和工时。现有大多数系统和数据库应用绑定太紧密,造成系统上许多的不便利。
随着计算机数据处理的发展,现阶段存在着大量的异构数据库,他们的异构表现在多个方面,许多的信息系统需要从这些异构数据库中获取数据,异构数据库的差异导致了获取信息的难度,因此需要一种方式来解决多个异构数据库之间的信息集成。
发明内容
本发明的目的在于克服现有技术的不足,基于现有的设计模式,提供一种通用的异构数据库字段类型的映射方法及系统。
本发明的发明目的是通过以下技术方案实现的:一种通用的异构数据库字段类型的映射方法,其特征在于,包括以下步骤:
S1. 建立字段类型映射标准;
S2. 实现各个数据库到标准字段类型的映射;
其中,所述步骤S2还包括以下子步骤:
S201. 判断源字段是否可以映射为标准类型;若是,则执行步骤S202,若否,则对该字段类型进行降级处理或直接抛出异常;
S202. 判断标准字段类型是否可以转换为目标字段类型;若是,则执行步骤S204;若否,则执行步骤S203;
S203. 判断低优先级的哈希表中是否存在可以代替的字段类型;若是则执行步骤S204;若否,则抛出异常;
S204. 输出该字段类型。
所述步骤S201具体包括以下子步骤;
S2011. 断源字段是否可以映射为标准类型;若是,则执行步骤S2012;若否,则执行步骤S2013
S2012. 通过一个哈希表建立目标字段类型和标准字段类型的映射,并执行步骤S202;
S2013. 判断目标字段的数据类型的结构和标准字段类型的结构是否一致;若是,则执行步骤S2014,若否则执行步骤S2015;
S2014. 对他们建立映射关系,保存在较低优先级的哈希表中;
S2015. 将该目标字段记录到异常队列中。
所述步骤S204包括以下子步骤:
S2041. 将第一数据库中的哈希表将相关的字段类型转换成标准的字段类型;
S2041. 通过第二数据库中的哈希表,将标准的字段类型转换成第二数据库对应的字段类型。
一种通用的异构数据库字段类型的映射系统,包括第一数据库、第二数据库、字段类型标准库模块和字段类型映射模块;所述第一数据库与第二数据库通过字段类型映射模块对不同类型字段建立映射,并通过字段类型标注库模块进行字段类型转换。
所述第一数据库与第二数据库为异构数据库。
本发明的有益效果:
(1)通过不同类型字段建立映射,使得建立不同数据源数据集成的通用模型变得容易,能高效地采集多源数据源数据;
(2)其标准通过对多种数据库的字段类型进行分析,提取出一套较为通用的,扩展性良好的,统一的字段标准规范。这套标准适用与绝大多数数据库;
(3)拓展性强,每个数据库实现对自定义的标准数据类型映射,增加新的数据库支持实现简单,转换准确,快速,通过自定义的标准规范,实现两个数据库字段类型的转换。
附图说明
图1为本发明的方法流程框图;
图2为本发明的系统流程框图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式,但本发明的保护范围不局限于以下所述。
如图1,一种通用的异构数据库字段类型的映射方法,包括以下步骤:
S1. 建立字段类型映射标准;
S2. 实现各个数据库到标准字段类型的映射;
S3. 判断源字段是否可以映射为标准类型;若是,则执行步骤S4,若否,则对该字段类型进行降级处理或直接抛出异常;
S4. 判断标准字段类型是否可以转换为目标字段类型;若是,则执行步骤S6;若否,则执行步骤S5;
S5;判断低优先级的哈希表中是否存在可以代替的字段类型;若是则执行步骤S6;若否,则抛出异常;
S6;输出该字段类型。
所述步骤S3具体包括以下子步骤;
S301. 断源字段是否可以映射为标准类型;若是,则执行步骤S302;若否,则执行步骤S303
S302. 通过一个哈希表建立目标字段类型和标准字段类型的映射,并执行步骤S4;
S303. 判断目标字段的数据类型的结构和标准字段类型的结构是否一致;若是,则执行步骤S304,若否则执行步骤S305;
S304. 对他们建立映射关系,保存在较低优先级的哈希表中;
S305. 将该目标字段记录到异常队列中。
所述步骤S6包括以下子步骤:
S601. 将第一数据库中的哈希表将相关的字段类型转换成标准的字段类型;
S602. 通过第二数据库中的哈希表,将标准的字段类型转换成第二数据库对应的字段类型。
如图2,一种通用的异构数据库字段类型的映射系统,一种通用的异构数据库字段类型的映射系统,包括第一数据库、第二数据库、字段类型标准库模块和字段类型映射模块;所述第一数据库与第二数据库通过字段类型映射模块对不同类型字段建立映射,并通过字段类型标注库模块进行字段类型转换。
所述第一数据库与第二数据库为异构数据库。
本实施例的具体原理如下:
1.建立一个通用的兼容各个数据库的字段类型标准规范,相关标准如下:
1.1 CHAR 表示定长字符;
1.2 VARCHAR 表示变长字符;
1.3 SMALLINT 表示 2 字节整型;
1.4 INT 表示 4 字节整型;
1.5 LONG 表示 8 字节整型;
1.6 FLOAT 表示 单精度浮点;
1.7 DOUBLE 表示 双精度浮点;
1.8 DATE 表示日期;
1.9 TIME 表示时间;
1.10 TIMESTAMP 表示日期+时间;
1.11 TEXT 表示文本;
1.12 BLOB 表示 二进制数据;
1.13 DECIMAL 表示可变精度;
1.14 NUMBER 表示可控精度。
2.依据 1 中制定的数据类型标准规范,实现数据库到该标准类型的一个映射。
2.1 对于目标数据库中,存在字段与标准字段类型的匹配,那么通过一个哈希表建立目标字段类型和标准字段类型的映射。
2.2 对于目标数据库中,存在标准字段类型无法匹配该数据库中的相关字段。
a. 如果存在目标字段的数据类型的结构和标准字段类型的结构一致,可以对他们建立映射关系,保存在较低优先级的哈希表中。
b. 如果不存在目标字段的数据类型和结构和标准字段类型的结构一致,那么将该目标字段记录到异常队列中。
2.3 对于目标数据库中,存在一些该数据库特有的字段类型,无法匹配到标准字段类型。
a. 如果存在目标字段的数据类型的结构和标准字段类型的结构一致,可以对他们建立映射关系,保存在较低优先级的哈希表中。
b. 如果不存在目标字段的数据类型和结构和标准字段类型的结构一致,那么将该目标字段记录到异常队列中。
3.依据2 完成了各种数据库到标准字段类型的相关映射关系。
4.实现从第一数据库的子弹类型到第二数据库的字段类型转换。
4.1 将第一数据库中的哈希表将相关的字段类型转换成标准的字段类型。
4.2 利用第二数据库中的哈希表,将标准的字段类型转换成B 数据库对应的字段类型。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (4)
1.一种通用的异构数据库字段类型的映射方法,其特征在于,包括以下步骤:
S1. 建立字段类型映射标准;
S2. 实现各个数据库到标准字段类型的映射;
其中,所述步骤S2还包括以下子步骤:
S201. 判断源字段是否可以映射为标准类型;若是,则执行步骤S202,若否,则对该字段类型进行降级处理或直接抛出异常;所述步骤S201具体包括以下子步骤;
S2011. 判断源字段是否可以映射为标准类型;若是,则执行步骤S2012;若否,则执行步骤S2013;
S2012. 通过一个哈希表建立目标字段类型和标准字段类型的映射,并执行步骤S202;
S2013. 判断目标字段的数据类型的结构和标准字段类型的结构是否一致;若是,则执行步骤S2014,若否则执行步骤S2015;
S2014. 对他们建立映射关系,保存在较低优先级的哈希表中;
S2015. 将该目标字段记录到异常队列中;
S202. 判断标准字段类型是否可以转换为目标字段类型;若是,则执行步骤S204;若否,则执行步骤S203;
S203. 判断低优先级的哈希表中是否存在可以代替的字段类型;若是则执行步骤S204;若否,则抛出异常;
S204. 输出该字段类型。
2.根据权利要求1所述的一种通用的异构数据库字段类型的映射方法,其特征在于,所述步骤S204包括以下子步骤:
S2041. 通过第一数据库中的哈希表将相关的字段类型转换成标准的字段类型;
S2041. 通过第二数据库中的哈希表,将标准的字段类型转换成第二数据库对应的字段类型。
3.一种通用的异构数据库字段类型的映射系统,用以实现权利要求1或2所述的一种通用的异构数据库字段类型的映射方法,其特征在于,包括第一数据库、第二数据库、字段类型标准库模块、字段类型转换模块和字段类型映射模块;所述第一数据库与第二数据库通过字段类型映射模块对不同类型字段建立映射,通过字段类型标准库模块进行字段类型判断,再通过字段类型转换模块进行字段转换。
4.根据权利要求3所述的一种通用的异构数据库字段类型的映射系统,其特征在于,所述第一数据库与第二数据库为异构数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010513360.7A CN111625520B (zh) | 2020-06-08 | 2020-06-08 | 一种通用的异构数据库字段类型的映射方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010513360.7A CN111625520B (zh) | 2020-06-08 | 2020-06-08 | 一种通用的异构数据库字段类型的映射方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111625520A CN111625520A (zh) | 2020-09-04 |
CN111625520B true CN111625520B (zh) | 2023-06-06 |
Family
ID=72272034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010513360.7A Active CN111625520B (zh) | 2020-06-08 | 2020-06-08 | 一种通用的异构数据库字段类型的映射方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111625520B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112417225A (zh) * | 2020-11-30 | 2021-02-26 | 北京明略软件系统有限公司 | 一种多源异构数据的联合查询方法与系统 |
CN112860793A (zh) * | 2021-02-03 | 2021-05-28 | 浪潮云信息技术股份公司 | 一种异源数据库间实现元数据同步的方法 |
CN112800150A (zh) * | 2021-02-25 | 2021-05-14 | 浪潮云信息技术股份公司 | 一种异构数据库自动映射建表方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6889260B1 (en) * | 1999-06-10 | 2005-05-03 | Ec Enabler, Ltd | Method and system for transferring information |
CN101930464A (zh) * | 2010-08-25 | 2010-12-29 | 华南理工大学 | 一种面向rfid物流应用的松散性异构数据交换系统及方法 |
CN107045534A (zh) * | 2017-01-20 | 2017-08-15 | 中国航天系统科学与工程研究院 | 大数据环境下基于HBase的异构数据库在线交换与共享系统 |
CN110119495A (zh) * | 2018-02-05 | 2019-08-13 | 北大方正集团有限公司 | 数字字符串的转换方法、系统、计算机设备及介质 |
CN111078774A (zh) * | 2019-12-05 | 2020-04-28 | 中国科学技术大学智慧城市研究院(芜湖) | 一种数据的自动整合方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7136872B2 (en) * | 2002-04-16 | 2006-11-14 | International Business Machines Corporation | Method, system, and article of manufacture for transferring structured data between different data stores |
US7752223B2 (en) * | 2006-08-07 | 2010-07-06 | International Business Machines Corporation | Methods and apparatus for views of input specialized references |
-
2020
- 2020-06-08 CN CN202010513360.7A patent/CN111625520B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6889260B1 (en) * | 1999-06-10 | 2005-05-03 | Ec Enabler, Ltd | Method and system for transferring information |
CN101930464A (zh) * | 2010-08-25 | 2010-12-29 | 华南理工大学 | 一种面向rfid物流应用的松散性异构数据交换系统及方法 |
CN107045534A (zh) * | 2017-01-20 | 2017-08-15 | 中国航天系统科学与工程研究院 | 大数据环境下基于HBase的异构数据库在线交换与共享系统 |
CN110119495A (zh) * | 2018-02-05 | 2019-08-13 | 北大方正集团有限公司 | 数字字符串的转换方法、系统、计算机设备及介质 |
CN111078774A (zh) * | 2019-12-05 | 2020-04-28 | 中国科学技术大学智慧城市研究院(芜湖) | 一种数据的自动整合方法 |
Non-Patent Citations (1)
Title |
---|
韩世杰等.一种异构数据库迁移系统的设计与实现.《电子技术与软件工程》.2020,第147-150页. * |
Also Published As
Publication number | Publication date |
---|---|
CN111625520A (zh) | 2020-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111625520B (zh) | 一种通用的异构数据库字段类型的映射方法及系统 | |
CA2997061C (en) | Method and system for parallelization of ingestion of large data sets | |
US9619492B2 (en) | Data migration | |
CN104408132A (zh) | 数据推送方法和系统 | |
CN105760534A (zh) | 自定义的可序列化的数据结构、hadoop集群、服务器及其应用方法 | |
CN104714972A (zh) | 数据库分表建立及查询方法 | |
CN103309904A (zh) | 一种生成数据仓库etl 代码的方法及装置 | |
US20080059491A1 (en) | System and method for mapping events into a data structure | |
CN106570113B (zh) | 一种海量矢量切片数据云存储方法及系统 | |
CN110019111B (zh) | 数据处理方法、装置、存储介质以及处理器 | |
CN108984626B (zh) | 一种数据处理方法、装置及服务器 | |
US20140101105A1 (en) | Method and apparatus for data migration from hierarchical database of mainframe system to rehosting solution database of open system | |
CN105843955A (zh) | 一种数据迁移系统 | |
CN105468793A (zh) | 一种仿真模型数据的自动化管理方法 | |
CN110134646B (zh) | 知识平台服务数据存储与集成方法及系统 | |
CN107291938A (zh) | 订单查询系统及方法 | |
CN110245043B (zh) | 一种分布式系统间调用关系的跟踪系统 | |
CN109359146A (zh) | 一种自动化etl数据处理工具及其使用方法 | |
CN103092607A (zh) | 一种电信话单数据编解码方法 | |
US10229149B2 (en) | Global filter factor estimation | |
US10031930B2 (en) | Record schemas identification in non-relational database | |
CN113284573A (zh) | 一种文档数据库检索方法与装置 | |
CN114090595A (zh) | 一种基于多态电网模型的驱动型数据处理方法 | |
CN105809577A (zh) | 一种基于规则和组件的电厂信息化数据的分类处理方法 | |
CN105550309A (zh) | Mpp架构数据库集群序列系统及序列管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |