您好, 访客   登录/注册

试论全文检索引擎技术在电子病历中的应用

来源:用户上传      作者:

  摘   要:全文检索引擎技术是指利用计算机程序,将文章中所有词组建立与之相对应的索引,用户进行查询时,可以根据索引将查找结果快速传递给用户的检索方式。本文结合全文检索引擎技术的基本步骤,通过对Lucene技术、Ajax技术、Struts技术在电子病历中的应用研究,以提高临床数据的利用效率。
  关键词:全文检索引擎技术  电子病历  数据
  中图分类号:G354.49                              文献标识码:A                       文章编号:1674-098X(2019)02(b)-0138-02
  电子病历是将病人所有的医疗记录(包括纸张病历)通过电子设备进行存储、管理、传输的系统。传统电子病历存储方式相对分散,并且很多信息不能作为检索条件,降低了医疗数据的利用效率。全文检索引擎技术可以将病历信息进行统一转换,使检索信息更加全面,为病历管理工作提供更加便捷的服务。
  1  全文检索引擎技术的基本步骤
  1.1 数据采集
  数据采集是将准备加载到数据库中的相关数据进行收集,并按照标准进行数据分类,为数据预处理做准备[1]。所加载的数据可以通过多种途径获得,就电子病历而言,常见的数据来源有:人工录入建库、电脑生成的文件、图文处理后得到的文件、计算机上传的文件等。
  1.2 数据预处理
  数据来源的不同造成获得数据格式的多种多样,对此需要对数据进行格式规范化处理,方便数据检索;在规范数据格式后,进行文本的预处理,将文本中的词组进行批式标引,使其在检索时不会受到数据库结构的影响,提高检索效率;在进行批示标引后,对文本中数据添加属性标引,使数据分类更加清晰。
  1.3 数据库建立
  将整理好的数据通过拷贝、输入等方式加载至数据库中。数据库建立的过程中,可以选择单篇加载或批量加载两种方式。单篇加载与文献上传方式类似,一次只加载一篇文章;批量方式可以单次加载多篇,适用于数据数量较多,需要集中加载的情况。
  1.4 数据检索和维护
  数据库在建立之后,用户可以利用系统的检索功能对数据库中数据进行检索,通过关键词搜索获得所需的重要信息。数据库在建立之后需要对数据内容进行不定时更新,添加新的属性标引或数据信息。
  2  全文检索引擎技术在电子病历中的应用
  2.1 Lucene技术
  2.1.1 Lucene的组成结构
  第一,语言分析器。由org.apache.lucene.analysis语言分析包构成,主要用于抽象类切词Analyzer的管理,按照切分词规则进行数据库中文本内容类别的划分;第二,文档存储管理结构。由org.apache.lucene.document数据包构成,该数据包类别较少,主要用于Field信息的储存。Document属于Field的子机构,是为了方便存储Field相关数据而构建的管理结构;第三,数据索引管理结构。由org.apache.lucene.index索引包构成,主要负责索引信息的建立和删除。索引管理结构属于Lucene检索系统的核心组成,用户在检索时,不需要了解所有正文内容,只需要了解基本索引信息就可以完成检索,提升了检索效率[2]。第四,数据查询分析结构。由org.apache.lucene.queryParser数据包组成,用户在进行检索时,该结构对用户所提供的关键词进行词组间信息关系判定,执行与、或、非等相关判定;第五,检索管理结构。由org.apache.lucene.search包组成,根据数据查询分析结构所提供的分析结果,检索管理结构进行数据库中对应属性文章的匹配,并在检索结果处进行展示;第六,存储管理结构。由org.apache.lucene.store组成,在完成一次检索之后,该结构对检索结果进行存储管理,不定时进行数据库数据补充,使数据库数据信息更加全面。
  2.1.2 Lucene在电子病历中的实际应用
  首先,建立索引机制。Lucene将电子病历中的所有内容添加到数据库中,将文本中内容进行定义和划分,使其能够划分成多个字段;在组建过程中,需要對划分好的多字段文本进行切词处理,处理规则参照org.apache.lucene.analysis语言分析包规则进行;将切分后的词组添加到索引机制当中,方便查询时使用。其关键代码如下:IndexWriterwriter=newIndexWriter(通过索引机制建立新的检索机制);FileInputStreamis=newFileInputStream(确定Document对象);writer.addDocument(doc)(将文本内容写入索引机制)。
  其次,用户进行检索。用户在进行电子病历查询时,确定查询条件,并通过运算分析词组间关系。如用户需要查询“肾脏”和“泌尿系统”相关的记录,可以输入“肾脏、泌尿系统”来进行查询。分析器在接到关键词时,对词组进行切词处理,并判定两者存在“与”的关系,核心系统得到的查询条件为“肾脏”与“泌尿系统”。根据此条件进行索引机制中相关内容的查询。
  最后,用户得到检索结果。关键词在索引机制查询过程中,利用contents字段进行数据库内容搜索,所有的搜索结果利用path字段进行输出,实现信息的快速检索。
  2.2 Ajax技术
  2.2.1 Ajax技术的工作原理   Ajax(Asynchronous JavascriptAndXML)是借助交互式网络应用的异步通信技术[3]。用户在进行检索时,Ajax技术类似于在客户端与服务器中添加了中间环节,使服务器响应时间与用户操作时间异步化。对于部分用户请求,Ajax可以利用自身系统进行解决,减少用户等待时间。如果出现新问题,Ajax会代替用户向服务器提交申请,提高用户体验度。
  2.2.2 Ajax技术在电子病历中的应用
  第一,建立XML Http Request。利用Internet Explorer 将目标对象ActiveX对象进行引入,以此构建XML Http。受到不同Internet Explorer的影响,为了实现多版本浏览器中XML Http的兼容性,需要仔细分析不同XML Http特性,创建XML Http Request类。使用户在进行检索时,不会受到XML Http影响造成检索失败。而创建XML Http Request类的主要代码如下:xmlhttp--request = new XML Http Request()。
  第二,根据检索内容编写响应函数。服务器在接受到用户请求时,Http需要明确用户请求需要使用哪种类型Java Script响应函数进行处理。在实际操作过程中,可以将待处理对象属性进行分类,并把待处理对象的on ready stste change标记成Java Script响应函数的名称,使请求能够得到准确处理。
  第三,将目标对象请求进行发送。在定义目标对象请求处理方式之后,采用Http中open()与send()两种请求类方法进行服务器请求。
  第四,服务器接收到服务请求后,相应函数开始进行数据处理分析,在处理过程中,函数会检查Http服务器此时相应的状态值,在确定其处于正常工作状态后,进行处理后数据的显示。
  2.3 Struts技术
  2.3.1 Struts技术工作原理
  Struts技术是借助Sun J2EE平台所构成的Model-View-Controller(模型-视图-控制器)框架。Struts技术在使用过程中通过Servlet 和JSP技术进行数据分析,并将分析结果利用平台进行呈现,以此实现电子病历相关信息的快速检索。
  2.3.2 Struts技术在电子病历中的应用
  第一,构建Struts Web目录。根据电子病历数据库类型进行目录路径构建。如WEB-INF 、classes等;第二,数据填充。将电子病历中所有的数据和Struts 各个API库中的文件考入既定的Web程序当中。对于Struts 中已经标注的文件,将数据信息拷贝至指定路径当中,提高数据库中数据信息总量;第三,编写源文件。将数据库中的信息进行编写,筛选出提示错误的信息,将现有信息进行规范化处理,利用MVC框架将规范化的信息进行匹配;第四,处理请求信息。Struts在接收到用戶请求时,利用数据分析原则进行切词,将其划分为不同单元(最小为两个字节),并且利用函数对处理后词组关系进行判定;第五,处理请求。在接收到Struts处理的数据请求后,根据相关规则,进行数据信息匹配,使用户得到想要的数据信息。其主要运行代码为:<html:form action=”/bpl”>和<bean:define name=”bplAForm” property=”bplBForm” id=”bpl B”。在此运行过程中,Struts进行<bean:de-fine/>标记,在出现信息请求时,所标记程序开始在系统内部工作,得到由Action Form系统拓展形成的BPLAForm,并在输出之前校验BPLAForm信息的准确性。利用Struts技术可以加快电子病历数据库建立速度,并且Struts提供了基本的构建模型,只需要根据模型进行数据补充,可以在较短时间内完成数据库建立,使代码的重复使用率提高,有效减少数据库的维护费用。
  3  结语
  综上所述,Lucene技术可以提高信息检索速度,Ajax技术可以进行数据检索分流,提高用户体验度,Struts技术可以加快数据库构建速度,减少维护费用。将全文检索引擎技术应用在电子病历中,对于提高检索速度、提升信息获取精确度有着重要意义。
  参考文献
  [1] 鲁曦.基于Lucene的购物网站商品全文检索功能的设计与实现[D].北京工业大学,2018.
  [2] 赵景越,徐松青,蔡连忠.全文检索引擎技术在电子病历中的应用[J].数字技术与应用,2018(12):89-90.
  [3] 徐财应.基于Lucene的搜索引擎技术的研究与改进[D].长春理工大学,2018.
转载注明来源:https://www.xzbu.com/1/view-14797657.htm