余江维+余泉
摘 要: 在中医四诊信息融合智能化诊断系统中,四诊信息来自于多个不同的异构数据源。针对目前数据集成问题的研究现状,分析异构数据源的结构,结合中医智能化诊断系统,利用XML Schema设计MDD(元数据字典)的通用模型、处理XML文档的DOM对象模型、以及数据库连接的OLE DB技术,提出一种以XML文件为中介的数据集成方法,实现了中医智能化诊断系统中四诊信息的有机集成。
关键词: 中医; 智能化诊断系统; 数据集成; 异构数据源; XML
中图分类号: TN958?34; TP391.4 文献标识码: A 文章编号: 1004?373X(2015)22?0048?03
0 引 言
中医智能化诊断是根据中医的四诊理论,利用计算机人工智能技术进行中医证候的自动化诊断过程。在此过程中,计算机对中医知识的获取、表现方式及内部的推导机制是核心内容。中医的四诊包含望诊、闻诊、问诊、切诊等诸方面。本研究主要探讨在四诊信息的获取中,四诊信息异构数据源的集成问题。
1 异构数据源
当前数据信息源在形式上差别较大,无统一模式。数据库类型、运行平台、数据格式、数据的加载和卸载方法等千差万别。在异构数据源环境中,有文本、Oracle,Sybase,SQL Server,DB2,Access等多种类型。
不同数据源有不同的存储结构、组织表达形式、信息描述等差异,进而造成数据的抽取困难。在异构数据源环境中,必须建立一个数据源与数据源之间的中间层,作为数据通信的中间接口。集成数据库的命令通过中间接口传送到不同的数据源;各数据源把发送的数据转换成中间接口的格式,通过中间接口发送到集成数据库中[1]。
2 中医智能化诊断系统框架
按中医四诊原理,智能化诊断系统由舌诊、脉诊、面色诊、问诊及穴位诊等子系统组成,其构架如图1所示。其中,综合诊断系统与SQL数据库在服务器端,其他子系统位于不同PC的客户端。各子系统之间、子系统与综合诊断系统之间存在异构性。
3 XML数据交换技术
XML又称为可扩展标记语言(Extensible Markup Language),是一种元标识语言,提供了结构化资料的一种自我描述,是一种开放的数据结构。XML不但描述数据内容,而且描述数据的结构,使数据之间的关系得到很好的体现。XML具有结构化程度高、平台独立性强、保存格式简单、便于扩充延展及网上传输等特性,因此XML非常适合于不同数据库间的信息交换。以XML为中介实现数据交换是当前研究的热点,正成为网络资料交换的标准。
XML数据交换,一是从数据源中抽取交换的数据,转化为XML交换文档;二是对交换文档的格式进行转换,并映射数据源和目的库中的相关字段,进而把数据载入到目的库中。在不同的应用系统中,采用统一的XML标签和格式生成XML文档,是实现数据动态交换的基本要求。
目前常见的数据交换技术主要有[2]: EDI系统、中介层、数据仓库和中间数据等方式。XML采用中间方式,利用XML文件作为中间数据,提供数据通用格式,达到数据交换的目的。
4 基于XML的Web异构数据源之间的数据集成
数据集成是将多个数据库、数据多维立方体或一般文件中的数据,存放在一个格式统一的数据库中。
在数据集成的逻辑关系中,Web服务在客户与数据仓库之间。客户层必须经过XML接口访问数据源数据,保证了源数据的安全。标准XML编码,能很好地支持异构数据源之间的数据交换;同时,基于HTTP和SOAP协议的Web服务技术,让数据可以无障碍地越过防火墙。逻辑结构如图2所示。
元数据(Metadata)是“关于数据的数据”,是对数据源信息的描述[3],是标准的XML文件。元数据字典(MDD)对元数据进行管理,依靠XML的XML Schema技术设计和建模,与公共数据模型保持一致性,方便与XML数据集成器合作。元数据字典必须注册所有参与的数据源。
XML数据集成器并不存储具体数据,只存储所有数据的集成模式。XML数据集成器,对客户层屏蔽数据源的差异,向客户层保证相同的数据视图,充当数据总线,把实际数据源转变成用户数据视图。对不同数据源的数据,用XML Schema技术设计一个公共数据模式(Common Data Model,CDM)进行统一处理。不同数据源有不同的模式,对他们进行集成时,数据字典(MDD)是解决他们异构性[4??5]的重要方法。
(1) 命名异构:一是相同的对象和属性在不同的源数据中用不同的名字表示(异名同义),二是不同的对象用相同的名字表示(同名异义)。命名异构成为不同模式之间语义冲突的重要原因。在设计集成系统时,必须在元数据字典(MDD)中利用一个统一的名字表示每个数据源相应的字段。例如商品的价格,在两个数据源中,一个用price,一个用cost,在MDD中统一用Price表示。
(2) 结构异构性:指元数据信息的组成方式在数据源间各不相同。用定义全局模式的方法解决。关心的数据成分在全局模式中定义,并许可在集成数据时让某些成分为空(Nul1)。
例如,在定义全局模式时,允许价格(Price)为空。
·····
(3) 值的异构性:数据单位、数据精度在不同的数据源中不同。可以在元数据中定义数据单位、数据精度,进而与全局模式中定义的数据进行响应转换。
(4) 数据模型的异构性:不同数据源通过各自的Wrapper/Agent解决数据模型的异构性。首先定义一个公用的统一的数据模型(CDM),再把从单个数据源中提取的局部数据转换成CDM中间模型数据。事实上,单个数据源通过自身的Wrapper/Agent结构,就能把从中提取的局部数据转变成符合CDM要求的XML文档数据。
(5) 时间异构性:随着时间的推移,数据源的结构描述、属性表示和取值发生变化。可以通过MDD管理软件对数据源的元数据描述进行增添、删除或修改。
6 结 语
在数字化网络化信息环境中,以XML为代表的技术体系已经成为信息组织、处理和交换的基本技术。XML技术和数据库技术的结合,得到广泛使用。本文介绍了基于XML数据交换的实现原理,分析了利用MDD解决模式集成中异构性的方法,以及在中医智能化诊断系统中的主要应用。实验表明,基于XML Schema技术设计的MDD模型能够高效地管理异构数据源数据[6]。XML数据交换技术在中医智能化诊断系统中,对异构数据源之间的数据交换与集成有非常重要的作用。
参考文献
[1] 谢星峰,邹平.基于异构数据库环境数据抽取的系统结构研究:Java和XML的解决方案[J].计算机与数字工程,2005,33(3):28?30.
[2] 王松旺,樊秀娥,姜韬,等.XML数据交换技术在公共卫生科学数据共享中的应用[J].中国卫生工程学,2007(1):49?50.
[3] ELISA B, ELENA F. XML and data integration [J]. IEEE Internet Computing, 200l, 11(12): 75?76.
[4] BERTINO E, CATANIA B. Integrating XML and databases [J]. IEEE Internet Computing, 200l, 7(8): 84?88.
[5] CHANG Y S, HO M H, YUAN S M. Aunified interface for integrating information retrieval [J]. Computer Standards&Interfaces, 2001, 6(23): 325?340.
[6] 卢正鼎,张素智.集成Web数据的系统框架与实现方法[J].小型微型计算机系统,2003,24(10):1759?1762.