APP下载

基于XML 数据迁移技术应用研究

2017-04-22彭展李密杨楠

现代计算机 2017年7期
关键词:字段异构信息系统

彭展,李密,杨楠

(1.92196部队,青岛 266003;2.火箭军工程大学,西安 710025)

基于XML 数据迁移技术应用研究

彭展1,李密1,杨楠2

(1.92196部队,青岛 266003;2.火箭军工程大学,西安 710025)

针对我军信息系统普遍存在“信息孤岛”和“数据烟囱”的现状,阐述构建统一高效、互联互通、安全可靠的军队数据资源体系,打通各军兵种信息系统,推动信息跨军兵种跨层级共享公用的重要意义,提出一种基于XML的数据迁移技术。该技术以XML文件作为数据交换中介,建立“源数据库-XML-目标数据库”的映射模型,生成源表与目标表之间的映射,根据实际需求进行字段格式转换、合并、拆分、计算等操作,实现数据在在新旧信息系统之间的无缝迁移,推动军队信息化建设。

数据迁移;信息共享;字段映射

0 引言

所谓军队信息化,不仅在于“有”,更在于“通”。尤其在联合作战时代,联合作战的基础是信息共享,信息共享的根基是数据共享、互连互通,数据必须实现有效流通和共享,才谈得上联合作战。客观说,我军信息化已有相当基础,各军兵种已经建设各类信息系统,然而进一步信息化的梗阻恰恰也在于此,各信息系统之间缺少联接和沟通,往往“各自为政”,形成一个个“信息孤岛”和“数据烟囱”[1]。由于历史原因,各军兵种各信息系统后台数据库产品种类不统一,数据库表结构和字段异构,怎么使各信息系统数据资源统一迁移到联合共享数据库,使全军各军兵种之间合理共享军事信息资源,保障首长及各级领导联合作战决策,提高我军以完成打赢信息化条件下局部战争为核心的完成多样化军事任务能力的需求。最近几年,朝鲜核试验、台海问题、南海问题和钓鱼岛问题出现,加快我军信息化建设迫在眉睫。因此,如何快速准确实现信息共享,信息资源多源融合,是我军信息化建设迫切解决的梗塞。

1 数据迁移技术

数据迁移是将源信息系统的数据进行提取(Extraction)、转换(Transformation),并装载(Loading)到新信息系统中的过程[2]。基于该过程的工具通常称作ETL工具。

数据迁移不是数据的简单转移,主要表现如下:

(1)数据库类型异构,例如:SQL Server、MySQL和Oracle;

(2)数据库版本异构,例如:Oracle 9i、Oracle 10g、Oracle 11g和Oracle 12c;

(3)表结构差异,例如:源表与目标表存在“一对一”、“多对一”或“一对多”的映射关系;

(4)字段差异,例如:源表字段名称、类型存在异构,甚至存在字段的合并、拆分、值替换等;

(5)数据校验与数据补录:需要对数据的有效性进行验证,无法迁移数据最终需要手工补录。

2 基于XML的数据迁移

2.1 基本思路

通过全面持续学习,做到“专”与“博”相结合,求知与修身共进步,知识结构更加合理,提高理论素养、知识水平、业务本领和领导能力,达到立德增智、学以致用。这样,有了丰厚积累,厚积薄发,为思维创新奠定基础,一切皆有可能,处处是创造之地,天天是创造之时,人人是创造之人。

基于XML的数据迁移框架图如图1所示,迁移思路如下:

(1)根据源数据库和目标数据库实际情况,制定数据迁移方案;

(2)连接源数据库和目标数据库,根据迁移方案读取源表和目标表数据字典,建立源字段和目标字段映射表;

(3)抽取源数据库数据,清洗“脏数据”,根据字段映射表对数据进行转换,写入XML文件;

(4)根据目标数据库字段类型,采用DOM4J解析器解析XML文件数据,验证数据有效,最后装载到目标数据库。

2.2 表映射模型建立

利用XML文件进行数据迁移,首先要建立源表与目标表的映射模型。源表与目标表之间的映射模型采用XML文件描述,系统可以根据映射模型读取源数据库和目标数据库相应数据字典信息,由于信息系统之间存在异构,源表和目标表可能存在三种关系:“一对一”、“一对多”、“多对一”[8],表映射模型如图2所示。

图1 基于XML的数据迁移框架图

图2 表映射模型

2.3 字段映射模型

由于科学技术发展和需求变化,源表和目标表字段之间存在异构,这也是数据迁移最棘手问题,源字段和目标字段之间存在合并、拆分、计算、值替换等操作[9],转换过程中根据目标数据库字段类型,对数据进行格式转换,格式转换包括单位统一、日期格式统一、精度统一等,根据实际情况分别进行相应处理,最终生成字段映射表。字段映射模型如图3所示。

图3 字段映射模型

2.4 数据处理

(1)数据转换

数据迁移系统既包含不同版本之间数据迁移,要在不同数据库产品之间实现数据迁移,不仅实现数据的简单搬迁,关键要满足异构数据库之间数据的无缝衔接,数据库之间异构,既包括类型异构,还存在表异构和字段异构,必须根据目标数据库字段类型,对数据进行格式转换,符合目标数据库条件[10]。

建立表映射模型和字段映射模型后,抽取源数据库数据,清洗“脏数据”,根据字段映射表对数据进行转换后写入到XML文件。在XML文件中,元素“database”描述XML文件根元素,目标数据库类型采用根元素的属性名称描述,例如:SQL Server 2012、MySQL 5.6、Oracle 11g等。元素“table”描述根元素的子元素,目标表名称采用“table”属性名称描述。目标字段名称作为“table”元素的子元素,当DOM4J解析器解析到该元素的结束标志,获得该元素值,即对应字段值。当DOM4J解析器解析到“table”元素的结束标志,获取一条完整记录,装载到目标数据库中。下面以“一对二”的关系数据模型进行举例说明,设某信息管理旧系统源数据库(SQL Server 2012)中的RYB表(人员表),对应新系统目标数据库(Oracle 11g)的JBXXB表(基本信息表)和CJB表(任职表)。源表RYB包含字段BH(编号),XM(姓名),JX(军衔),ZW(职务),CSRQ(出生日期),KM(科目),CJ(成绩);目标表JBXXB包含字段ID(编号),NAME(姓名),RANKPOST(军衔职务),AGE(年龄);目标表CJB包含字段ID(编号),SUBJECT(科目),MARK(成绩)。源表与目标表映射关系图如图4。

图4 源表与目标表数据映射关系图

根据表映射关系图生成XML数据文件内容如下:

利用DOM4J解析X ML文件,解析到元素“database”时,根据该元素属性名称获取目标数据库类型,建立与目标数据库连接;解析到元素“table”时,属性名是目标表名称,“table”元素的子元素是该表字段名称,子元素的内容是相应字段的值,根据字段名称查询数字字典,获取该字段的数据类型,把值转化为目标字段数据类型,逐条装载到目标数据库中。上述例子在数据转换过程中实现了源字段“军衔”和“职务”的合并,同时根据计算机系统日期自动计算人员年龄,减少数据库冗余。

(2)数据预处理和数据补录

数据预处理包含数据清洗和数据验证。数据清洗是根据目标数据库冗余要求,对无效数据进行删除。数据验证保证迁移过程中数据的有效性的重要环节。数据验证包括数据有效性、非空性及外键约束等。在数据迁移系统中,可以做更多的约束和正则表达式验证,包括如下:值是否为空,子表记录在主表中是否有相应记录,邮箱、电话号码等是否符合要求等。数据补录针对某些特殊情况,对无法迁移的数据进行手工补充。

3 结语

本文提出一种以XML数据文件为中间载体,构建源数据库与目标数据库的映射模型,在异构数据库之间实现数据的提取、转换、加载的数据迁移技术,解决传统手工迁移历史数据的局限性,在军队信息资源共享中减轻工作负担,提高工作效率。大幅提升我军信息系统信息的高效共享,为我军联合作战提供有力支撑。下一步研究方向是实现关系数据库与非结构化数据库之间数据的相互迁移,在军队信息化建设中实现数据的无缝融合,在联合作战中对领导的决策提供了强有力的保障。

[1]胡能发,唐为萍.基于XML的通用异构数据交换模型[J].计算机工程与设计,2010,31(8):1743-1745.

[2]赵艳妮,郭华磊.基于XML的数据迁移技术在信息系统升级中的研究与实现[J].计算机应用与软件,2014,31(12):52-54.

[3]Wycislik L,Augustyn D R,Mrozek D,et al.E-LT Concept in a Light of New Features of Oracle Data Integrator 12c Based on Datamigration within a Hospital Information System[C].International Conference:Beyond Databases,Architectures and Structures.SpringerInternational Publishing,2015:190-199.

[4]陈伟,冯力,吴沉寒.海战场栅格节点的接入与迁移管理技术研究[J].计算机与数字工程,2015(3):453-456.

[5]El Alami A,Bahaj M.Schema and Data Migration of a Relational Database RDB to the Extensible Markup Language XML[J].World Academy of Science,Engineering and Technology,International Journal of Computer,Electrical,Automation,Control and Information Engineering,2015,9(7):1729-1734.

[6]Hu Jun,Huang Hou kuan,Gao Fang.A Clustering Algorithm for Parallel Coordinates-Based Measure Model and Its Applications[J]. Journal of Nanjing University:Natural Sciences,2009,45(5):645-655.

[7]Wang Z,Chen H,Fu Y,et al.Workload Balancing and Adaptive Resource Management for the Swift Storage System on Cloud[J].Future Generation Computer Systems,2015,51:120-131.

[8]Hadley S W,Kessler M L,Litzenberg D W,et al.SafetyNet:Streamlining and Automating QA in Radiotherapy[J].Journal of Applied Clinical Medical Physics,2016,17(1):134-141.

[9]Luz M P,de Matos Nogueira J R,Cavalini L T,et al.Providing Full Semantic Interoperability for the Fast Healthcare Interoperability Resources Schemas with Resource Description Framework[C].Healthcare Informatics(ICHI),2015 International Conference on.IEEE, 2015:463-466.

[10]顾九春,刘璐.子基于XML的公路车辆智能监测信息交换研究[J].计算机应用研究,2012,29(8):2985-2987.

Research on the Application of Data Migration Technology Based on XML

PENG Zhan1,LI Mi1,YANG Nan2
(1.No.92196 Troops of PLA,Qingdao 266003;2.Rocket Force University of Engineering,Xi'an 710025)

According to the present status of"information isolated island"and"data stack"of our military information system,expounds the construction of a unified and efficient,secure and reliable military interoperability,data resource system,open every military information system,promotes the information sharing across the military cross level important public,proposes a data migration technology based on XML.The technology uses XML files as data exchange,establishes a mapping model of"Source Database-XML-Target Database",generates the mapping of source table and target table,field format conversion,merger,split,calculation and other operations according to the actual demand,achieves seamless data migration in between the old and new information system,promotes the construction of military information.

Data Migration;Information Sharing;Field Mapping

1007-1423(2017)07-0079-04

10.3969/j.issn.1007-1423.2017.07.020

彭展(1971-),男,河南夏邑人,高级工程师,学士,研究方向为信息集成

2016-12-22

2017-02-20

李密(1985-),男,山东淄博人,助理工程师,硕士,研究方向为信息安全

杨楠(1984-),女,陕西西安人,工程师,博士,研究方向为信息安全

猜你喜欢

字段异构信息系统
ETC拓展应用场景下的多源异构交易系统
试论同课异构之“同”与“异”
带钩或不带钩选择方框批量自动换
2022年信息系统与运营管理专栏征稿
基于排队论的信息系统装备维修保障效能分析
基于并行构件技术的医疗信息系统的设计与实现
多源异构数据整合系统在医疗大数据中的研究
浅谈台湾原版中文图书的编目经验
吴健:多元异构的数字敦煌
信息系统审计中计算机审计的应用