基于MML电子病历存储模型研究
扫描二维码
随时随地手机看文章
本文通过分析现今主流的数据库存储模型,对基于MML标准的电子病历构建存储模型。针对对象一关系型和关系型2种存储模型比较分析,给出了基于MML标准的电子病历系统的数据库存储模型设计方案。
1 引 言
MML(Medical Markup Language)作为一套不同医疗信息系统之间的数据交换规格于1995年开发,是一套比较完整的使用XML结构电子病历交换标准,目前最新版本是3.0。采用MML标准可以将基于异构电子病历的医疗信息系统很好的结合起来,实现数据的共享。
目前大多数采用电子病历医疗信息系统的医院都使用关系型数据库,主要考虑到关系型数据库有强大易用的查询分析工具和易与医院遗留系统整合的能力。但是由于基于MML的电子病历映射到关系型数据库时,原有的层次结构信息将丢失,此外关系型数据库对基于MML的电子病历内的嵌套和递归结构支持也较弱。
2数据库类型选择
针对医疗信息系统的研究发现,两类数据库系统操作是必须的:操作类型(例如,统计、分析);研究类型(例如,查询)。在分析应当选取何种类型的数据库存储模型作为研究对象时,首要前提是要支持这两类操作。现有3种数据库系统可以作为MML电子病历的存储模型,分别是XML原生数据库、关系型数据库和对象一关系型数据库。
XML原生数据库是专门为存储XML数据设计的,支持DOM模型和断言查询。但现在缺乏商业级的产品,同时开发人员需要花费相当的时间来熟悉和适应,在未来可能作为XML存储的重要应用但这里不作为分析研究的重点。
对于关系型数据库系统,当MML电子病历映射到数据库时,文档内在的层次关系将丢失。这可能不影响操作类型的操作,可是对审计跟踪将有一定影响。作为现在主流的数据库系统,关系型数据库系统有丰富强大的查询和分析工具,各种优化技术又使得性能高效,因此将其作为研究MML电子病历系统存储模型的对象。
相比之下对象一关系数据库作为较新的数据库系统,其在关系型数据库和面向对象数据库之间搭起了一座桥梁。对象一关系数据库基于关系模型,存储结构和数据访问都是基于标准的面向对象版本的SQL。因为引进了OO概念,对象一关系数据库也附加了、继承和多态等OO特性。对象能存储在表内并包含方法。由于扩展了面向对象的特性,支持复杂数据类型,对象一关系数据库比传统关系型数据库更适合作为MML电子病历的存储模型。
MML电子病历包括各种检验表、图形等对象需要专门的方法来查询,在这种情形下对象一关系型数据库就尤显优势。
3存储模型设计和实现
采用传统的ANSI三层数据库模型(外层、逻辑或内层、物理层)来设计MML电子病历存储模型。概念设计阶段的目标是构造出独立于具体数据库管理系统的数据库概念模式。在逻辑层设计的过程中,选用特定的数据模型将概念模式映射到逻辑模式。最后一步按照物理存储结构开发数据库的规范,底层算法用来设计执行数据榆索和数据管理。
3.1 基于MML电子病历的ER模型
在概念设计阶段采用广为使用的实体一关系(ER)模型。根据MML电子病历处理过程,设计了包括3个实体和8种关系的模型,3个实体分别为:Person,MML-emr和Organization。
针对设计出的ER模型(见图1),町以选用对象导向的方法或传统的纯关系数据模型方法。下而将详细讨论对比两种方法,找出各自的优缺点。
更多医疗电子信息请关注:21ic医疗电子频道