基于哈希值的医疗文件冗余处理系统及方法与流程

文档序号:11155465阅读:406来源:国知局
基于哈希值的医疗文件冗余处理系统及方法与制造工艺

本发明涉及医疗信息化领域,尤其涉及一种基于哈希值的医疗文件冗余处理系统及方法。



背景技术:

医疗文件是病人在医院诊断治疗全过程的原始记录,它包含有电子病历、医学影像文件、疾病百科文件、政府医疗政策文件、医疗科室介绍文件等等。随着医院计算机管理网络化,医疗文件应运而生。作为科技进步的产物,医疗文件因其方便记录,易存储等优点被越来越广泛的应用在医疗系统中。

进一步地,随着移动医疗的发展,现在越来越多的患者或医生都使用移动终端(例如,手机、平板电脑等触摸屏的移动终端)查看医疗文件并存储医疗文件,导致服务器可能保存多个相同的医疗文件,如此造成服务器上医疗文件的冗余且降低了服务器的访问速度,因此有必要提供一种对服务器上重复的医疗文件进行处理的信息化系统。



技术实现要素:

本发明的主要目的在于提供一种基于哈希值的医疗文件冗余处理系统及方法,旨在解决对服务器上冗余的医疗文件进行清理的技术问题。

为实现上述目的,本发明提供了一种基于哈希值的医疗文件冗余处理系统,运行于服务器中,所述服务器通过网络与客户端通信连接,该系统包括:

计算模块,用于计算所述服务器上每个医疗文件的哈希值;

查找模块,用于从计算的哈希值中查找相同的哈希值,并将相同的哈希值归为一组,将每组中相同的哈希值及该组中相同的哈希值对应的医疗文件的存储路径保存于一个哈希关联列表中;

删除模块,用于在每一个哈希关联列表中选定一个存储路径,并删除该哈希关联列表中未选定的存储路径所对应的医疗文件;

修改模块,用于在每一个哈希关联列表修改所删除的医疗文件对应的标识;

接收模块,用于接收客户端发送过来的医疗文件;

所述计算模块,还用于计算所述客户端发送过来的医疗文件的哈希值;

所述判断模块,用于判断所述客户端发送过来的医疗文件的哈希值是否有对应的哈希关联列表;

所述删除模块,还用于当所述客户端发送过来的医疗文件的哈希值有对应的哈希关联列表,删除所述客户端发送过来的医疗文件;及

保存模块,用于当所述客户端发送过来的医疗文件的哈希值没有对应的哈希关联列表,将所述客户端发送过来的医疗文件保存于服务器中。

优选的,所述哈希关联列表包括四个栏位,所述四个栏位分别为文件名、哈希值、存储路径及标识。

优选的,所述计算模块计算所述服务器上每个医疗文件的哈希值的方式如下:遍历服务器上的医疗文件,并通过哈希算法计算每个医疗文件的哈希值。

优选的,所述计算模块通过哈希算法计算所述服务器上每个医疗文件的哈希值,其中,所述哈希算法为MD5算法。

优选的,所述判断模块判断所述客户端发送过来的医疗文件的哈希值是否有对应的哈希关联列表的方式如下:判断服务器中是否有哈希关联列表包含所述客户端发送过来的医疗文件的哈希值,若服务器中有一个哈希关联列表包含所述客户端发送过来的医疗文件的哈希值,则该哈希关联列表为所述客户端发送过来的医疗文件的哈希值对应的哈希关联列表。

另一方面,本发明还提供一种基于哈希值的医疗文件冗余处理方法,应用于服务器中,所述服务器通过网络与客户端通信连接,该方法包括如下步骤:

计算所述服务器上每个医疗文件的哈希值;

从计算的哈希值中查找相同的哈希值,并将相同的哈希值归为一组,将每组中相同的哈希值及该组中相同的哈希值对应的医疗文件的存储路径保存于一个哈希关联列表中;

在每一个哈希关联列表中选定一个存储路径,并删除该哈希关联列表中未选定的存储路径所对应的医疗文件;

在每一个哈希关联列表修改所删除的医疗文件对应的标识;

接收客户端发送过来的医疗文件;

计算所述客户端发送过来的医疗文件的哈希值;

当所述客户端发送过来的医疗文件的哈希值有对应的哈希关联列表,删除所述客户端发送过来的医疗文件;及

当所述客户端发送过来的医疗文件的哈希值没有对应的哈希关联列表,将所述客户端发送过来的医疗文件保存于服务器中。

优选的,所述哈希关联列表包括四个栏位,所述四个栏位分别为文件名、哈希值、存储路径及标识。

优选的,所述计算所述服务器上每个医疗文件的哈希值的步骤包括如下步骤:遍历服务器上的医疗文件,并通过哈希算法计算每个医疗文件的哈希值。

优选的,所述服务器上每个医疗文件的哈希值通过哈希算法计算,其中,所述哈希算法为MD5算法。

优选的,所述判断所述客户端发送过来的医疗文件的哈希值是否有对应的哈希关联列表的步骤包括如下步骤:判断服务器中是否有哈希关联列表包含所述客户端发送过来的医疗文件的哈希值,若服务器中有一个哈希关联列表包含所述客户端发送过来的医疗文件的哈希值,则该哈希关联列表为所述客户端发送过来的医疗文件的哈希值对应的哈希关联列表。。

本发明采用上述技术方案,带来的技术效果为:本发明采用哈希值比对的方式寻找相同的医疗文件,并删除重复的医疗文件,加快了服务器的访问速度,降低了服务器的冗余。

附图说明

图1是本发明基于哈希值的医疗文件冗余处理系统的应用环境示意图;

图2是本发明基于哈希值的医疗文件冗余处理系统的优选实施例的模块示意图;

图3是本发明基于哈希值的医疗文件冗余处理方法的优选实施例的流程图;

图4是本发明哈希关联列表的示意图。

本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明的具体实施方式、结构、特征及其功效,详细说明如下。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参照图1所示,图1是本发明基于哈希值的医疗文件冗余处理系统的应用环境示意图。本发明中的基于哈希值的医疗文件冗余处理系统30运行于服务器3上。所述服务器3通过网络2与多个客户端1通信连接。所述服务器3上存储有各种类型的医疗文件(例如,电子病历、医学影像文件、疾病百科文件、政府医疗政策文件、医疗科室介绍文件等等)。

在本实施例中,所述网络2可以是有线通讯网络或无线通讯网络。所述网络优选为无线通讯网络,包括但不限于,GSM网络、GPRS网络、CDMA网络、TD-SCDMA网络、WiMAX网络、TD-LTE网络、FDD-LTE网络等无线传输网络。。

所述客户端1可以是,但不限于,智能手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、个人电脑、电子看板等其它任意合适的便携式触摸屏电子设备。所述客户端1用于通过网络2访问所述服务器3,并获取服务器3上的医疗文件。所述客户端1还用于产生医疗文件,并将所述产生的医疗文件发送至服务器3保存。

参照图2所示,是本发明基于哈希值的医疗文件冗余处理系统的优选实施例的模块示意图。在本实施例中,所述基于哈希值的医疗文件冗余处理系统30应用于服务器3。该服务器3包括,但不仅限于,基于哈希值的医疗文件冗余处理系统30、存储单元31、处理单元32、及通讯单元33。

所述的存储单元31可以为一种只读存储单元ROM,电可擦写存储单元EEPROM、快闪存储单元FLASH或固体硬盘等。

所述的处理单元32可以为一种中央处理器(Central Processing Unit,CPU)、微控制器(MCU)、数据处理芯片、或者具有数据处理功能的信息处理单元。

所述的通讯单元33为一种具有远程通讯功能的通讯接口,例如支持GSM、GPRS、WCDMA、CDMA、TD-SCDMA、WiMAX、TD-LTE、FDD-LTE等无线通讯技术的通讯接口,支持USB、网线的有线通讯接口。

所述基于哈希值的医疗文件冗余处理系统30包括,但不局限于,计算模块311、查找模块312、删除模块313、修改模块314、接收模块315、判断模块316及保存模块317,本发明所称的模块是指一种能够被所述服务器3的处理单元32执行并且能够完成固定功能的一系列计算机程序指令段,其存储在所述服务器3的存储单元31中。

所述计算模块311用于计算服务器3上每个医疗文件的哈希值。具体地说,所述计算模块311遍历服务器3上的医疗文件,并通过哈希算法计算每个医疗文件的哈希值。所述哈希算法可以是,但不限于,MD5算法。

所述查找模块312用于从计算的哈希值中查找相同的哈希值,并将相同的哈希值归为一组,将每组中相同的哈希值及该组中相同的哈希值对应的医疗文件的存储路径保存于一个哈希关联列表中。一般而言,由于哈希值的唯一性,若查找到相同的哈希值,表明服务器3中存在相同的医疗文件。在本实施例中,所述哈希关联列表包括多个相同的哈希值及每个哈希值对应医疗文件的存储路径。需要说明的是,所述哈希关联列表中的哈希值都是相同的。所述服务器3中有多组相同的医疗文件,则所述查找模块312获得多组相同的哈希值并对每组相同的哈希值生成一个哈希关联列表。如图四所示,所述哈希关联列表至少包括四个栏位,所述四个栏位分别为文件名(表示医疗文件的名称)、哈希值(表示医疗文件的哈希值)、存储路径(表示医疗文件在服务器3上的存储路径)及标识(表示医疗文件是否保留于服务器3中,其中,Y表示保留,N表示删除)。进一步地,为了方便起见,图4中的字母B仅仅是代指哈希值,并不表示哈希值为B,而图4中的字母X1至X9也仅仅是代指存储路径,并不表示X1至X9为存储路径。

所述删除模块313用于在每一个哈希关联列表中选定一个存储路径,并删除该哈希关联列表中未选定的存储路径所对应的医疗文件。在本实施例中,所述删除模块313选定存储路径X1,并在服务器3中删除其余存储路径为X2至X9对应的医疗文件。

所述修改模块314用于在每一个哈希关联列表修改所删除的医疗文件对应的标识。具体地说,如图4所示,所述修改模块314将哈希关联列表中X2至X9对应的标识从Y修改为N。

所述接收模块315用于接收客户端1发送过来的医疗文件。所述客户端1发送过来的医疗文件的哈希值暂存于服务器3的内存中。

所述计算模块311还用于计算所述客户端1发送过来的医疗文件的哈希值。

所述判断模块316用于判断所述客户端1发送过来的医疗文件的哈希值是否有对应的哈希关联列表。所述判断模块316通过所述客户端1发送过来的医疗文件的哈希值进行查询,判断是否有哈希关联列表包含所述客户端1发送过来的医疗文件的哈希值,若服务器3中有一个哈希关联列表包含所述客户端1发送过来的医疗文件的哈希值,则该哈希关联列表为所述客户端1发送过来的医疗文件的哈希值对应的哈希关联列表。

所述删除模块313用于当所述客户端1发送过来的医疗文件的哈希值有对应的哈希关联列表,删除所述客户端1发送过来的医疗文件。所述客户端1发送过来的医疗文件的哈希值从所述服务器3的内存中删除。

所述保存模块317用于当所述客户端1发送过来的医疗文件的哈希值没有对应的哈希关联列表,将所述客户端1发送过来的医疗文件保存于服务器3中。所述客户端1发送过来的医疗文件的哈希值保存于服务器3的存储单元31中或数据库(图中未示出)中。

参照图3所示,是本发明基于哈希值的医疗文件冗余处理方法的优选实施例的流程图。在本实施例中,所述的基于哈希值的医疗文件冗余处理方法应用于服务器3,该方法包括以下步骤:

步骤S11:所述计算模块311计算服务器3上每个医疗文件的哈希值。具体地说,所述计算模块311遍历服务器3上的医疗文件,并通过哈希算法计算每个医疗文件的哈希值。所述哈希算法可以是,但不限于,MD5算法。

步骤S12:所述查找模块312从计算的哈希值中查找相同的哈希值,并将相同的哈希值归为一组,将每组中相同的哈希值及该组中相同的哈希值对应的医疗文件的存储路径保存于一个哈希关联列表中。一般而言,由于哈希值的唯一性,若查找到相同的哈希值,表明服务器3中存在相同的医疗文件。在本实施例中,所述哈希关联列表包括多个相同的哈希值及每个哈希值对应医疗文件的存储路径。需要说明的是,所述哈希关联列表中的哈希值都是相同的。所述服务器3中有多组相同的医疗文件,则所述查找模块312获得多组相同的哈希值并对每组相同的哈希值生成一个哈希关联列表。如图四所示,所述哈希关联列表至少包括四个栏位,所述四个栏位分别为文件名(表示医疗文件的名称)、哈希值(表示医疗文件的哈希值)、存储路径(表示医疗文件在服务器3上的存储路径)及标识(表示医疗文件是否保留于服务器3中,其中,Y表示保留,N表示删除)。进一步地,为了方便起见,图4中的字母B仅仅是代指哈希值,并不表示哈希值为B,而图4中的字母X1至X9也仅仅是代指存储路径,并不表示X1至X9为存储路径。

步骤S13:所述删除模块313在每一个哈希关联列表中选定一个存储路径,并删除该哈希关联列表中未选定的存储路径所对应的医疗文件。在本实施例中,所述删除模块313选定存储路径X1,并在服务器3中删除其余存储路径为X2至X9对应的医疗文件。

步骤S14:所述修改模块314在每一个哈希关联列表修改所删除的医疗文件对应的标识。具体地说,如图4所示,所述修改模块314将哈希关联列表中X2至X9对应的标识从Y修改为N。

步骤S15:所述接收模块315接收客户端1发送过来的医疗文件。所述客户端1发送过来的医疗文件的哈希值暂存于服务器3的内存中。

步骤S16:所述计算模块311计算所述客户端1发送过来的医疗文件的哈希值。

步骤S17:所述判断模块316判断所述客户端1发送过来的医疗文件的哈希值是否有对应的哈希关联列表。所述判断模块316通过所述客户端1发送过来的医疗文件的哈希值进行查询,判断是否有哈希关联列表包含所述客户端1发送过来的医疗文件的哈希值,若服务器3中有一个哈希关联列表包含所述客户端1发送过来的医疗文件的哈希值,则该哈希关联列表为所述客户端1发送过来的医疗文件的哈希值对应的哈希关联列表。若所述客户端1发送过来的医疗文件的哈希值有对应的哈希关联列表,流程进入步骤S18,否则,若所述客户端1发送过来的医疗文件的哈希值没有对应的哈希关联列表,则流程进入步骤S19。

步骤S18:所述删除模块313删除所述客户端1发送过来的医疗文件。所述客户端1发送过来的医疗文件的哈希值从所述服务器3的内存中删除。

步骤S19:所述保存模块317将所述客户端1发送过来的医疗文件保存于服务器3中。所述客户端1发送过来的医疗文件的哈希值保存于服务器3的存储单元31中或数据库(图中未示出)中。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或之间或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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