一种适用于医疗行业的快速检索方法与流程

文档序号:18884834发布日期:2019-10-15 20:44阅读:299来源:国知局
一种适用于医疗行业的快速检索方法与流程

本发明属于医疗服务领域,具体涉及一种适用于医疗行业的快速检索方法。



背景技术:

随着信息科技的发展,在各个系统中的数据规模也逐渐变大,一般的检索技术很难在大规模的数据集中准确的命中待检索数据,因此也就难以进行快速的检索。例如,在医疗领域,一个地区的医疗机构可能在上千个左右,其每天由病患看病产生的数据非常多,例如处方数据,每天都可能有15万左右的数据增长,最终使得处方数据非常庞大,检索非常耗时、

专利(cn201510844228.3)公开了一种内存数据查找方法和装置,该检索方法通过在源信息表中增加关联字段,从而提高数据的检索效率。

然而,该检索方法通过关联字段进行检索,会有可能因为关联错误导致查找结果不精确,从而影响检索的结果,进一步耗费更多的检索时间。同时,该检索方法在原始数据上加了额外的信息(关联字段)加快了它的搜索过程,该方法污染了原始数据,不利于后续对原始数据的使用。

另外,在医疗领域中,病患的医疗数据会存储在各个不同医疗机构的服务器上,上述检索方法只能运行在单台设备上,并不能对多个设备进行检索。



技术实现要素:

为解决上述问题,提供一种能够在大规模的数据集中快速的查找患者医疗信息的适用于医疗行业的快速检索方法,本发明采用了如下技术方案:

本发明提供了一种适用于医疗行业的快速检索方法,用于对多个医疗机构中存储的医疗数据集进行快速检索,所述医疗数据集包含患者信息以及对应的历史医疗信息,所述患者信息至少包括患者的患者识别号、患者性别以及患者年龄,其特征在于,包括如下步骤:步骤s1,将所述医疗数据集按预设的时间跨度划分为m个预处理数据集;步骤s2,根据性别以及年龄段对各个所述预处理数据集进行细分从而得到根据时间、性别以及年龄段细分的多个预处理子数据集;步骤s3,获取需要被检索的待检索信息,该待检索信息包含待检索患者信息以及待检索医疗信息,所述待检索患者信息包含待检索患者的待检索识别号、待检索性别以及待检索年龄;步骤s4,根据所述待检索年龄判定该待检索患者所在的待检索年龄段;步骤s5,通过m个线程分别根据所述待检索识别号对与所述待检索患者的待检索性别以及待检索年龄段相对应的m个所述预处理子数据集进行检索从而得到病患历史信息;步骤s6,一旦有任意一个所述线程检索到所述病患历史信息,就将所述病患历史信息进行输出,其中,所述步骤s5中的每一个所述线程执行如下子步骤:步骤t1,通过预设的数据检索方法对所述预处理子数据集进行所述检索;步骤t2,若检索到与所述待检索识别号相对应的所述患者信息则进入步骤t3,若没有检索到与所述待检索识别号相对应的所述患者信息则该线程进入终止状态;步骤t3,将检索到的所述患者信息以及对应的所述历史医疗信息作为所述病患历史信息,并将所述待检索医疗信息与所述历史医疗信息进行合并形成新的历史医疗信息,然后该线程进入终止状态。

本发明提供的快速检索方法,还可以具有这样的技术特征,其中,所述年龄段分为“小于10岁”、“10岁-60岁”以及“60以上”,所述步骤s2包括如下子步骤:步骤s2-1,根据所述性别的男女将预处理数据集细分为2m个第一子数据集;步骤s2-2,根据所述年龄段将所述第一子数据集划分为6m个第二子数据集作为预处理子数据集。

本发明提供的快速检索方法,还可以具有这样的技术特征,其中,所述时间跨度为按照“天”的粒度进行划分,数量m与所述医疗数据集的天数相对应。

本发明提供的快速检索方法,还可以具有这样的技术特征,其中,在所述步骤s7结束后,剩余的m-1个所述线程会继续进行所述步骤t1至t3直到进入终止状态。

本发明提供的快速检索方法,还可以具有这样的技术特征,其中,所述数据检索方式为通过哈希表进行所述检索。

发明作用与效果

根据本发明的由于将医疗数据集按时间跨度分为m个预处理数据集,进一步根据性别以及年龄段将预处理数据集细分为预处理子数据集,因此在进行检索时能够直接通过m个线程分别根据待检索信息中的患者性别以及患者年龄直接对相应的m个预处理子数据集进行检索,从而大幅减少了被检索的数据集的规模,加快检索速度;同时,由于在线程检索到病患历史信息后,还会将待检索医疗信息与历史医疗信息进行合并,从而实现了在每一个预处理数据集中对患者医疗信息的更新,因此,一旦某个线程检索到患者的识别号,就能够检索到该患者所有历史的医疗信息,更进一步地加快检索的命中率。另外,由于根据一个预处理数据集就可以检索到患者所有的历史医疗信息,因此本发明的快速检索方法还能够支持在多设备上运行,从而实现了在由多个子数据集合并形成的大容量数据集上进行查询的功能,还保证了检索过程的时间复杂度仅为常量级(o(1))。

附图说明

图1是本发明实施例中快速检索系统的结构框图;

图2是本发明实施例中医疗服务器的结构框图;

图3是本发明实施例中单个线程进行检索过程的流程图;

图4是本发明实施例中快速检索方法的流程图;以及

图5是本发明实施例中检索终端的结构框图。

具体实施方式

为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下结合实施例及附图对本发明的适用于医疗行业的快速检索方法作具体阐述。

<实施例>

本实施例中,适用于医疗行业的快速检索方法通过快速检索系统来进行。

图1是本发明实施例中快速检索系统的结构框图。

如图1所示,快速检索系统100包括至少一个医疗服务器1、至少一个检索终端2、以及通信网络3。

本实施例中,各个医疗服务器1分别由不同的医疗机构(例如医院)所持有,检索终端2由进行检索动作的医护人员持有,检索终端2通过通信网络3与各个医疗服务器1相通信连接。执行本发明快速检索方法的计算机程序设置在各个医疗服务器2中。

图2是本发明实施例中医疗服务器的结构框图。

如图2所示,医疗服务器1包括数据集存储部11、数据集预处理部12、数据集细分部13、待检索信息获取部14、年龄段判定部15、线程生成分配部16、检索结果输出部17、服务侧通信部18以及服务侧控制部19。

数据集存储部11用于存储医疗机构中日常产生的医疗数据并形成医疗数据集。

本实施例中,医疗数据集至少包含患者信息以及对应的历史医疗信息,该患者信息至少包括患者的患者识别号(例如患者的社保号)、患者性别以及患者年龄,历史医疗信息是患者的在看病时产生的医疗信息(例如诊断信息、处方信息等)。本实施例中,历史医疗信息为患者的历史处方信息。

数据集预处理部12用于将医疗数据集按预设的时间跨度划分为m个待处理数据集。

本实施例中,时间跨度为按照“天”的粒度进行划分,例如,当医疗数据集时间跨度为190301-190315时,数据集划分部1就根据时间跨度将目标集合初步划分为15个待处理数据集。

数据集细分部13用于根据性别以及年龄段将各个待处理数据集进一步细分得到多个预处理子数据集。

本实施例中,性别分为“男”、“女”,年龄段分为“小于10岁”(对应儿童)、“10岁-60岁”(对应成人)以及“60以上”(对应老人)。因此,数据集细分部13细分得到的预处理子数据集的数量为6m个。

数据集细分部13具有第一细分单元131以及第二细分单元132。

第一细分单元131用于根据性别的男女将预处理数据集细分为2m个第一子数据集。

第二细分单元132用于根据年龄段将第一子数据集划分为6m个第二子数据集作为预处理子数据集。

本实施例中,以数据集预处理部12划分的15个待处理数据集为例,在第一细分单元131根据性别把该15个集合再划分成30个集合,然后第二细分单元132针对每个集合再根据年龄段细分为3个子集合后,则现在共有90个集合,此时,其中某个集合的标识信息为“1909303_男_儿童”。

本实施例中,数据集预处理部12以及数据集细分部13可以根据实际需求设定为在一定时间就对医疗数据集进行重新划分得到新的待处理数据集,该一定时间可以为间隔1小时执行一次,也可以在每日/每周的固定时间进行。

待检索信息获取部14用于获取医护人员通过检索终端2发送的待检索信息。

本实施例中,待检索信息包含待检索患者信息以及待检索医疗信息,该待检索患者信息以及待检索医疗信息的数据结构与医疗数据集中的患者信息以及医疗信息的数据结构相同,即,该待检索患者信息至少包括待检索患者的待检索识别号、待检索性别以及待检索年龄,待检索医疗信息为待检索处方信息。例如,医护人员输入的待检索患者信息为“社保号0002289912,男,张三,61岁”(当前时间为190315)。

年龄段判定部15用于根据待检索信息获取部14获取的待检索年龄判定待检索患者的待检索年龄段。

本实施例中,待检索年龄段(年龄段)的划分区间为“小于10岁”、“10岁-60岁”以及“60以上”,年龄段判定部15根据待检索年龄的所在区间判定待检索患者是儿童、成人或是老人。

线程生成分配部16用于根据预处理数据集的数量m生成相应数量的线程,并分别让各个线程对与待检索患者的待检索性别以及待检索年龄段相对应的预处理子数据集进行检索,从而得到病患历史信息。

本实施例中,线程生成分配部16生成了15个线程,以上述待检索患者信息“社保号0002289912,男,张三,61岁”为例,该患者的性别为“男”、年龄段对应“老人”,因此线程生成分配部16让各个线程进行检索的15个预处理子数据集分别对应“190301_男_老人,190302_男_老人…190315_男_老人”。

图3是本发明实施例中单个线程进行检索过程的流程图。

如图3所示,单个线程进行检索过程的流程图包括如下步骤:

步骤t1,通过预设的数据检索方法对预处理子数据集进行检索,然后进入步骤t2;

步骤t2,若检索到与待检索识别号相对应的患者信息则进入步骤t3,若没有检索到与待检索识别号相对应的患者信息则该线程进入终止状态;

步骤t3,将检索到的患者信息以及对应的历史医疗信息作为病患历史信息,然后进入步骤t4;

步骤t4,将待检索医疗信息与历史医疗信息进行合并形成新的历史医疗信息,然后该线程进入终止状态。

本实施例中,数据检索方法为通过哈希表进行数据检索,通过哈希表,可以较适合地建立一个存储键-值对(key-valuepair)类型的数据,例如“社保号_姓名_性别_处方信息”的数据结构。进一步,通过定义有一个映射函数(哈希函数):f(x)=keymodd,并设定社保号为key(键),就能够根据该函数将“社保号_姓名_性别_处方信息”存储在大小为d的哈希表中的相应位置f(x)。

在检索时,线程根据待检索识别号(社保号0002289912)计算映射函数f(x)=keymodd,就能够很快地得到对应位置的地址f(x),进一步根据地址f(x)检索到相应的数据(即病患历史信息)。

同时,线程在检索到病患历史信息后,会将当前正在查询的待检索医疗信息(待检索处方信息)与哈希表中的历史处方信息进行合并,例如,历史处方信息可以为一个由多个处方信息组成的处方列表,待检索处方信息被添加到该处方列表中。

检索结果输出部17用于在任意一个线程检索到病患历史信息,就将该病患历史信息输出至检索终端2让相应的医护人员查看。

本实施例中,在检索结果输出部17输出病患历史信息后,其他14个线程会继续进行检索,如未找到“张三”相关处方信息,则线程终止;如该14个线程中的一个或者多个线程,也找到了社保号“0002289912”的处方列表,则将作为医护人员输入的处方(即待检索处方信息)加入该处方列表,然后线程终止。

服务侧通信部18用于进行医疗服务器1的各个构成部件之间以及医疗服务器1与其他装置之间的数据交换。

服务侧控制部19包含有用于对医疗服务器1的各个构成部件工作进行控制的计算机程序。

图4是本发明实施例中快速检索方法的流程图。

如图4所示,快速检索方法包括如下步骤:

步骤s1,数据集预处理部12将医疗数据集按预设的时间跨度划分为m个预处理数据集,然后进入步骤s2;

步骤s2,数据集细分部13根据性别以及年龄段对各个步骤s1中划分的预处理数据集进行细分从而得到根据时间、性别以及年龄段细分的6m个预处理子数据集,然后进入步骤s3;

步骤s3,待检索信息获取部14从检索终端2中获取需要被检索的待检索信息,该待检索信息包含待检索患者信息以及待检索医疗信息,待检索患者信息包含待检索患者的待检索识别号、待检索性别以及待检索年龄,然后进入步骤s4;

步骤s4,年龄段判定部15根据步骤s3中获取的待检索年龄判定该待检索患者所在的待检索年龄段,然后进入步骤s5;

步骤s5,线程生成分配部16通过m个线程分别根据待检索识别号对与待检索患者的待检索性别以及待检索年龄段相对应的m个预处理子数据集进行检索从而得到病患历史信息,然后进入步骤s6;

步骤s6,一旦有任意一个线程检索到病患历史信息,检索结果输出部17就将病患历史信息进行输出,然后进入结束状态。

本实施例的快速检索方法中,步骤s1以及步骤s2为预先执行完成,从而在多次获取到医护人员输入的待检索信息后重复执行步骤s3至步骤s6。

图5是本发明实施例中检索终端的结构框图。

如图5所示,检索终端2具有画面存储部21、输入显示部22、检索侧通信部23以及检索侧控制部24。

画面存储部21用于存储待检索信息输入画面以及检索结果显示画面。

待检索信息输入画面用于在医护人员启动检索终端2时显示并让医护人员输入待检索信息。

本实施例中,待检索信息输入画面至少包含多个输入框以及一个确认按钮,用于让医护人员在输入框中输入待检索信息,并在输入完成后通过确认按钮确认查询。

检索结果显示画面用于在检索终端2收到医疗服务器1输出的病患历史信息时显示并在该画面中显示该病患历史信息让医护人员查看。

本实施例中,医护人员能够通过检索结果显示画面显示的病患历史信息确认患者的历史医疗情况,例如确认患者的历史处方信息,从而对该患者的当前处方进行分析判断。

输入显示部22用于显示上述画面,从而让医护人员通过这些画面完成相应的人机交互。

检索侧通信部23用于进行检索终端2的各个构成部件之间以及检索终端2与其他装置之间的数据交换。

本实施例中,检索侧通信部23用于将医护人员待检索信息发送给医疗服务器1并对医疗服务器1输出的病患历史信息进行接收。

本实施例中,检索侧通信部23可以同时发送多个检索请求给各个医疗服务器,从而实现同时对多个医疗机构的医疗数据集进行检索与更新。

检索侧控制部24包含有用于对检索终端2的各个构成部件工作进行控制的计算机程序。

实施例作用与效果

根据本实施例提供的快速检索方法,由于将医疗数据集按时间跨度分为m个预处理数据集,进一步根据性别以及年龄段将预处理数据集细分为预处理子数据集,因此在进行检索时能够直接通过m个线程分别根据待检索信息中的患者性别以及患者年龄直接对相应的m个预处理子数据集进行检索,从而大幅减少了被检索的数据集的规模,加快检索速度;同时,由于在线程检索到病患历史信息后,还会将待检索医疗信息与历史医疗信息进行合并,从而实现了在每一个预处理数据集中对患者医疗信息的更新,因此,一旦某个线程检索到患者的识别号,就能够检索到该患者所有历史的医疗信息,更进一步地加快检索的命中率。另外,由于根据一个预处理数据集就可以检索到患者所有的历史医疗信息,因此本发明的快速检索方法还能够支持在多设备上运行,从而实现了在由多个子数据集合并形成的大容量数据集上进行查询的功能,还保证了检索过程的时间复杂度仅为常量级(o(1))。

实施例中,由于各个线程采用哈希表进行检索,因此进一步加快了检索速度,并且由于哈希表与原始数据分离,因此不会对原始数据产生污染。

实施例中,由于通过多个线程对进行检索,并且在检索过程中完成数据的更新,因此不仅可以在多个不同的设备上同时进行检索,还解决了多个设备的数据集的数据不同步问题。

上述实施例仅用于举例说明本发明的具体实施方式,而本发明不限于上述实施例的描述范围。

例如,实施例中,各个线程的数据检索方法为通过哈希表进行检索。在其他实施例中,各个线程所采用的数据检索方法还可以是其他数据结构,比如通过线性列表、跳跃列表等列表进行检索。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1