首页 / 专利库 / 电脑零配件 / 计算机系统 / 软件 / 软件包 / 软件组件 / 软件代码 / 将数据记录上传到云存储库

将数据记录上传到存储库

阅读:716发布:2020-05-11

专利汇可以提供将数据记录上传到存储库专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种用于将数据记录上传到 云 数据存储库 的方法和本地传输单元,其中,该方法包括以下步骤:通过本地传输 软件 接收医疗数据记录的步骤,其中,本地传输 软件包 括核心模 块 和可用 插件 ,其中,可用插件中的每个可用插件都与远程应用相关联;通过处理插件基于医疗数据记录生成匿名数据记录的步骤,其中,处理插件是可用插件中的一个;以及将匿名数据记录上传到云数据存储库的步骤,其中,与处理插件相关联的远程应用可以 访问 云数据存储库中的匿名数据记录。,下面是将数据记录上传到存储库专利的具体信息内容。

1.一种将数据记录上传到数据存储库(16)的方法,包括以下步骤:
-通过本地传输软件(10)接收(REC-1)医疗数据记录(MDR),
其中,所述本地传输软件(10)包括核心模(11)和可用插件(12.1、12.2、12.P),其中,所述可用插件(12.1、12.2、12.P)中的每个可用插件(12.1、12.2、12.P)与远程应用(17.1、17.2、17.P)相关联,
-通过处理插件(12.P)基于所述医疗数据记录(MDR)生成(GNR-1)匿名数据记录(ADR),其中,所述处理插件(12.P)是所述可用插件(12.1、12.2、12.P)中的一个,-通过所述核心模块(11)将所述匿名数据记录(ADR)上传(UPL)到所述云数据存储库(16),
其中,所述云数据存储库(16)中的匿名数据记录(ADR)能够由与所述处理插件(12.P)相关联的远程应用(17.P)访问
2.根据权利要求1所述的方法,其中,通过所述核心模块(11)接收(REC-1)所述医疗数据记录(MDR),还包括以下步骤:
-基于所述医疗数据记录(MDR)通过所述核心模块(11)从所述可用插件(12.1、12.2、
12.P)中选择(SEL)所述处理插件(12.P)。
3.根据前述权利要求中的一项所述的方法,其中,所述匿名数据记录(ADR)被配置成由与所述处理插件(12.P)相关联的远程应用(17.P)用作输入数据。
4.根据前述权利要求中的一项所述的方法,其中,所述医疗数据记录(MDR)包括第一数据项(D.1)和第二数据项(D.2),
其中,所述第一数据项(D.1)包括与患者有关的个人数据,
其中,所述匿名数据记录(ADR)包括所述第二数据项(D.2)和数据记录标识符(AD),其中,所述数据记录标识符(AD)基于所述第一数据项(D.1)。
5.根据权利要求4所述的方法,其中,所述数据记录标识符(AD)是将所述核心模块(11)的匿名化函数应用于所述第一数据项(D.1)的结果。
6.根据权利要求5所述的方法,其中,所述数据记录标识符基于匿名化等级参数,并且其中,所述匿名化等级参数被提供给所述匿名化函数。
7.根据权利要求1至4中的一项所述的方法,其中,所述处理插件(12.P)被配置成在由所述核心模块(11)执行所述上传(UPL)的同时处理其他数据,还包括以下步骤:
-通过所述核心模块(11)通知(NTF-1)所述处理插件(12.P)有关所述上传(UPL)的完成。
8.根据前述权利要求中的一项所述的方法,还包括以下步骤:
-通过将通知消息从所述核心模块(11)发送至与所述处理插件(12.P)
相关联的远程应用(17.P)来通知(NTF-2)与所述处理插件(12.P)
相关联的远程应用(17.P)有关所述匿名数据记录(ADR)的上传(UPL)的完成。
9.根据前述权利要求中的一项所述的方法,还包括以下步骤:
-通过所述核心模块(11)接收(REC-2)插件安装文件,
其中,所述插件安装文件包括可安装的插件和配置文件,
-通过所述核心模块(11)基于所述配置文件来将所述可安装的插件安装(INST)为附加的可用插件(12.1、12.2、12.P)。
10.根据前述权利要求中的一项所述的方法,还包括以下步骤:
-确定(DET)托管所述本地传输软件(10)的本地传输单元(20)的资源参数,其中,所述资源参数基于所述本地传输单元(20)的存储器使用和/或处理器使用,-如果所述资源参数低于下限资源阈值,则初始化(INIT)所述可用插件(12.1、12.2、
12.P)中的第一插件;以及
-如果所述资源参数高于上限资源阈值,则终止(TERM)所述可用插件(12.1、12.2、
12.P)中的第二插件。
11.根据前述权利要求中的一项所述的方法,还包括以下步骤:
-通过云传输软件(15)从所述远程应用(17.1、17.2、17.P)中的一个接收(REC-3)动作消息,
其中,所述动作消息包括插件标识符,
-通过所述核心模块(11)将所述动作消息从所述云传输软件(15)发送(TRM)至所述可用插件(12.1、12.2、12.P)中的接收插件,
其中,所述接收插件是基于所述插件标识符由所述核心模块来选择的,
-通过所述接收插件来处理(PROC)所述动作消息。
12.根据前述权利要求中的一项所述的方法,还包括以下步骤:
-通过与所述处理插件(12.P)相关联的远程应用(17.P)基于所述匿名数据记录(ADR)来生成(GNR-2)经处理的数据记录(PDR),
-通过与所述处理插件(12.P)相关联的远程应用(17.P)来将所述经处理的数据记录(PDR)存储(STR-1)在所述云数据存储库(16)中,
-通过将消息从与所述处理插件(12.P)相关联的远程应用(17.P)发送至所述本地传输软件(10)来通知(NTF-3)所述本地传输软件(10)有关所述经处理的数据记录(PDR)的存储(STR-1),
-通过所述处理插件(12.P)从所述云数据存储库(16)下载(DWL)所述经处理的数据记录(PDR),
-通过所述处理插件(12.P)将所述经处理的数据记录(PDR)存储(STR-2)在本地数据存储库(14.1、14.2、14.P)中。
13.一种本地传输单元(20),所述本地传输单元(20)被配置成托管用于将数据记录上传到云数据存储库(16)的本地传输软件(10),其中,所述本地传输软件(10)包括核心模块(11)和可用插件(12.1、12.2、12.P),其中,所述可用插件(12.1、12.2、12.P)中的每个可用插件(12.1、12.2、12.P)与远程应用(17.1、17.2、17.P)相关联;
-其中,所述本地传输单元(20)被配置成通过所述本地传输软件(10)接收(REC-1)医疗数据记录(MDR);
-其中,所述本地传输单元(20)被配置成通过处理插件(12.P)基于所述医疗数据记录(MDR)生成(GNR-1)匿名数据记录(ADR),
其中,所述处理插件(12.P)是所述可用插件(12.1、12.2、12.P)中的一个;
-其中,所述本地传输单元(20)被配置成通过所述核心模块(11)将所述匿名数据记录(ADR)上传(UPL)到所述云数据存储库(16),
其中,所述云数据存储库(16)中的匿名数据记录(ADR)能够通过与所述处理插件(12.P)相关联的远程应用(17.P)来访问。
14.根据权利要求13所述的本地传输单元(20),还被配置成执行根据权利要求2至12中的一项所述的方法。
15.一种包括本地传输软件(10)的计算机程序产品,所述本地传输软件(10)能够被加载到本地传输单元(20)的存储器单元(23)中,所述本地传输软件(10)包括程序代码段以用于当在所述本地传输单元(20)中执行所述本地传输软件(10)时使所述本地传输单元(20)执行权利要求1至12中任一项所述的方法。
16.一种存储本地传输软件(10)的程序代码段的计算机可读介质,所述程序代码段能够被加载到本地传输单元(20)中和/或在所述本地传输单元(20)中执行,以当在所述传输单元(20)中执行所述程序代码段时使所述本地传输单元(20)执行权利要求1至12中任一项所述的方法。

说明书全文

将数据记录上传到存储库

[0001] 为了在医学环境中应用诸如大数据分析或人工智能之类的方法,通常需要大量的医疗数据记录。为了使用足够多的医疗数据记录,仅考虑一个医疗机构(例如,一家医院或一组医院的医疗机构)的医疗数据记录是不够的,而必须使用多个医疗机构的数据。
[0002] 文献US 20160125138 A1教导了一种用于评估云应用内的医疗数据的方法。例如,可以使用云应用来分析单个医疗机构中通过计算机断层扫描研究对患者施加的平均剂量,并且将该平均剂量与该国家所有医疗机构进行比较。此外,可以确定单个医疗机构中剂量高于国家或机构阈值的研究比例。
[0003] 一旦建立了这样的云基础架构,就可以将其用于其他任务,例如,用于(通过在医疗专业人员之间共享图像)虚拟协作或用于业务分析。
[0004] 如文献WO 2013/124041 A1中所公开的,用于从多个医疗机构收集医疗数据记录的通用方法是将单个医疗机构的医疗数据记录上传到公共云存储服务和/或公共云数据存储库。对于单个医疗机构而言,云存储服务的使用具有可扩展性而无需投资于本地存储硬件的优点。相反,必须保护医疗数据中与个人有关的数据,以便即使在发生故障的情况下也没有第三方可以访问存储在云中的与个人有关的数据。文献US 20160148017 A1教导了用于保护与个人有关的数据的这种方法。
[0005] 已知在负责将医疗数据记录上传到云的单个医疗机构中或以单个医疗机构的单个模式下使用作为本地软件本地地安装的接收或发送服务或接收或发送软件。这种整体软件的使用缺乏灵活性和可扩展性。每当应该使用另一种本地数据源时,或每当云应用需要不同的数据格式或不同的数据记录时,都必须重新更改整个整体应用并且进行测试,这是缓慢而昂贵的过程。
[0006] 因此,本发明的目的是提供一种用于将数据记录从本地数据存储库传输到云数据存储库的可扩展且更灵活的机制。
[0007] 该目的通过用于将数据记录上传到云数据仓库的方法、通过本地传输单元、通过计算机程序产品以及通过计算机可读存储介质来实现。该目的还通过说明书中公开的其他方法和单元来实现。
[0008] 本发明的有利的实施方式和特征具体地由从属权利要求和说明书给出。可以适当地组合不同权利要求类别的特征以给出在本文中未描述的其他实施方式。
[0009] 在下文中,相对于要求保护的本地传输单元以及相对于要求保护的方法,描述根据本发明的解决方案。本文中的特征、优点或替选实施方式可以分配给其他要求保护的目的,反之亦然。换句话说,可以利用在该方法的上下文中描述或要求保护的特征来改进对于本地传输单元的权利要求。在这种情况下,该方法的功能特征由本地传输单元的目标单元体现。
[0010] 根据本发明,用于将数据记录上传到云数据存储库的方法包括以下步骤:通过本地传输软件来接收医疗数据记录的步骤,其中,所述本地传输软件包括核心模和可用插件,其中,可用插件中的每个可用插件与远程应用相关联;通过处理插件基于医疗数据记录生成匿名数据记录的步骤,其中,处理插件是可用插件中的一个;以及将匿名数据记录上传到云数据存储库的步骤,其中,可以通过与处理插件相关联的远程来应用访问云数据存储库中的匿名数据记录。具体地,用于将数据记录上传到云数据存储库的方法是计算机实现的方法。
[0011] 根据本发明的用于将数据记录上传到云数据存储库的方法的优点在于,由于本地传输软件包括核心模块和几个可用插件,因此本地传输软件的功能可以通过添加更多插件来容易地扩展,而无需更改核心模块。因此,仅新的插件而不是整个本地传输服务必须被测试,这降低了测试过程的成本。
[0012] 通过由处理插件对医疗数据记录进行匿名化,可以更加灵活地进行匿名化;具体地,匿名化可以与相关联的远程应用的需求相协调。此外,可以针对医疗数据报告的不同格式(例如,DICOM或HL7)使用不同的匿名化程序。
[0013] 根据本发明的另一可能的方面,接收医疗数据记录的步骤包括:通过本地传输软件,特别是通过核心模块或处理插件,在本地数据存储器中周期性地检查新的医疗数据记录,其中,新的医疗数据记录之前未被本地传输软件处理,并且将新的医疗数据记录从本地数据存储器发送至本地传输软件,特别是发送至核心模块或处理插件。该可能的方面具有的优点是,本地数据存储器不必适于主动向本地传输软件发送数据,而是本地传输软件可以使用用于访问本地数据存储器内的用于访问医疗数据记录的标准接口。这减少了更改现有本地数据存储器的成本。
[0014] 根据本发明的另一方面,医疗数据记录由核心模块接收,并且该方法还包括以下步骤:通过核心模块基于医疗数据记录来从可用插件中选择处理插件。具体地,选择处理插件的步骤可以基于医疗数据记录所源自的本地数据存储器。具体地,选择处理插件的步骤可以基于医疗数据记录的格式。具体地,选择处理插件的步骤可以基于医疗数据记录的内容。具体地,选择处理插件的步骤可以基于以下对象中的两个或更多个对象的组合:医疗数据记录所源自的本地数据存储器、医疗数据记录的格式、医疗数据记录的内容。该方面的优点在于,本地数据存储器不需要被适配为将其数据发送至特定插件,此外,并非每个插件都需要实现用于接收外部数据的接口。
[0015] 根据本发明的另一可能的方面,医疗数据记录由处理插件接收。该可能的方面具有以下优点:核心模块不需要执行处理模块的可能容易出错的选择,使得医疗数据记录总是由正确的插件接收。具体地,本地数据存储器被配置成将其数据直接发送到插件中的一个。
[0016] 根据本发明的另一方面,匿名数据记录被配置成被与处理插件相关联的远程应用用作输入数据。该方面的优点在于,匿名数据记录可以由与处理插件相关联的远程应用处理,而无需进一步的预处理。
[0017] 根据本发明的另一可能的方面,该方法还包括通过云数据存储库将匿名数据记录提供给与处理插件相关联的远程应用的步骤。
[0018] 根据本发明的另一可能的方面,可用插件中的第一插件不能直接与可用插件中的第二插件交互。具体地,可用插件中的每个插件都在沙箱中执行。具体地,可用插件中的每个插件只能经由通过核心模块提供的接口与周围环境进行交互。该可能的方面的优点在于,一个插件的故障不会影响其他插件,从而增加了整个系统的稳定性。此外,恶意插件无法影响其他插件。
[0019] 根据本发明的另一方面,医疗数据记录包括第一数据项和第二数据项,其中,第一数据项包括与患者有关的个人数据,其中,匿名数据记录包括第二数据项和数据记录标识符,并且其中,数据记录标识符基于第一数据项。本发明的该方面的优点在于,仅医疗数据记录的特定部分需要由本地传输软件来匿名化。这加快并简化了匿名化处理。此外,通过不改变第二数据项,对应的远程应用可以使用用于处理对应数据记录的标准算法。有利地,对应的远程应用被配置成仅处理匿名数据记录的第二数据项。
[0020] 根据本发明的另一可能的方面,本地传输软件存储从数据记录标识符至第一数据项的映射。具体地,处理插件存储从数据记录标识符至第一数据项的映射。该可能方面的优点在于,本地传输软件可以将匿名数据记录(以及作为通过远程应用处理匿名数据记录的结果的任何数据记录)与医疗数据记录或与第一数据项相关或相关联。例如,如果与处理插件相关联的远程应用可以创建匿名数据记录的CPU密集型可视化,并且将该可视化发送回本地传输软件,则可以通过本地传输软件来将该可视化分配给与患者的个人数据有关的第一数据项。具体地,可以基于经处理的匿名数据记录来创建经处理的医疗数据记录。在整个处理中,远程应用无法访问包含患者的与个人有关的数据的第一数据项。
[0021] 根据本发明的另一方面,数据记录标识符是将核心模块的匿名化函数应用于第一数据项的结果。本发明的该方面的优点在于,可用插件中的每个插件都可以使用核心模块的匿名化函数,而不需要自己实现匿名化函数,从而节省了开发成本。此外,仅具有一种匿名化函数减少了严重错误的可能数量。具体地,匿名化函数是单向函数,具体地,匿名化函数是哈希函数。
[0022] 根据本发明的另一方面,数据记录标识符基于匿名化级别参数,并且其中,将匿名化级别参数提供给匿名化函数。本发明的该方面的优点在于,可用插件可以使用不同级别的匿名化,并且仍然使用核心模块的匿名化函数。不同的远程应用程序需要不同级别的匿名化(例如,患者的年龄或性别可能与某个远程应用相关,因此只能删除或匿名化患者的姓名)。还可以认为,所使用的匿名化级别确实取决于执行本地传输软件或本地传输单元位于其中的医疗机构,或取决于医疗机构所在的国家。
[0023] 根据本发明的另一方面,处理插件被配置成在由核心模块执行上传的同时处理其他数据,并且该方法还包括通过核心模块通知处理插件有关完成上传的步骤。该行为的技术术语是“异步上传”。本发明的该方面的优点在于,该方法可以被更快地执行,因为处理插件可以例如在等待上传过程完成时使其他数据匿名化,或者启动向其他云数据存储库的上传。此外,由处理插件启动的上传不会阻止其他插件与核心模块之间的交互。
[0024] 根据本发明的另一可能的方面,处理插件被配置成不处理其他数据,直到核心模块已完成上传步骤为止。该行为的技术术语是“同步上传”。本发明的该可能的方面的优点在于,插件的开发更容易且更便宜,因为同步上传对处理插件的其他部分没有副作用
[0025] 根据本发明的另一方面,该方法还包括以下步骤:通过将通知消息从核心模块发送至与处理插件相关联的远程应用来通知与处理插件相关联的远程应用有关匿名数据记录的上传完成。具体地,该通知消息可以包括匿名数据记录的标识符、至匿名数据记录的超链接、匿名数据记录的哈希和/或时间戳。本发明的该方面的优点在于,通过该消息,远程应用可以立即开始匿名数据记录的处理,而无需定期检查云数据存储库。这意味着匿名数据记录的快速处理。
[0026] 根据本发明的另一可能的方面,该方法还包括:通过核心模块接收插件安装文件的步骤,其中,插件安装文件包括可安装的插件和配置文件;以及通过核心模块基于配置文件将可安装的插件作为其他可用插件安装的步骤。具体地,可以从公共插件存储库下载插件安装文件;替选地,可以手动或通过另一程序将插件安装文件发送至本地传输软件和/或本地传输单元。本发明的该方面的优点在于,可用插件的集合可以被其他插件扩展,例如,如果发布了新的远程应用和/或其他本地数据存储器和/或其他数据格式应当由本地传输软件处理。
[0027] 根据本发明的另一可能的方面,该方法还包括从可用插件的步骤中卸载插件的步骤。卸载的另一术语是删除。该可能的方面具有的优点是,可以删除过时的插件,使得减少了本地传输软件的内存消耗,并且本地传输软件变得更不容易受到恶意攻击。具体地,连同本发明的先前方面,可以提供用于上传可用插件中的一个的机制。
[0028] 根据本发明的另一方面,该方法包括:确定托管本地传输软件的本地传输单元的资源参数的步骤,其中,该资源参数基于本地传输单元的存储器使用和/或处理器使用;如果资源参数低于下限资源阈值则初始化可用插件中的第一插件的步骤;以及如果资源参数高于上限资源阈值则终止可用插件中的第二插件的步骤。具体地,初始化第一插件的步骤是可选步骤。具体地,资源参数基于在本地传输单元内运行的可用插件中的一个的存储器使用和/或处理器使用。具体地,上限资源阈值高于下限资源阈值。本发明的该方面的优点在于,可以基于资源参数来控制正在运行的插件的数量,使得不存在系统的阻塞过载,并且使得有尽可能多的插件可以运行,以防止在接收医疗数据记录之前必须先启动插件。如果资源参数基于在本地传输单元中运行的可用插件中的一个的存储器使用和/或处理器使用,则因此如果它超过上限资源限制就可以停止和/或重新启动可用插件中的一个,以确保损坏的插件不会影响云传输软件或云传输单元,特别是确保损坏的插件不会阻塞云传输软件或云传输单元。
[0029] 根据本发明的另一方面,该方法包括:通过云传输软件从远程应用程序接收动作消息的步骤,其中,该动作消息包括插件标识符;通过核心模块将动作消息从云传输软件发送至可用插件中的接收插件的步骤,其中,接收插件由核心模块基于插件标识符进行选择;以及通过接收插件处理动作消息的步骤。具体地,接收插件可以与处理插件等同。本发明的该方面的优点是远程应用可以与接收插件交互,例如,触发对新数据的搜索、更改接收插件的配置(例如,使用的匿名化级别)或初始化和/或终止接收插件。
[0030] 根据本发明的另一方面,用于将数据记录上传到云数据存储库的方法还包括:通过与处理插件相关联的远程应用基于匿名数据记录来生成经处理的数据记录的步骤;通过与处理插件相关联的远程应用将经处理的数据记录存储在云数据存储库中的步骤;通过将来自与处理插件相关联的远程应用的消息发送至本地传输软件来通知本地传输软件有关经处理的数据记录的存储的步骤;通过处理插件从云数据存储库下载经处理的数据记录的步骤;以及通过处理插件将经处理的数据记录存储在本地数据存储库中的步骤。本发明的该方面的优点在于,可以使用远程应用以灵活和可扩展的方式来处理数据记录,使得可以灵活地使用其他资源,而无需更改本地医院站点的硬件配置。
[0031] 根据本发明的另一可能的方面,该方法还包括:将状态查询消息从核心模块发送至可用插件中的一个插件的步骤;将来自所述可用插件中的一个插件的状态应答消息发送至核心模块的步骤,其中,状态应答消息包括描述所述可用插件中的一个插件的状态的参数。具体地,所述一个插件可以与处理插件等同。具体地,所述可用插件中的一个插件可以与接收插件等同。本发明的该方面具有的优点在于,提供用于检查可用插件的机制,以及例如通知用户所述一个插件的故障的机制。
[0032] 本发明还涉及用于生成匿名数据记录的方法,包括以下步骤:
[0033] -通过本地传输软件接收医疗数据记录,其中,本地传输软件包括核心模块和可用插件,其中,可用插件中的每个可用插件与远程应用相关联,
[0034] -通过处理插件基于医疗数据记录生成匿名数据记录,其中,处理插件是可用插件中的一个,并且其中,匿名数据记录被配置为用于与处理插件相关联的远程应用的输入数据。
[0035] 具体地,用于生成匿名数据记录的方法是计算机实现的方法。接收用于生成匿名数据记录的方法的医疗数据记录的步骤可以包括:接收用于上传数据记录的方法的医疗数据记录的步骤的有利实施方式和特征。用于生成医疗数据记录的方法的生成匿名数据记录的步骤可以包括:生成用于上传数据记录的方法的匿名数据记录的步骤的有利实施方式和特征。
[0036] 用于生成匿名数据记录的方法还可以包括以下步骤:
[0037] -通过核心模块接收插件安装文件,
[0038] 其中,插件安装文件包括可安装的插件和配置文件,
[0039] -基于配置文件将可安装的插件作为其他可用插件安装。
[0040] 用于生成匿名数据记录的方法还可以包括以下步骤:
[0041] -确定托管本地传输软件的本地传输单元的资源参数,
[0042] 其中,资源参数基于本地传输单元的存储器使用和/或处理器使用,
[0043] -如果资源参数低于下限资源阈值,则初始化可用插件中的第一插件,并且[0044] -如果资源参数高于上限资源阈值,则终止可用插件中的第二插件,
[0045] 其中,上限资源阈值高于下限资源阈值。
[0046] 用于生成匿名数据记录的方法还可以包括以下步骤:
[0047] -通过云传输软件从远程应用接收(REC-3)动作消息,
[0048] 其中,动作消息包括插件标识符,
[0049] -通过核心模块将来自云传输软件的动作消息发送(TRM)至可用插件中的接收插件,
[0050] 其中,接收插件是核心模块基于插件标识符选择的,
[0051] -通过接收插件处理(PROC)动作消息。
[0052] 本发明还涉及本地传输单元,其被配置成托管用于将数据记录上传到云数据存储库的本地传输软件,其中,本地传输软件包括核心模块和可用插件,其中,可用插件中的每个可用插件与远程应用相关联;
[0053] -其中,本地传输单元被配置成通过本地传输软件接收医疗数据记录;
[0054] -其中,本地传输单元被配置成通过处理插件基于医疗数据记录来生成匿名数据记录,其中,处理插件是可用插件中的一个;
[0055] -其中,本地传输单元被配置成通过核心模块将匿名数据记录上传到云数据存储库,其中,与处理插件相关联的远程应用可以访问云数据存储库中的匿名数据记录。
[0056] 具体地,本地传输单元可以被配置成执行根据本发明及其方面的用于将数据记录上传到云数据存储器的方法或用于生成匿名数据记录的方法。本地传输单元被配置成执行将数据记录上传到云数据存储器的方法,或者由被配置成执行相应方法步骤的本地传输单元的计算单元和存储单元执行用于生成匿名数据记录及其方面的方法。
[0057] 本地传输单元可以包括硬件和/或软件。硬件可以是例如处理器系统、存储器系统及其组合。硬件可以由软件进行配置和/或由软件操作。
[0058] 本发明的一方面涉及一种计算机程序产品,该计算机程序产品包括本地传输软件,该本地传输软件可加载到本地传输单元的存储器单元中,其包括当在本地传输单元中执行本地传输软件时使所述本地传输单元执行根据本发明的一方面用于将数据记录上传到云数据存储库中的方法或用于生成匿名数据记录的方法的程序代码段。具体地,本地传输软件是计算机程序产品。
[0059] 本发明的一方面涉及一种计算机可读介质,其上存储有本地传输软件的程序代码段,所述程序代码段可加载到本地传输单元中和/或在本地传输单元中执行,以使当在本地传输单元中执行程序代码段时提供系统执行根据本发明的一方面的用于将数据记录上传到云数据存储库中的方法或用于生成匿名数据记录的方法。
[0060] 通过计算机程序产品和/或计算机可读介质实现本发明的优点在于,软件更新可以容易地采用已经存在的本地传输单元,以便如本发明所建议的那样工作。
[0061] 计算机程序产品可以是例如计算机程序,或者包括除了计算机程序之外的另一元件。具体地,计算机程序产品可以是例如本地传输软件或包括除了本地传输软件之外的另一元件。该另一元件可以是硬件,例如,存储有计算机程序的存储器设备、用于使用计算机程序等的硬件密钥和/或软件,例如,用于使用计算机程序的文档或软件密钥、或安装例程。
[0062] 本发明的一方面还涉及一种用于将可安装的插件安装在所述本地传输软件内或所述本地传输单元内的方法,包括以下步骤:
[0063] -通过本地传输软件的核心模块接收插件安装文件,
[0064] 其中,插件安装文件包括可安装的插件和配置文件,
[0065] -基于配置文件将可安装的插件作为附加的可用插件安装在本地传输软件内或本地传输单元内。
[0066] 具体地,用于将可安装的插件安装在所述本地传输软件内或所述本地传输单元内的方法是计算机实现的方法。
[0067] 本发明的一方面还涉及一种用于初始化或终止所述本地传输软件内或所述本地传输单元内的插件的方法,包括以下步骤:
[0068] -确定托管本地传输软件的本地传输单元的资源参数,
[0069] 其中,资源参数基于本地传输单元的存储器使用和/或处理器使用,
[0070] -如果资源参数低于下限资源阈值,则初始化可用插件中的第一插件,并且[0071] -如果资源参数高于上限资源阈值,则终止可用插件中的第二插件,
[0072] 其中,上限资源阈值高于下限资源阈值。
[0073] 具体地,用于初始化或终止所述本地传输软件内或所述本地传输单元内的插件的方法是计算机实现的方法。
[0074] 本发明的一方面还涉及一种用于在所述本地传输软件内或在所述本地传输单元内处理动作消息的方法,包括以下步骤:
[0075] -通过云传输软件从远程应用接收动作消息,
[0076] 其中,动作消息包括插件标识符,
[0077] -通过核心模块将动作消息从云传输软件发送至可用插件中的接收插件,
[0078] 其中,接收插件是核心模块基于插件标识符选择的,
[0079] -通过接收插件处理动作消息。
[0080] 具体地,用于在所述本地传输软件内或在所述本地传输单元内处理动作消息的方法是计算机实现的方法。
[0081] 本发明的一方面还涉及一种用于在本地数据存储库中存储经处理的数据记录的方法,包括以下步骤:
[0082] -通过与处理插件相关联的远程应用基于匿名数据记录来生成经处理的数据记录,
[0083] 其中,匿名数据记录被存储在云数据存储库中,
[0084] -通过与处理插件相关联的远程应用将经处理的数据记录存储在云数据存储库中,
[0085] -通过将消息从与处理插件相关联的远程应用发送至本地传输软件来通知本地传输软件有关经处理的数据记录的存储,
[0086] -通过处理插件从云数据存储库下载经处理的数据记录,
[0087] -通过处理插件将经处理的数据记录存储在本地数据存储库中。
[0088] 具体地,本地传输单元和/或本地传输软件包括本地数据存储库。具体地,通过将消息从与处理插件相关联的远程应用发送至本地传输软件的核心模块,并且通过将来自核心模块的消息转发至处理插件来通知本地传输软件有关经处理的数据记录的存储。具体地,本地数据存储库与处理插件相关联。
[0089] 具体地,本地传输单元可以被配置成执行根据本发明的一方面的用于生成匿名数据记录的方法、用于将可安装的插件安装在所述本地传输软件内或在所述本地传输单元内的方法、用于初始化或终止在所述本地传输软件内或在所述本地传输单元内的插件的方法、用于在所述本地传输软件内或在所述本地传输单元内处理动作消息的方法或用于将经处理的数据记录存储在本地数据存储库中的方法。本地传输单元被配置成通过被配置成执行各个方法步骤的本地传输单元的计算单元和存储单元来执行该方法及其方面。
[0090] 本发明的一方面涉及一种计算机程序产品,该计算机程序产品包括本地传输软件,该本地传输软件可加载到本地传输单元的存储单元中,包括当在所述本地传输单元内执行本地传输软件时,使本地传输单元执行以下方法的程序代码段:用于根据本发明的一方面生成匿名数据记录的方法、用于将可安装的插件安装在所述本地传输软件内或在所述本地传输单元内的方法、用于初始化或终止在所述本地传输软件内或在所述本地传输单元内的插件的方法、或用于在所述本地传输软件内或在所述本地传输单元内处理动作消息的方法、或用于将经处理的数据记录存储在本地数据存储库中的方法。具体地,本地传输软件是计算机程序。
[0091] 本发明的一方面涉及一种计算机可读介质,在该计算机可读介质上保存了本地传输软件的程序代码段,所述程序代码段可加载到本地传输单元中和/或在本地传输单元中执行,以当在本地传输单元中执行程序代码段时使提供系统执行根据本发明的一方面的用于生成匿名数据记录的方法、用于将可安装的插件安装在所述本地传输软件内或在所述本地传输单元内的方法、用于初始化或终止在所述本地传输软件内的插件的方法、用于在所述本地传输软件内或在所述本地传输单元内处理动作消息的方法,或用于将经处理的数据记录存储在本地数据存储库内的方法。
[0092] 医疗数据记录是一种数据记录,其包括患者的至少一个医疗检查的结果以及患者的至少一个与个人有关的数据项。基于医疗数据记录生成的匿名数据记录是包括医疗数据记录的患者的至少一个医疗检查的结果的数据记录。具体地,匿名数据记录包括比医疗数据记录更少的医疗数据记录的与个人有关的数据项;具体地,匿名数据记录不包括医疗数据记录的非与个人有关的数据项。应当理解,如果匿名数据记录确实包括所述与个人有关的数据项的加密和/或编码版本,则匿名数据记录不包括与个人有关的数据项,其中,所述与个人有关的数据项不能从所述与个人有关的数据项的加密和/或编码版本中重建。具体地,如果所述匿名数据记录包括所述与人有关的数据项的哈希值,则所述匿名数据记录不包括与个人有关的数据项。
[0093] 术语云计算描述了共享处理和存储资源的用法,其中,这些共享资源在他们之间相互连接,并通过因特网或内部网连接至外部用户,并且其中,这些共享资源通常在本地或地理上与用户分离。具体地,共享的处理和存储资源不需要布置在公共位置,它们可以被分布到不同的位置。云描述了例如由第三方(例如Amazon Web服务或Microsoft Azure云)提供的一组共享的处理和存储资源。术语“云存储”用作共享存储资源的替选术语。云还可以包括用于访问共享资源(例如,以开始或停止计算作业,或者用于将数据上传或下载到云存储)的接口,特别是API(“应用程序编程接口”的缩写)、尤其是Web API。云还可以包括使用共享的处理和存储资源的软件组件,例如,可以在用户的浏览器中使用的服务器上运行的Web应用。
[0094] 应用程序编程接口(简称“API”)是用于至少两个软件组件之间进行交互的功能和/或方法的集合。通常,第一软件组件提供可以由第二软件组件使用的API。因此,第二组件可以调用API的功能和/或方法,从而为功能和/或方法提供(可能为空)输入数据,并且从功能和/或方法中接收(可能为空)输出数据。Web API是由Web服务器或Web浏览器提供的API,尤其是Web API是实现“代表性状态转移”(缩写为“REST”,因此另一术语是RESTful web服务)或实现“简单对象访问协议”(缩写为“SOAP”)的web服务。
[0095] 远程应用是软件或计算机程序,特别是内部应用(on-premises application)、虚拟机应用和/或云应用。具体地,远程应用不由本地传输单元执行。具体地,核心模块和可用插件是软件或计算机程序;特别是两者都是内部应用。
[0096] 内部应用是软件或计算机程序,其可以使用该内部应用在个人或机构的计算设备上本地地执行,特别是在计算设备的操作系统内执行。本地应用包括程序代码段,其由计算设备的计算单元执行,并且可选地将中间结果存储在计算设备的存储单元内。
[0097] 虚拟机应用是软件或计算机程序,其在第一计算设备的仿真中,特别是在第二计算设备所托管的虚拟机中可执行。通常,虚拟机提供托管虚拟机应用的操作系统。具体地,虚拟机是内部应用。第二计算设备可以是用户的本地硬件;在这种情况下,通过与第二计算设备交互来完成与虚拟机的交互。替选地,第二计算设备可以是非本地服务器(在云内);在这种情况下,通过用户硬件上的软件程序(特别是web浏览器)来完成与虚拟机的交互。
[0098] 云应用是在服务器上或在云内物理上运行的软件或计算机程序,即,消耗服务器或云的处理和/或存储资源。用户与云应用之间的交互通常由在用户硬件上执行的web浏览器完成。云应用的其他术语是“软件即服务”或“按需软件”。
[0099] 有利地,本地传输软件、核心模块和可用插件是在本地传输单元上执行的预置软件。有利地,云传输软件是云应用。
[0100] 术语云存储表示用于云内(特别是共享存储器资源内)的数据和/或文件的存储解决方案。底层物理存储可以被分布到多个物理单元和/或位置。具体地,云数据存储库包括云存储和用于访问该云存储的API。
[0101] 如果由插件生成的匿名数据记录被配置为用作远程应用的输入数据,则将该插件与远程应用相关联(反之亦然)。具体地,如果由插件生成的匿名数据记录的格式可以由远程应用处理,则将插件与远程应用相关联(反之亦然)。
[0102] 术语可用插件描述了可以在本地传输软件内和/或本地传输单元上使用的所有插件。具体地,术语可用插件描述了在本地传输软件内和/或在本地传输单元上有效运行的所有插件。换句话说,如果插件是计算机程序,则在该插件作为本地传输单元中的处理运行(或者如果该插件在例如在Microsoft.NET框架中定义的单独的应用域中运行)的情况下,该插件是可用的。替选地,术语可用插件也可以描述被安装在本地传输软件内和/或本地传输单元上的所有插件。换句话说,术语可用插件可以描述在本地传输软件内和/或本地传输单元上的所有正在运行和未运行的插件。
[0103] 通过以下结合附图考虑的详细描述,本发明的其他目的和特征将变得明显。然而,应当理解,附图仅是出于说明的目的而设计的,而不是对本发明的限制的定义。
[0104] 图1示出了本地传输软件的实施方式;
[0105] 图2示出了本地传输单元的实施方式;
[0106] 图3示出了用于将数据记录上传到云数据存储库的方法的第一实施方式的流程图
[0107] 图4示出了用于将数据记录上传到云数据存储库的方法的第二实施方式的流程图;
[0108] 图5示出了用于将数据记录上传到云数据存储库的方法的第三实施方式的流程图;
[0109] 图6示出了用于将数据记录上传到云数据存储库的方法的第四实施方式的流程图;
[0110] 图7示出了实现用于将数据记录上传到云数据存储库的方法的第四实施方式的软件架构;
[0111] 图8示出了用于将数据记录上传到云数据存储库的方法的第五实施方式的流程图;
[0112] 图9示出了用于将数据记录上传到云数据存储库的方法的第六实施方式的流程图;
[0113] 图10示出了用于将数据记录上传到云数据存储库的方法的第七实施方式的流程图;
[0114] 图11示出了实现用于将数据记录上传到云数据仓存储库的方法的第七实施方式的软件架构;
[0115] 图12示出了医疗数据记录和匿名数据记录的数据结构;
[0116] 图13示出了用于将数据记录上传到云数据存储库的方法的第八实施方式的流程图;
[0117] 图14至图17示出了用于生成匿名数据记录的方法的实施方式的流程图;
[0118] 图18示出了用于将可安装的插件安装在本地传输软件内或本地传输单元内的方法的流程图;
[0119] 图19示出了用于初始化或终止本地传输软件或所述本地传输单元内的插件的方法的流程图;
[0120] 图20示出了用于在本地传输软件内或本地传输单元内处理动作消息的方法的流程图;
[0121] 图21示出了用于将经处理的医疗数据记录存储在本地传输软件内的方法的流程图。
[0122] 图1示出了本地传输软件10的实施方式。本地传输软件包括核心模块11和几个可用插件12.1、12.2、12.P。有利地,可用插件12.1、12.2、12.P中的每一个可以将数据存储在本地传输软件内的特定于插件的存储器13.1、13.2、13.P中。可用插件12.1、12.2、12.P中的每一个从本地数据存储库14.1、14.2、14.P中接收数据。本地传输软件10被安装在单个医疗机构(例如一个医院或一组医院)内的本地传输单元20上。
[0123] 本地数据存储库14.1、14.2、14.P位于与本地传输单元20相同的单个医疗机构中,它们包含医疗数据记录MDR。通常,不能从单个医疗机构外部访问本地数据存储库14.1、14.2、14.P,以确保医疗数据记录MDR的数据保密性。本地数据存储库14.1、14.2、14.P的示例是PACS(“图片存档和通信系统”的缩写)、HIS(“医院信息系统”的缩写)、LIS(“实验室信息系统”的缩写)和RIS(“放射信息系统”的缩写)。可以在本地数据存储库14.1、14.2、14.P与可用插件12.1、12.2、12.P之间存在一一对应,替选地,可以将任意数量的本地数据存储库14.1、14.2、14.P与可用插件12.1、12.2、12.P中的一个相关联,以及/或者可以将任意数量的可用插件12.1、12.2、12.P与本地数据存储库14.1、14.2、14.P中的一个相关联。
[0124] 在所显示的实施方式中,本地传输软件10、特别是核心模块11与云传输软件15进行通信。在该实施方式中,云传输软件15是云应用。云传输软件15从本地传输软件10中接收匿名数据记录ADR,并且将匿名数据记录ADR存储在云数据存储库16中。云数据存储库16通常被表示为斑点存储。
[0125] 此外,存在位于云中的若干个远程应用17.1、17.2、17.P。远程应用17.1、17.2、17.P可以访问云数据存储库16;具体地,远程应用17.1、17.2、17.P可以访问云数据存储库
16中的匿名数据记录ADR。可用的插件12.1、12.2、12.P中的每一个与远程应用17.1、17.2、
17.P相关联,换句话说,可用插件12.1、12.2、12.P中的每一个为远程应用17.1、17.2、17.P中的一个准备匿名数据记录ADR。在该实施方式中,插件12.1与远程应用17.1相关联,插件
12.2与远程应用17.2相关联,并且插件12.P与远程应用17.P相关联。
[0126] 有利地,云数据存储库16包括与远程应用17.1、17.2、17.P相关联的子存储库16.1、16.2、16.P,使得如果远程应用17.1、17.2、17.P中的一个与子存储库16.1、16.2、16.P中的一个相关联,则远程应用17.1、17.2、17.P中的一个仅能访问子存储库16.1、16.2、16.P中的一个内中的数据。可以在远程应用17.1、17.2、17.P与子存储库16.1、16.2、16.P之间存在一一对应,替选地,可以将任意数量的远程应用17.1、17.2、17.P与子存储库16.1、16.2、
16.P中的一个相关联,以及/或者可以将任意数量的子存储库16.1、16.2、16.P与远程应用
17.1、17.2、17.P中的一个相关联。与远程应用程序17.1、17.2、17.P中的每一个可以访问来自云数据存储库16的所有数据的情况相比,该替选方案的优点是增强的数据保护。
[0127] 在该实施方式中,在可用插件12.1、12.2、12.P与远程应用17.1、17.2、17.P之间存在一一对应。替代地,也可以是可用插件12.1、12.2、12.P与若干个远程应用17.1、17.2、17.P相关联。备选地,也可以是一个远程应用17.1、17.2、17.P与若干个可用插件12.1、
12.2、12.P相关联。
[0128] 在该实施方式中,远程应用17.1、17.2、17.P可以通过云传输软件15和核心模块11向其相关联的插件12.1、12.2、12.P发送消息来与其相关联的插件12.1、12.2、12.P进行通信。该通信信道是可选的,这由虚线指示,例如,可以用于触发由相关联的插件12.1、12.2、12.P进行数据检索,或用于向相关联的插件12.1、12.2、12.P发送数据。
[0129] 具体地,在该实施方式中,核心模块11和可用插件12.1、12.2、12.P使用API调用来进行通信。还可以想到的是,它们通过在本地存储单元20的存储器单元23内的预留存储空间内创建、修改和删除文件来使用预留存储空间进行通信,其中,可以通过核心模块11和可用插件12.1、12.2、12.P中的至少一个来访问预留存储空间。具体地,可以通过由处理插件12.P将匿名数据记录ADR存储在预留存储空间中,以及通过核心模块11访问预留存储空间内的匿名数据记录ADR来将医疗数据记录MDR或匿名数据记录ADR从处理插件12.P发送至核心模块11。
[0130] 在该实施方式中,核心模块11通过可用插件12.1、12.2、12.P的API提供以下方法和/或函数:
[0131] ·Upload_Sync(data_record):用于将匿名数据记录ADR上传UPL到云数据存储库16的同步函数。该函数是阻塞函数。该函数返回可用于访问云数据存储库16中的匿名数据记录ADR的超链接。
[0132] ·Upload_Async(data_record):用于将匿名数据记录ADR上传UPL到云数据存储库16的异步函数。该函数是非阻塞函数。该函数返回可以用于访问云数据存储库16中的匿名数据记录ADR的超链接。
[0133] ·Anonymize(data_item,level):用于使用给定的匿名化级别对给定的数据项进行匿名化的函数。该函数返回匿名数据项。
[0134] 在该实施方式中,插件12.1、12.2、12.P通过用于与核心模块进行交互的API提供以下方法和/或函数:
[0135] ·Start(command_message):用于将插件12.1、12.2、12.P加载到本地传输软件10的函数。该函数接受可选的命令消息数据作为输入,并且应当返回布尔值以指示操作的状态。
[0136] ·Stop(command_message):用于通知插件12.1、12.2、12.P应当停止其活动的函数。函数接受可选的命令消息数据作为输入,并且应当返回布尔值以指示操作状态。
[0137] ·Restart(command_message):用于通知插件12.1、12.2、12.P应当停止并重新开始其活动的函数。函数接受可选的命令消息数据作为输入,并且应当返回布尔值以指示操作状态。
[0138] ·Message(command_message):用于将消息从核心模块11动态传递到插件12.1、12.2、12.P的函数。函数接受强制性消息数据作为输入,并且应当返回布尔值以指示操作状态。
[0139] ·Ping():如果插件12.1、12.2、12.P正在运行并且已由核心模块11成功加载,则应当返回真(true)。
[0140] ·IsOperable():如果插件12.1、12.2、12.P能够利用提供服务的核心模块11,并且能够实现预期的功能而没有任何基础架构问题,则应当返回真(true)。
[0141] 图2示出了包括输入接口21.1、输出接口21.2以及计算单元22和存储器单元23的本地传输单元20的实施方式。本地传输单元可以是(个人)计算机、工作站、在主机硬件、微控制器或集成电路上运行的虚拟机。替选地,本地传输单元20可以是真实的或虚拟的计算机组(真实的计算机组的技术术语是“集群”、虚拟的计算机组的技术术语是“云”)。
[0142] 输入接口21.1和输出接口21.2可以体现为硬件接口或体现为软件接口(例如,PCI-Bus、USB或Firewire)。通常,计算单元22可以包括硬件元件和软件元件,例如,微处理器、CPU(“中央处理单元”的缩写)、GPU(“图形处理单元”的缩写)或现场可编程阵列。计算单元22可以被配置成用于多线程,即,计算单元22可以同时托管不同的计算处理,从而并行执行或在主动计算处理与被动计算处理之间进行切换。存储器单元23可以是例如非永久性主存储器(例如,随机存取存储器)或永久性大容量存储(例如,硬盘、USB记忆棒、SD卡、固态磁盘)。
[0143] 在该实施方式中,本地传输单元20通过第一网络25连接至本地数据存储14.1、14.2、14.P。第一网络25可以被实现为LAN(“局域网”的缩写),具体为WiFi网络或任何其他本地连接,例如,经由蓝牙或USB(“通用串行总线”的缩写)。替选地,第一网络25也可以被实现为VPN(“虚拟专用网络”的缩写)。替选地,本地传输单元20也可以与本地数据存储库
14.1、14.2、14.P中的一个等同,例如,如果本地传输软件10被安装在例如PACS或HIS上。
[0144] 在该实施方式中,本地传输单元20通过第二网络26连接至云数据存储库16。通常,第二网络26的至少一部分是因特网。可以存在调解本地传输单元20与云数据存储库16之间的连接的其他应用和服务,例如,云传输软件15。这些其他应用和服务可以影响本地传输单元20与云数据存储库16之间的数据传输。第一网络25和第二网络26可以等同。
[0145] 图3示出了用于将数据记录上传到云数据存储库16中的方法的第一实施方式。该第一实施方式的第一步骤是通过本地传输软件10接收REC-1医疗数据记录MDR,其中,本地传输软件10包括包括核心模块11和可用插件12.1、12.2、12.P,其中,可用插件12.1、12.2、12.P中的每个可用插件12.1、12.2、12.P与远程控制应用17.1、17.2、17.P相关联。具体地,接收REC-1的步骤由输入接口21.1执行。
[0146] 在该第一实施方式中,医疗数据记录MDR被直接从本地数据存储库14.1、14.2、14.P传输到处理插件12.P,因此在接收REC-1的步骤中,医疗数据记录MDR不是由核心模块
11处理。这是通过处理插件12.P在一定时间间隔内检查新的医疗数据记录MDR并且启动将新的医疗数据记录MDR从本地数据存储库14.1、14.2、14.P传输到处理插件12.P来实现的。
如果在先前通过处理插件12.P进行的检查期间不存在医疗数据记录MDR,则此处医疗数据记录MDR被认为是新的。这可以通过以下操作来实现:检查医疗数据记录的创建时间和/或存储时间,或者通过例如通过使用哈希值将本地数据存储库的所有医疗数据记录MDR与由处理插件12.P接收到的所有医疗数据记录MDR的列表进行比较。替选地,本地数据存储库
14.1、14.2、14.P可以被配置成在将每个医疗数据记录MDR存储在本地数据存储库14.1、
14.2、14.P之后直接将其发送至相关联的处理插件12.P。
[0147] 在该第一实施方式中,在可用插件12.1、12.2、12.P与远程应用17.1、17.2、17.P之间存在一一对应,以及在可用插件12.1、12.2、12.P与本地数据存储库14.1、14.2、14.P之间存在一一对应。
[0148] 该第一实施方式的第二步骤是,通过处理插件12.P基于医疗数据记录MDR生成GNR-1匿名数据记录ADR,其中,处理插件12.P是可用插件12.1、12.2、12.P中的一个。具体地,接收GNR-1的步骤由在计算单元22上执行的处理插件12.P执行。
[0149] 在该第一实施方式中,医疗数据记录MDR包括第一数据项D.1和第二数据项D.2,其中,第一数据项D.1包括与患者有关的个人数据,其中,匿名数据记录ADR包括第二数据项D.2和数据记录标识符AD,其中,数据记录标识符AD基于第一数据项D.1。例如,如果医疗数据记录MDR是影像学检查,则第一数据项D.1可以包括要经受影像学检查的患者的姓名、年龄和性别,而第二数据项D.2可以包括影像学检查的实际图像。作为另一示例,如果医疗数据记录MDR是实验室报告,则第一数据项D.1可以包括接受该实验室报告的患者的姓名和年龄,并且第二数据项D.2可以包括实际的实验室数据。因此,第一数据项D.1也可以表示为与个人有关的数据,而第二数据项D.2也可以表示为医疗结果数据。
[0150] 在该第一实施方式中,数据记录标识符AD是利用SHA-1哈希算法(“安全哈希算法”的缩写)计算出的第一数据项D.1的哈希值。替选地,数据记录标识符AD也可以是整个医疗数据记录MDR的哈希值,或者可以使用任何其他哈希算法,例如,MD5(“消息摘要算法5”的缩写)、SHA-2(具体是SHA-224、SHA-256、SHA-384、SHA-512、SHA-512/224、SHA-512/256)、SHA-3(具体是SHA3-224、SHA3-256、SHA3-384、SHA3-512、SHAKE128和HAKE256)、BLAKE、JH或Skein。通过使用哈希算法不可能从数据记录标识符AD中提取第一数据项D.1,因此,具体是远程应用17.1、17.2、17.P无法访问或推断第一数据项D.1。可用插件12.1、12.2、12.P将数据记录标识符AD与第一数据项D.1之间的映射存储在本地插件存储器13.1、13.2、13.P中。可以通过存储该映射来仅在本地环境中将第一数据项D.1重新分配给匿名数据记录ADR。可以通过这种机制来使用远程应用处理匿名数据记录ADR(例如,可以提供复杂的且CPU密集型的渲染),并且可以将经处理的数据映射到本地医疗环境中的患者的个人数据。
[0151] 该第一实施方式的第三步骤是通过核心模块11将匿名数据记录ADR上传UPL到云数据存储库16,其中,云数据存储库16中的匿名数据记录ADR可由与处理插件12.P相关联的远程应用17.P访问。具体地,上传UPL的步骤由在计算单元22上执行的核心模块和由输出接口21.1执行。
[0152] 在该第一实施方式中,通过云传输软件15来管理向云数据存储库16上传的数据,其中,云传输软件15提供用于将数据记录上传到云数据存储库16和从云数据存储库16下载数据记录(换言之,“存储”和“检索”)的API。具体地,云传输服务15可以是FTP服务器(“文件传输协议”的缩写)或SFTP服务器(“安全文件传输协议”的缩写,替选的名称为“SSH文件传输协议”),这些可以处理任意格式的数据文件的上传和下载请求。然后,与处理插件12.P相关联的远程应用17.P可以直接访问云数据存储库16,也可以通过与作为FTP服务器或SFTP服务器的云传输软件15进行交互来访问。替选地,API也可以是专门为本发明设计的专有API,并且与用于数据上传的其他已知API无关。
[0153] 在所显示的第一实施方式中,核心模块11和可用插件12.1、12.2、12.P两者是使用用于交换消息和数据的进程间通信(缩写为“IPC”)在本地传输单元20的操作系统内运行的进程。这些进程特别是在本地传输单元20的计算单元22上运行。向每个进程分配唯一的进程标识符,优选为整数。操作系统可以启动、停止、暂停和继续进程;不同的进程可以并行或准并行运行(通过以高频率特别是以10Hz以上的频率启动或停止进程)。操作系统的示例是在版本7、版本8或版本10的Microsoft Windows,或者基于Linux核心的操作系统,例如Debian或者Ubuntu。
[0154] 在存储器单元23内将专用存储区域分配给核心模块11和插件12.1、12.2、12.P中的每一个,这样它们可以用于实例化和存储局部变量。此外,核心模块11和插件12.1、12.2、12.P两者可以访问公共存储器区域,因此,它们例如可以访问文件系统中的文件。
[0155] 通常,IPC可以是基于存储器的通信或基于消息的通信。基于存储器的通信的示例是共享例如位于本地传输单元20的存储器单元23中的存储器的使用,或者使用文件系统中的文件进行信息交换(优选的,使用单个文件的定和解锁机制)。基于消息的通信的示例是消息队列、(无名)管道、命名管道(替选技术术语为FIFO管道)或套接字的使用。在该第一实施方式中,使用消息队列来完成IPC,替选地,可以使用其他提出的方法。
[0156] 图4示出了用于将数据记录上传到云数据存储库16的方法的第二实施方式。相比于图3中显示的第一实施方式,在该第二实施方式中,通过核心模块11接收REC-1医疗数据记录MDR。这是通过本地数据存储库14.1、14.2、14.P来实现的,本地数据存储库14.1、14.2、14.被配置成在医疗数据记录MDR已经被存储在本地数据存储库14.1、14.2、14.P中之后,或者在本地数据存储库14.1、14.2、14.P中存储的医疗数据记录MDR已更改之后,将每个医疗数据记录MDR直接发送至核心模块11。替选地,核心模块11可以被配置成以特定时间间隔在本地数据存储库14.1、14.2、14.P内检查新的医疗数据记录MDR,并且启动将新的医疗数据记录MDR从本地数据存储库11.14、14.2、14.P传输到核心模块11。如果在核心模块11进行先前检查期间不存在医疗数据记录MDR,则此处医疗数据记录MDR被认为是新的医学数据记录MDR。这可以通过以下操作来实现:检查医疗数据记录MDR的创建时间和/或存储时间,或者例如通过使用哈希值将本地数据存储库的所有医疗数据记录MDR与由核心模块接收到的所有医疗数据记录MDR的列表进行比较。
[0157] 图4中显示的第二实施方式的第二步骤是基于医疗数据记录MDR核心模块11从可用插件12.1、12.2、12.P中选择SEL处理插件12.P。具体地,选择SEL的步骤由在计算单元22上执行的核心模块11执行。在该第二实施方式中,核心模块11确定医疗数据记录MDR的数据格式,并且基于所确定的数据格式选择处理插件12.P。例如,如果数据格式是DICOM,则核心模块11将选择被配置成匿名化和/或处理DICOM数据的处理插件12.P。核心模块11还可以考虑医疗数据记录MDR的其他方面,例如,使用医疗装置创建医疗数据文件,以将医疗数据记录MDR发送至供应商特定的处理插件12.P,或发送至装置特定的处理插件12.P。例如,可以想象存在被配置成使源自磁共振断层扫描装置的医疗数据记录匿名的可用插件12.1、12.2、12.P和被配置成使源自计算机断层扫描装置的医疗数据记录MDR匿名的另一可用插件12.1、12.2、12.P。
[0158] 通过处理插件12.P生成GNR-1匿名数据记录ADR的步骤以及通过核心模块11将匿名数据记录ADR上传UPL到云数据存储库16的步骤与图3中显示和说明的方法的第二实施方式等同。
[0159] 图5示出了用于将数据记录上传到云数据存储库16的方法的第三实施方式。接收REC-1的医疗数据记录MDR的步骤和选择SEL处理插件12.P的步骤与在图4中显示和说明的第二实施方式的各个步骤等同。
[0160] 在该第三实施方式中,生成GNR-1和匿名数据记录ADR的步骤涉及处理插件12.P和核心模块11两者,其中,处理插件12.P实现用于基于医疗数据记录MDR生成GEN匿名数据记录ADR的整体功能,并且其中,核心模块11提供了用于根据匿名化级别参数来使单个数据项匿名的功能。例如,核心模块可以提供以下函数作为字符串:
[0161] func anonymize(字符串数据,int级别)
[0162] 该函数根据匿名化级别返回输入字符串“数据”的匿名字符串。例如,该函数可以接受匿名化级别“级别”的输入值0、1、2和3:如果匿名化级别为0,则该函数将返回输入字符串“数据”作为函数的结果;如果匿名化级别为1,则该函数返回使用内部关键短语来对称加密的输入字符串“数据”(以便可以基于内部关键短语完成去匿名化);如果匿名化级别为2,则该函数返回输入字符串“数据”的哈希值(因此,仅可以通过查找表来完成去匿名化);如果匿名化级别为3,则该函数将返回空字符串(因此完全无法完成去匿名化)。
[0163] 处理插件12.P读取医疗数据记录MDR,并且将医疗数据记录MDR分割成单个数据项。这样的单个数据项的示例是患者的姓名、患者的年龄、患者的性别或医疗数据记录MDR中包含的单个医疗检查结果(例如医疗图像)。处理插件12.P然后可以使用核心模块11的匿名化函数来分别使单个数据项匿名,替选地,可以创建包含若干个数据项的字符串,并且使用核心模块11的匿名化函数来使整个字符串匿名。处理插件12.P可以例如形成包含患者的姓名、年龄和性别的字符串(“约翰·杜,45,男”),该字符串将由核心模块11匿名。
[0164] 处理插件12.P提供给核心模块11的匿名化级别参数可以是处理插件12.P的属性(例如,因为与处理插件12.P相关联的远程应用17.P需要个人数据的特定匿名化),替选地,匿名化级别参数可以是本地医疗机构的属性(例如,如果不同国家的数据保护法律要求不同的匿名化级别),其可以被设置为本地传输软件10内或本地传输单元20内的全局参数。
[0165] 在该第三实施方式中,由核心模块11将匿名数据记录ADR上传UPL到云数据存储库16的步骤是异步的(另一技术术语是“非阻塞”)。核心模块11将以下函数定义为整型:
[0166] func upload_asynch(数据)
[0167] 这启动了所提供数据的异步上传,从而返回上传ID(上传ID可以与可以访问的上传数据的链接或URL等同)。该函数是非阻塞的,因此该函数在调用该函数后立即返回ID,从而在单独的线程中执行数据的实际上传。这意味着处理插件12.P可以在还没有完成匿名数据记录ADR的上传时处理其他数据,例如,处理插件12.P可以使其他医疗数据记录MDR匿名。这种异步方法是有益的,因为由于本地基础架构与云基础架构之间的带宽有限而引起数据上传通常比内部数据处理慢得多。
[0168] 在完成上传之后,进行通知NTF-1处理插件12.P有关由核心模块11进行的上传UPL完成的步骤。可以通过将包括上传ID的消息从核心模块11发送至处理插件12.P来完成该通知。如果处理插件12.P调用核心模块11的用特定ID通知处理插件12.P有关上传的状态的函数,则也可以将该消息发送至处理插件12.P。该消息还可以包括描述上传的状态(例如“成功”、“处理中”、“待处理”、“中止”)的参数,其中,“成功”意味匿名数据记录ADR已成功上传到云数据存储库16中,其中,“处理中”意味当前正在执行匿名数据记录ADR的上传,其中,“待处理”意味尚未开始匿名数据记录ADR的上传(例如,因为其他上传具有更高的优先级),并且其中,“中止”意味在上传期间发生了错误,因此上传没有成功。
[0169] 还可以存在通知NTF-2与处理插件12.P相关联的远程应用17.P有关上传UPL的完成的可选步骤。通知NTF-2的步骤可以通过使用API调用从核心模块11或从处理插件12.P将消息发送至与处理插件12.P相关联的远程应用17.P来实现。
[0170] 图6示出了用于将数据记录上传到云数据存储库16的方法的第四实施方式。接收REC-1、选择SEL、生成GNR-1和上传UPL的步骤分别与在图5中显示和说明的第三实施方式的步骤等同。
[0171] 所显示的第四实施方式的第一步骤是通过核心模块11接收REC-2插件安装文件,其中,插件安装文件包括可安装的插件和配置文件。具体地,接收REC-2的步骤由输入接口21.1执行。在所显示的第四实施方式中,插件安装文件可加载到本地传输单元20的存储器单元23中,并且插件安装文件包括用于当在本地传输单元20中执行插件安装文件时使所述本地传输单元基于配置文件将可安装的插件安装为附加可用插件的程序代码段。
[0172] 在该第四实施方式中,插件安装文件位于本地传输软件10,具体是核心模块11可以访问的公共存储库中。该公共存储库可以包含用于不同可安装的插件的若干个插件安装文件。在该第四实施方式中,核心模块11以预定的时间间隔(例如每天)检查是否新的或更改的插件安装文件位于公共存储库中,并且在肯定的情况下安装在新的或更改的插件安装文件中包含的可安装的插件。公共存储库可以与云数据存储库16等同,但是通常公共存储库与云数据存储库16不同。替选地,也可以例如通过用户手动或由外部插件分发服务将插件安装文件发送至核心模块11。
[0173] 可安装的插件可以是被配置成扩展现有本地传输软件10的功能的新插件12.1、12.2、12.P。替选地,可安装的插件可以被将配置成替换可用插件12.1、12.2、12.P中的一个。通过使用这样的替换安装,实现了可用插件12.1、12.2、12.P的更新机制。
[0174] 所显示的第四实施方式的第二步骤是基于配置文件将可安装的插件安装INST为本地传输软件10内的附加可用插件12.1、12.2、12.P。具体地,安装INST的步骤由在计算单元22上执行的核心模块11执行,特别是还涉及存储器单元23。具体地,可安装的插件将被安装在托管本地传输软件10的本地传输单元20的存储器单元23中。在这种情况下,配置文件定义了可安装的插件可以处理的文件格式。该信息可以由核心模块11使用,例如,在从可用插件12.1、12.2、12.P中选择SEL处理插件12.P的步骤中。
[0175] 安装INST的步骤可以包括由本地传输单元20的计算单元22编译在插件安装文件中包含的源代码。替选地,可安装的插件被包含为可执行文件,该可执行文件可以被复制到本地传输单元20的存储器单元23。
[0176] 图7示出了被配置成实现图6中显示的方法的第四实施方式的软件体系结构的示例。“插件提供者”是开发和/或提供可安装的插件12.1、12.2、12.P、通过使用“插件提交API”将插件安装包上传S7.1、S7.2到“中央插件存储库”的实体。为此,“插件提交API”提供了用于上传插件安装包的方法,该方法至少将插件安装包作为参数,并且将插件安装包存储S7.2在“中央插件存储库”中。具体地,“插件提交API”是云应用,并且“中央插件存储库”是云存储。
[0177] “中央插件存储库”被配置成存储插件的若干个版本。在所显示的实施方式中,存在“中央插件存储库”中存储的四个插件。对于第一插件P1,存在两个不同的版本P1.1和P1.2,对于第二插件,仅存在一个版本P2.1,对于第三插件P3,存在三个不同版本P3.1、P3.2和P3.3,而对于第四插件P4仅存在一个版本P4.1。可以针对插件更新不同的版本,因此仅使用最新版本,而所有旧版本均已过时。替选地,更新被配置成与本地医院环境内的不同软件产品或版本(例如,与不同类型的PACS)配合使用。
[0178] 作为云应用的“插件分发通道”访问S7.3“中央插件存储库”,并且将插件安装文件分发S7.4到“插件运行时管理”,即本地应用。在该实施方式中,“插件分发通道”是云传输软件15的一部分,并且“插件运行时管理”是本地传输软件10的核心模块11的一部分。
[0179] “插件运行时管理”将插件安装S7.5在“本地插件存储库”中,该“本地插件存储库”也是本地传输软件10的核心模块11的一部分。“本地插件存储库”存储所安装的插件,并且“本地插件存储库”可以被托管在本地传输单元20的存储器单元23内。安装S7.5可以包括源代码的编译和/或将可执行文件复制到存储器单元23中。
[0180] “插件运行时管理”还通过使“插件执行环境”从“本地插件存储库”获得S7.7插件并启动S7.6所述插件来初始化INIT插件。“插件运行时管理”还可以通过使“插件执行环境”停止所述插件来终止TERM插件。在所显示的实施方式中,插件P1和P4的版本P1.2和P4.1实际上在“插件执行环境”内正在运行。
[0181] 图8示出了用于将数据记录上传到云数据存储库16的方法的第五实施方式。接收REC-1、选择SEL、生成GNR-1以及上传UPL的步骤与图5中显示和说明的第三实施方式的各个步骤等同。
[0182] 所显示的第五实施方式的第一步骤是确定DET托管本地传输软件10的本地传输单元20的资源参数,其中,该资源参数基于本地传输单元的存储器使用和/或处理器使用。具体地,确定DET的步骤由在计算单元22上执行的核心模块11执行。在该第五实施方式中,存储器使用是本地传输单元20的存储器单元23内使用的存储器与本地传输单元的存储器单元23内的总共可用存储器的比率。具体地,相对于本地传输单元20或存储器单元23的随机存取存储器(RAM)来计算该比率。在该第五实施方式中,处理器使用是由本地传输单元20的计算单元22以特定时间间隔执行的处理步骤与计算单元22以所述时间间隔可执行的最大处理步骤数的比率。在该第五实施方式中,资源参数是包括存储器使用和处理器使用的对。替选地,资源参数可以等同于存储器使用,或者资源参数可以等同于处理器使用。
[0183] 所显示的第五实施方式的第二步骤取决于具有下限资源阈值的资源参数和具有上限资源阈值的资源参数的比较。在该第五实施方式中,下限资源阈值和上限资源阈值都是包括存储器阈值和处理器阈值的对。如果处理器使用低于下限资源阈值的处理器阈值,和/或如果存储器使用低于下限资源阈值的存储器阈值,则所显示的第五实施方式的第二步骤是初始化INIT可用插件12.1、12.2、12.P中的第一插件。如果处理器使用高于上限资源阈值的处理器阈值和/或如果存储器使用高于上限资源阈值的存储器阈值,则所显示的第五实施方式的第二步骤是终止TERM可用插件12.1、12.2、12.P中的第二插件。如果上述两个条件均不满足,则在所显示的第五实施方式中既没有初始化INIT步骤也没有终止TERM步骤。如果资源参数仅基于存储器使用或仅基于处理器使用,则上限和下限阈值也基于该一维量,并且该比较也基于该一维量。具体地,初始化INIT和/或终止TERM的步骤由在计算单元22上执行的核心模块11执行。
[0184] 在该第五实施方式中,第二插件的终止等同于终止与本地传输单元20上的第二插件对应的处理。替选地,终止也可以意味着将第二插件转移至暂停模式,其中,与正常操作模式相比,在暂停模式下,第一插件和第二插件导致更少的存储器使用和/或处理器使用。
[0185] 在该第五实施方式中,第一插件的初始化等同于初始化与本地传输单元20上的第一插件对应的处理。替选地,终止也可以意味着将第一插件从暂停模式转换至正常操作模式。
[0186] 在该第五实施方式中,通过由核心模块11向第二插件发送终止消息来执行终止TERM可用插件12.1、12.2、12.P中的第二插件的步骤。替选地,可以将终止消息发送至托管核心模块11和可用插件12.1、12.2、12.P的操作系统。
[0187] 在该第五实施方式中,通过由核心模块11将初始化消息发送至托管核心模块11和可用插件12.1、12.2、12.P的操作系统来执行初始化INIT可用插件12.1、12.2、12.P中的第一插件的步骤。如果第一插件处于暂停模式下,则也可以通过由核心模块11将初始化消息直接发送至第一插件来执行初始化步骤。
[0188] 图9示出了用于将数据记录上传到云数据存储库16的方法的第六实施方式。接收REC-1的步骤与在图3中显示和说明的第一实施方式的相应步骤等同,生成GNR-1的步骤与在图5中显示和说明的第三实施方式的相应步骤等同。UPL的步骤与在图5中显示和说明的第三实施方式的相应步骤等同,其中,在图9中还显示涉及云传输软件15。
[0189] 所显示的第六实施方式的第一步骤是通过云传输软件15从远程应用17.1、17.2、17.P接收REC-3动作消息,其中,该动作消息包括插件标识符。有利地,从与接收插件相关联的远程应用17.1接收动作消息;替选地,也可以从另一远程应用17.1、17.2、17.P接收动作消息。在该第六实施方式中,接收插件12.1与处理插件12.P不同;替选地,接收插件12.1和处理插件12.P是等同的。该动作消息包括要由接收插件12.1执行的指令。动作消息的第一示例是在与接收插件12.1相关联的本地存储库14.1中搜索新的医疗数据记录MDR的指令。
动作消息的第二示例是将经处理的数据记录PDR存储在与接收插件12.1相关联的本地存储库14.1中的指令。
[0190] 所显示的第六实施方式的第二步骤是通过核心模块11将动作消息从云传输软件15发送TRM到接收插件12.1,其中,接收插件12.1是可用插件12.1、12.2、12.P中的一个,并且其中,通过核心模块11基于插件标识符来选择接收插件12.1。具体地,发送TRM的步骤由在计算单元22上执行的核心模块11和接收插件12.1执行,特别是涉及输入接口21.1。在所显示的第六实施方式中,发送TRM的步骤包括将动作消息从云传输软件15发送TRM-1到核心模块11的子步骤,以及将所述动作消息从核心模块11发送TRM-2到接收插件12.1的子步骤。
在该第六实施方式中,插件标识符是将接收插件12.1与其他可用插件12.2、12.P区别开的唯一标识符,例如,接收插件12.1的名称或与接收插件12.1相关联的唯一字符串或整数。
[0191] 所显示的第六实施方式的第三步骤是通过接收插件12.1处理PROC动作消息。具体地,处理PROC的步骤由在计算单元22上执行的核心模块11执行。如果动作消息是例如在与接收插件12.1相关联的本地储存库14.1中搜索新的医疗数据记录MDR的指令,则由接收插件12.1执行对新的医疗数据记录MDR的搜索。如果动作消息是例如将经处理的数据记录PDR存储在与接收插件12.1相关联的本地存储库14.1中的指令,则通过接收插件12.1将经处理的数据记录PDR存储在与接收插件12.1相关联的本地存储库14.1中。
[0192] 图10示出了用于将数据记录上传到云数据存储库16的方法的第七实施方式。接收REC-1的步骤与在图3中显示和说明的第一实施方式的相应步骤等同,生成GNR-1的步骤与在图5中显示和说明的第三实施方式的相应步骤等同。UPL的步骤与在图5中显示和说明的第三实施方式的相应步骤等同。
[0193] 在该第七实施方式中,医疗数据记录MDR包括第一数据项D.1和第二数据项D.2,其中,第一数据项D.1包括患者的个人数据,并且其中,第二数据项D.2是断层扫描检查的三维成像数据(例如,通过计算机断层扫描装置或磁共振装置)。当然,也可以使用其他医疗数据作为第二数据项D.2。匿名数据记录ADR包括数据记录标识符AD和第二数据项D.2,其中,数据记录标识符AD是第一数据项D.1的哈希值,因此无法根据数据记录标识符AD计算第一数据项D.1。从数据记录标识符AD至第一数据项D.1的映射被存储在与处理插件12.P相关联的特定于插件的存储器13.P中。
[0194] 所显示的第七实施方式的有利的、可选的步骤是通过核心模块11通知NTF-1处理插件12.P有关上传UPL的完成。作为该步骤的替选,处理插件12.P可以定期在云数据存储库16中检查新的匿名数据记录ADR,例如,每分钟或每小时。
[0195] 所显示的第七实施方式的下一步骤是通过与处理插件12.P相关联的远程应用17.P基于匿名数据记录ADR来生成GNR-2经处理的数据记录PDR。在该实施方式中,经处理的数据记录PDT包括数据记录标识符和经处理的第二数据项PD.2。在此,经处理的第二数据项PD.2是在匿名数据记录ADR的第二数据项D.2中包含的成像数据的复杂可视化,例如,通过可以在云中更快和/或更便宜地执行的CPU密集型渲染。此外,用于将匿名数据记录ADR转换成经处理的数据记录PDR的其他方法也是可以的,例如,生成由智能算法确定的动作建议,或出于比较原因而在云数据存储库16中查找类似于匿名数据记录ADR的数据记录。
[0196] 所显示的第七实施方式的下一步骤是通过与处理插件12.P相关联的远程应用17.P来将经处理的数据记录PDR存储STR-1在云数据存储库16中。具体地,可以将经处理的数据记录PDR存储在与远程应用17.P(其与处理插件12.P相关联)相关联的子存储库16.P内。在此,存储STR-1依赖于与处理插件12.P相关联的远程应用17.P对云数据存储库16的API的调用。
[0197] 所显示的第七实施方式的下一步骤是通过将消息从与处理插件12.P相关联的远程应用17.P发送至本地传输软件10来通知NTF-3本地传输软件10有关经处理的数据记录PDR的存储STR-1。在该实施方式中,通过将消息从与处理插件12.P相关联的远程应用17.P发送至核心模块11来完成通知NTF-3,该核心模块11将该消息转发至处理插件12.P。该消息包括经处理的数据记录PDR的存储位置,具体地可以用于访问经处理的数据记录PDR的链接,或可以用于对云数据存储库的API调用的经处理的数据记录PDR的标识符。
[0198] 所显示的第七实施方式的下一步骤是通过处理插件12.P从云数据存储库16下载DWL经处理的数据记录PDR;最后步骤是通过处理插件12.P(例如,基于消息中包含的链接)将经处理的数据记录PDR存储STR-2在本地数据存储库14.1、14.2、14.P中。具体地,下载DWL和存储STR-2的步骤由在计算单元22上执行的处理插件12.P执行,具体地涉及输入接口21.1和/或输出接口21.2。将经处理的数据记录PDR的传输分割为通过消息通知NTF-3和下载DWL经处理的数据记录PDR是有利的,因为消息的文件大小通常比经处理的数据记录PDR(在本实施方式中,包括DICOM数据的可视化)的文件大小小得多。这样的消息然后可以直接在消息队列中使用,消息队列通常对消息的大小有严格的限制。在该第七实施方式中,经处理的数据记录PDR被存储在与处理插件12.P相关联的本地数据存储库14.P中,该本地数据存储库14.P是PACS(“图片存档和通信系统”)。在该实施方式中,通过使用第一数据项D.1与存储在与处理插件12.P相关联的特定于插件的存储器13.P中的数据记录标识符AD之间的映射,在经处理的数据记录PDR中包含的数据记录标识符AD可以再次映射到包含个人数据的第一数据项D.1。因此,处理插件12.P可以生成包括第一数据项D.1和经处理的第二数据项PD.2的经处理的医疗数据记录PMDR,该经处理的医疗数据记录PMDR可以被保存在与处理插件12.P相关联的本地数据存储库14.P中。
[0199] 通过该实施方式,由于第一数据项D.1的个人数据从不传输到云和/或医院或医院组的外部,因此可以根据数据隐私法规使用云资源来处理医疗数据记录MDR。
[0200] 图11显示了在图10中显示的用于上传数据记录的方法的第七实施方式中的不同数据记录。医疗数据记录MDR包括第一数据项D.1和第二数据项D.2,其中,第一数据项D.1包括与患者有关的个人数据,并且其中,第二数据项D.2包括对患者的医疗检查的结果,例如,医疗成像数据。通过生成GNR-1的步骤,基于医疗数据记录MDR创建匿名数据记录ADR。匿名数据记录ADR包括第二数据项D.2和数据记录标识符AD,其中,数据记录标识符AD基于第一数据项D.1。具体地,第一数据项D.1不能从数据记录标识符AD中重建。医疗数据记录MDR和匿名数据记录ADR也是用于上传数据记录的方法和其他方法的其他实施方式的相关数据记录。通过生成GNR-2的步骤,创建了经处理的数据记录PDR,其中,经处理的数据记录PDR包括数据记录标识符AD和经处理的第二数据项PD.2,其中,经处理的第二数据项PD.2基于第二数据项D.2。通过将经处理的数据记录PDR存储STR-2在本地数据存储库14.1、14.2、14.P中的步骤,创建了经处理的医疗数据记录PMDR,其中,经处理的医疗数据记录PMDR包括第一数据项D.1和经处理的第二数据项PD.2。
[0201] 图12显示了以下步骤的更详细视图:在动作消息是用于将处理数据记录PDR存储在与接收插件12.1、12.2、12.P相关联的本地存储库14.1、14.2、14.P中的指令的情况下,从远程应用17.1、17.2、17.P接收REC-3动作消息的步骤、通过核心模块11将动作消息从云传输软件15发送TRM至接收插件12.1、12.2、12.P的步骤、以及通过接收插件12.1、12.2、12.P处理PROC动作消息的步骤。
[0202] 远程应用17.1、17.2、17.P在此调用S12.1云传输软件15的“发送消息API”。该API被配置成接收不同格式的消息并启动对接收到的消息的处理,此处,该消息包括经处理的数据记录PDR的元数据,具体是至位于云数据存储库16中的经处理的HL7数据文件的链接。为了处理消息,“发送消息API”将接收到的消息入队S12.2到云存储软件15的“ServiceBus队列”中。该队列根据FIFO(“先进先出”的缩写)进行工作,以存储需要被发送至本地传输软件10的消息,使得云传输软件15的性能不受云传输软件15与本地传输软件10之间的数据连接的带宽的限制。
[0203] “服务总线队列”触发S12.P本地传输软件10的核心模块11的“监控服务”。该“监控服务”被配置成从云传输软件15接收消息或其他交互处理,并且将接收到的消息或其他交互处理入队S12.4到“MSMQ”(“微软消息队列”的缩写,替选地,可以使用消息队列的其他实现方式)。该第二队列的使用具有的优点是,通过本地传输软件10的下载处理和通过本地传输软件10的其他处理步骤两者也是非阻塞的。
[0204] 然后,“插件运行时”负责根据例如FIFO原理或根据消息的优先级使消息从“MSMQ”中出列S12.5,并且将消息转发S12.6到正确的处理插件12.P。处理插件12.P使用元数据(至经处理的HL7数据记录的链接)来调用S12.7“存储访问服务”,以便访问经处理的HL7数据记录并将其下载S12.8到本地数据存储器。
[0205] 处理插件12.P调用S12.9“HL7请求处理程序”,以将动作消息入队S12.10到“MSMQ”中。“插件运行时”使动作消息出列S12.6,该消息命令“插件运行时”调用S12.11“HL7 API”,以便将经处理的HL7数据记录存储S12.12在“EMR系统”(电子病历的缩写)”中。
[0206] 图13示出了用于将数据记录上传到云数据存储库16的方法的第八实施方式。接收REC-1、选择SEL、生成GNR-1以及上传UPL的步骤与图5中显示和说明的第三实施方式的相应步骤等同。
[0207] 用于将数据记录上传到云数据存储库16的方法的第八实施方式还包括以下步骤:将第一消息从核心模块11发送SND-1至处理插件12.P。此处,第一消息是提示处理插件12.P报告其当前状态的状态查询消息。可以通过调用处理插件12.P的API函数来将消息从核心模块11发送至处理插件12.P。可以想到,存在可以使用处理插件12.P的不同API函数,例如,用于查询处理插件12.P是否正在运行并且由核心模块11成功加载的函数,以及用于查询处理插件12.P是否能够利用提供的服务的核心模块11并且在不出现任何基础架构问题的情况下完成预期的功能的函数。
[0208] 用于将数据记录上传到云数据存储库16的方法的第八实施方式还包括以下步骤:响应于将第一消息从核心模块11发送SND-1至处理插件12.P的步骤,将第二消息从处理插件12.P发送SND-2至核心模块11的步骤。此处,第二消息是包含处理插件12.P的当前状态的状态响应消息。此处,第二消息是处理插件12.P的API函数的返回值。
[0209] 图14示出了用于生成匿名数据记录ADR的方法的实施方式的流程图。用于生成匿名数据记录ADR的方法的所显示的实施方式包括以下步骤:通过本地传输软件10的核心模块11接收REC-1医疗数据记录MDR的步骤、通过核心模块11基于医疗数据记录MDR从可用插件12.1、12.2、12.P中选择SEL处理插件12.P的步骤,以及通过处理插件12.P基于医疗数据记录MDR生成GNR-1匿名数据记录ADR的步骤。这些步骤可以包括用于上传图4和/或图5中显示的数据记录的方法的相应步骤的特征和有利实施方式。
[0210] 图15示出了用于生成匿名数据记录ADR的方法的另一实施方式的流程图。用于生成匿名数据记录ADR的方法的所显示的实施方式包括图14中显示的实施方式的步骤,以及通过核心模块11接收REC-2插件安装文件的步骤,其中,插件安装文件包括可安装的插件和配置文件,以及基于该配置文件安装INST可安装的插件作为附加的可用插件12.1、12.2、12.P的步骤。这些附加步骤可以包括图6中显示的用于上传数据记录的方法的相应步骤的特征和有利实施方式。具体地,用于生成匿名数据记录ADR的方法的该实施方式可以使用图
6中显示的软件体系结构。
[0211] 图16示出了用于生成匿名数据记录ADR的方法的另一实施方式的流程图。用于生成匿名数据记录ADR的方法的所显示的实施方式包括图13中显示的实施方式的步骤,以及确定DET托管本地传输软件10的本地传输单元20的资源参数的步骤,其中,资源参数基于本地传输单元10的存储器使用和/或处理器使用;如果资源参数低于下限资源阈值则初始化INIT可用插件12.1、12.2、12.P中的第一插件的步骤;如果资源参数高于上限资源阈值则终止TERM可用插件12.1、12.2、12.P中的第二插件的步骤,其中,上限资源阈值高于下限资源阈值。这些附加步骤可以包括图8中显示的用于上传数据记录的方法的相应步骤的特征和有利实施方式。
[0212] 图17示出了用于生成匿名数据记录ADR的方法的另一实施方式的流程图。用于生成匿名数据记录ADR的方法的所显示的实施方式包括图14中显示的实施方式的步骤,以及通过云传输软件15从远程应用17.1、17.2、17.P中接收REC-3动作消息的步骤,其中,动作消息包括插件标识符;通过核心模块将动作消息从云传输软件传输TRM至可用插件12.1、12.2、12.P中的接收插件12.1的步骤,其中,接收插件12.1由核心模块11基于插件标识符选择;以及通过接收插件12.1处理PROC动作消息的步骤。这些附加步骤可以包括图9中显示的用于上传数据记录的方法的相应步骤的特征和有利实施方式。
[0213] 图18示出了用于在本地传输软件内或本地传输单元内安装可安装的插件的方法的流程图。该方法包括以下步骤:通过核心模块11接收REC-2插件安装文件的步骤,其中,该插件安装文件包括可安装的插件和配置文件;以及基于配置文件安装INST可安装的插件作为附加的可用插件12.1、12.2、12.P的步骤。这些步骤可以包括图6中显示的用于上传数据记录的方法的相应步骤的特征和有利实施方式。具体地,用于在本地传输软件10内或本地传输单元20内安装可安装的插件的方法的该实施方式可以使用图6中显示的软件架构。
[0214] 图19示出了用于初始化或终止本地传输软件或所述本地传输单元内的插件的方法的流程图。该方法包括以下步骤:确定DET托管本地传输软件10的本地传输单元20的资源参数,其中,该资源参数基于本地传输单元10的存储器使用和/或处理器使用;如果资源参数低于下限资源阈值则初始化INIT可用插件12.1、12.2、12.P中的第一插件的步骤;以及如果资源参数高于上限资源阈值则终止TERM可用插件12.1、12.2、12.P中的第二插件的步骤,其中,上限资源阈值高于下限资源阈值。这些步骤可以包括图8中显示的用于上传数据记录的方法的相应步骤的特征和有利实施方式。
[0215] 图20示出了用于在本地传输软件内或本地传输单元内处理动作消息的方法的流程图。该方法包括:通过云传输软件15从远程应用17.1、17.2、17.P中接收REC-3动作消息的步骤,其中,该动作消息包括插件标识符;通过核心模块将动作消息从云传输软件传输TRM至可用插件12.1、12.2、12.P中的接收插件12.1的步骤,其中,接收插件12.1是通过核心模块11基于插件标识来选择的;以及通过接收插件12.1处理PROC动作消息的步骤。这些步骤可以包括图9中显示的用于上传数据记录的方法的相应步骤的特征和有利实施方式。
[0216] 图21示出了用于将经处理的医疗数据记录存储在本地传输软件10内的方法的流程图。该方法包括以下步骤:通过与处理插件12.P相关联的远程应用17.P基于匿名数据记录ADR来生成GNR-2经处理的数据记录PDR;通过与处理插件12.P相关联的远程应用17.P来将经处理的数据记录PDR存储STR-1在云数据存储库16中的步骤;通过将消息从与处理插件12.P相关联的远程应用17.P发送至本地传输软件10来通知NTF-3本地传输软件10有关经处理的数据记录PDR的存储STR-1的步骤;通过处理插件12.P从云数据存储库16下载DWL经处理的数据记录PDR的步骤;以及通过处理插件12.P将经处理的数据记录PDR存储STR-2在本地数据存储库14.1、14.2、14.P中的步骤。这些步骤可以包括图10中显示的用于上传数据记录的方法的相应步骤的特征和有利实施方式。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈