Oracle XML DB和DB2 pure XML在基于
XML电子病历实现技术方面的比较分析
覃永胜林琳王毅
(中山大学附属第一医院信息网络科广州510080)
[摘要] 讨论基于XML电子病历的数据管理中面临的挑战,即如何在一个数据库中高效、同时处理XML
数据和关系数据。分别介绍Oracle XML DB和DB2 pure XML的XML数据管理机制,通过具体实例详细说明
两种数据库具体的实现细节,通过存储、索引和查询3个方面对两种数据库软件进行对比。
[关键词] 电子病历;XML;Oracle;DB2
Comparative Analysis on Implementation Technology between Oracle XML DB and DB2 Pure XML Based on XML Electronic
Medical Record TAN Yong—sheng,LIN Lin,WANG Yi.Information Department,the First Affiliated Hospital ofSUN YAT—SEN University,
Guangzhou 510080,China
[Abstract The paper analyses the facing challenges of data mangement based on XML Electronic Medical Record,namely,how to
effectively process XML data and relational data simultaneously in one database.Introduction to XML data management mechanism of Oracle
XML DB and DB2 pure XML is clearly described.Detailed information about how to achieve what the technology expects is accurate‘
ly explained by concrete examples.Comparison of the two database softwares is measured by three aspects including storage,index and
retrieval.
[Keywords] Electronic Medical Record;XML;Oracle;DB2
随着医疗信息化发展,医院信息化已从传统的
以财务管理为核心的医院管理信息系统向以病人为
中心的临床信息系统转变。在这个转变过程中,电
子病历软件系统的实施将起到核心作用。从某种意
义上说,电子病历软件系统成功与否在很大程度上
决定了临床信息系统的成败。
然而,一方面由于病人病情复杂性和多变性,
决定电子病历结构的灵活性;另一方面,由于医
疗、教学和科研工作对电子病历要求的侧重点不
[修回日期] 2008—12—24
[作者简介】覃永胜,助理工程师;林琳,助理工程师;
王毅,助理丁程师。
·10·
同,要求病历不但要具有良好结构和完整内容,还
必须具有对某些关键数据良好查询性能。这种结构
的灵活性和对不同类型数据要求的多样性,对基于
传统关系型模型的数据库管理系统软件提出强有力
挑战。
1 Oracle XML DB和DB2 pure XML概述
随着计算机技术发展,XML技术以其结构和内
容的自我定义和自我描述等特性成为电子病历实现
的主要技术手段。但是随着大量基于XML电子病历
的产生,如何对这些XML文件进行高效管理,如何
提高对海量XML病历文件的查询性能,如何使XML
万方数据
医堂焦星堂苤蚕至QQ!笙墓圣Q鲞墓墨翅!Q堕呈丛丛Q!丛!旦!垡!!丛堕垦丛垒工!堡至鲤!:!里!:圣Q:丛鱼:墨
病历文件和已有关系数据进行良好融合,成为摆在各
大数据库软件开发商面前一个严峻的挑战。
在XML数据文件管理以及如何将XML数据和
已有的关系数据进行良好的融合,建立一个可同时
管理关系数据和XML数据的混合性数据库方面,
Oracle公司和IBM公司都提供了各自解决方案,就
是分别以Oracle XML DB和DB2 pure XML为代表的
数据库管理系统。它们都采用了W3C(World Wide
Web Consortium)的XML数据模型,都提供了对
XML Schema和XPath等技术标准的支持,都可以对
关系型数据和XML数据提供良好支持。但是,它
们在设计和实现方面还是存在一定差别。DB2 pure
XML中XML数据是以一个列的形式存储在关系表
中,这种混合数据库采用两种不同的解析方式来处
理SQL和XQuery,即一个编译器可以同时处理两种
语言,各种应用可以通过DB2 9的编译器和优化器
同时管理关系数据和XML数据。文中图表显示DB2
pure XML框架,见图1。Oracle XML DB是将XML
数据转化为SQL对象,利用关系数据的处理方法来
处理XML数据。XML数据可以存储在XMLTYPE表
中,也可以存储在含有XML—TYPE的数据列的表或
者视图中。对于有些基于Schema的XML数据可以
通过Schema映射到相应的表中,对于有些XML数
据可以以CLOB字段形式存储。图表显示了Oracle
XML DB的框架,见图2¨q o。
本文将从存储、建立索引和查询3个角度来对
两个XML数据库在电子病历的实现方面进行对比。
图2 Oracle XML DB框架
图1 DB2 pure XML框 |
|