本发明涉及计算机系统技术领域,尤其是涉及一种基于区块链技术的健康数据管理系统。
背景技术:
同一患者的病历信息存储于不同医疗机构、同一疾病的不同疾病信息存储于不同医疗机构,数据存储分散调用困难一直是医疗机构亟待解决的技术问题。现有技术将区块链技术应用到医疗信息管理中实现不同医疗机构信息的共享。
区块链的本质是分布式账本。它作为比特币的底层技术而日益被熟知,通过将众多个人节点相连,区块链能够构建一个无任何中心节点参与的底层架构设施。区块链可被用于记载重要的操作记录,具有去中心化、开放性、自治性、信息不可篡改、匿名性的特点。智能合约使得用户能够在区块链上发布自定义的服务接口,提供业务逻辑支持。
将不同医疗机构的医疗数据存储于不同区块中,并将区块全部上链可实现信息的共享。但不同医疗机构对医疗数据的记录方式不同,在对不同医疗机构的医疗数据进行汇总时未对医疗数据进行质量把控,导致最终搜索得到的数据质量很差。
技术实现要素:
本发明的目的在于提供了一种对不同医疗机构的医疗数据进行共享且统一进行数据梳理的基于区块链技术的健康数据管理系统。
为实现上述目的,本发明采取的技术方案为:一种基于区块链技术的健康数据管理系统,包括智能合约,所述智能合约配置有公钥数据库和病症查询数据库,所述公钥数据库存储有若干医生节点的id和所述医生节点的id对应的医生公钥,所述病症查询数据库存储有若干病症名称和所述病症名称对应的链号,所述健康数据管理系统还包括数据采集模块、数据验证模块和数据梳理模块;
所述数据采集模块包括若干医生节点,所述医生节点输入患者医疗信息,所述患者医疗信息包括患者身份信息、诊断时间、病症名称、病症信息、治疗方案、预计病症信息和复诊时间,所述治疗方案包括若干治疗时间和对应所述治疗时间所需进行的治疗操作信息,所述病症信息反映患者的病症情况,将所述患者医疗信息和所述医生节点的id发送到所述数据验证模块;
所述数据验证模块,所述患者医疗信息采用哈希算法计算得到第一医疗哈希值,用医生私钥对所述患者医疗信息和第一医疗哈希值进行签名,智能合约根据所述医生节点的id从所述公钥数据库中调取得到医生公钥,使用所述医生公钥验证签名的有效性并调用所述智能合约验证所述患者医疗信息的有效性,若签名和患者医疗信息均有效,则将所述患者医疗信息和医生输入记录发送至所述数据梳理模块,若签名或患者医疗信息无效,则将所述患者医疗信息删除并发出警告;
所述数据梳理模块包括若干信息存储库,所述病症查询数据库中的每一病症名称对应一信息存储库,所述数据梳理模块还包括信息初步梳理单元、诊断信息梳理单元和数据打包单元;
所述信息初步梳理单元,获得所述患者医疗信息,若所述患者医疗信息中的病症名称能在所述病症查询数据库中匹配到则将该病症对应的所述患者医疗信息存储于对应的信息存储库,若所述患者医疗信息中的病症名称不能在所述病症查询数据库中匹配到则将该病症名称输入病症查询数据库,建立对应的信息存储库并将该病症对应的所述患者医疗信息存储于对应的信息存储库;
所述诊断信息梳理单元预设有时差基准值,将同一信息存储库中同一患者的患者医疗信息按照诊断时间进行排序,计算相邻诊断时间的时间差得到诊断时差,若所述诊断时差小于所述时差基准值,则计算对应的病症信息的相似度和对应的治疗方案的相似度,若病症信息的相似度小于85%,则发出诊断警报,若治疗方案的相似度小于70%,则发出治疗警报,若病症信息的相似度大于或等于85%且治疗方案的相似度大于或等于70%,则删除一患者医疗信息;
所述数据打包单元预设有存储量阈值,当所述信息存储库中的存储量达到所述存储量阈值时将所述信息存储库压缩得到信息区块,每一所述信息区块匹配有一链号,将所述信息区块进行上链得到区块链。
作为优选,所述数据梳理模块还包括复诊信息梳理单元,所述患者医疗信息还包括患者执行信息,所述患者执行信息反映患者根据治疗方案实际采取的操作;
所述复诊信息梳理单元,获得同一信息存储库中同一患者的不同诊断时间的患者医疗信息,获得一所述患者医疗信息记为初诊医疗信息,并获得诊断时间与该患者医疗信息的复诊时间最相近的患者医疗信息记为复诊医疗信息,计算初诊医疗信息中的治疗方案与复诊医疗信息中的患者执行信息的相似度得到遵守医嘱度,计算初诊医疗信息中的预计病症信息与复诊医疗信息中的病症信息的相似度得到恢复度,将遵守医嘱度和所述恢复度存储于所述信息存储库。
作为优选,所述复诊信息梳理单元,获得所述遵守医嘱度和所述恢复度,根据遵守医嘱度和所述恢复度得到治疗修正信息,所述治疗修正信息包括新的治疗方案、新的预计病症信息和新的复诊时间,将所述治疗修正信息存储于所述信息存储库中。
作为优选,所述数据梳理模块还包括并发症梳理单元,所述并发症梳理单元预设有重合基准值,所述患者身份信息包括患者编号;
所述并发症梳理单元,以所述患者编号为索引在所述信息存储库中检索得到对应的若干病症名称作为病症名称组,挑选任一病症名称组作为待匹配名称组,挑选所述待匹配名称组中的任一病症名称作为待匹配名称,选择含有所述待匹配名称的所有病症名称组作为名称组数据池,采用病症关联策略从所述名称组数据池中筛选得到若干关联病症名称,同时含有所述关联病症名称的病症名称组的数量占名称组数据池中的病症名称组的百分比大于所述重合基准值,在所述病症查询数据库中将所述关联病症名称对应的病症名称进行关联。
作为优选,所述病症关联策略,在所述待匹配名称组中挑选除所述待匹配名称之外的任一病症名称作为新的待匹配名称,在名称组数据池中挑选含有新的待匹配名称的所有病症名称组作为关联名称数据池,计算关联名称数据池中的病症名称组数量占名称组数据池中的病症名称组数量的百分比得到重合值,若所述重合值大于所述重合基准值,则所述待匹配名称和新的待匹配名称为关联病症名称,重复所述病症关联策略直至所述待匹配名称组中不再有新的待匹配名称。
作为优选,所述重合基准值为30~50%。
作为优选,所述重合基准值为43%。
作为优选,所述病症名称包括学名和别名。
作为优选,所述信息初步梳理单元中配置有网络链接地址,若输入的病症名称不能在病症查询数据库中匹配到,则跳转到所述网络链接地址并以输入的病症名称为关键词进行检索。
作为优选,所述存储量阈值为100m~1g。
与现有技术相比,本发明的有益效果为:以多个医生节点进行医疗数据的输入且对输入的医疗数据进行签名认证,既能打破不同医疗机构的信息壁垒实现数据的共享又能确保输入的医疗数据未被更改,提高数据来源的可靠性。本发明还对医疗信息进行梳理:将同一疾病的医疗数据存储于同一信息存储库中,将不同医生诊断得出的医疗数据进行比对有利于及时发现错误的诊断结果减少医疗事故并将明显重复的信息进行删除减少信息存储负荷,从而极大提高数据质量。
附图说明
图1为本发明健康数据管理系统的原理图;
图2为数据梳理模块的原理图。
附图标记说明如下:010、公钥数据库;020、病症查询数据库;030、数据采集模块;031、信息存储库;032、信息初步梳理单元;033、诊断信息梳理单元;034、复诊信息梳理单元;035、并发症梳理单元;036、数据打包单元;040、数据验证模块;050、数据梳理模块。
具体实施方式
下面结合附图和实施例,对本发明进一步详细说明。
实施例1:
如图1所示,一种基于区块链技术的健康数据管理系统,包括智能合约,所述智能合约配置有公钥数据库010和病症查询数据库020,所述公钥数据库010存储有若干医生节点的id和所述医生节点的id对应的医生公钥,所述病症查询数据库020存储有若干病症名称和所述病症名称对应的链号,所述健康数据管理系统还包括数据采集模块030、数据验证模块040和数据梳理模块050;
所述数据采集模块030包括若干医生节点,所述医生节点输入患者医疗信息,所述患者医疗信息包括患者身份信息、诊断时间、病症名称、病症信息、治疗方案、预计病症信息和复诊时间,所述治疗方案包括若干治疗时间和对应所述治疗时间所需进行的治疗操作信息,所述病症信息反映患者的病症情况,将所述患者医疗信息和所述医生节点的id发送到所述数据验证模块040;
所述数据验证模块040,所述患者医疗信息采用哈希算法计算得到第一医疗哈希值,用医生私钥对所述患者医疗信息和第一医疗哈希值进行签名,智能合约根据所述医生节点的id从所述公钥数据库010中调取得到医生公钥,使用所述医生公钥验证签名的有效性并调用所述智能合约验证所述患者医疗信息的有效性,若签名和患者医疗信息均有效,则将所述患者医疗信息和医生输入记录发送至所述数据梳理模块050,若签名或患者医疗信息无效,则将所述患者医疗信息删除并发出警告;
如图2所示,所述数据梳理模块050包括若干信息存储库031,所述病症查询数据库020中的每一病症名称对应一信息存储库031,所述数据梳理模块050还包括信息初步梳理单元032、诊断信息梳理单元033和数据打包单元036;
所述信息初步梳理单元032,获得所述患者医疗信息,若所述患者医疗信息中的病症名称能在所述病症查询数据库020中匹配到则将该病症对应的所述患者医疗信息存储于对应的信息存储库031,若所述患者医疗信息中的病症名称不能在所述病症查询数据库020中匹配到则将该病症名称输入病症查询数据库020,建立对应的信息存储库031并将该病症对应的所述患者医疗信息存储于对应的信息存储库031。所述信息初步梳理单元032中配置有网络链接地址,若输入的病症名称不能在病症查询数据库020中匹配到,则跳转到所述网络链接地址并以输入的病症名称为关键词进行检索;
所述诊断信息梳理单元033预设有时差基准值,将同一信息存储库031中同一患者的患者医疗信息按照诊断时间进行排序,计算相邻诊断时间的时间差得到诊断时差,若所述诊断时差小于所述时差基准值,则计算对应的病症信息的相似度和对应的治疗方案的相似度,若病症信息的相似度小于85%,则发出诊断警报,若治疗方案的相似度小于70%,则发出治疗警报,若病症信息的相似度大于或等于85%且治疗方案的相似度大于或等于70%,则删除一患者医疗信息;
所述数据打包单元036预设有存储量阈值(存储量阈值为100m)当所述信息存储库031中的存储量达到所述存储量阈值时将所述信息存储库031压缩得到信息区块,每一所述信息区块匹配有一链号,将所述信息区块进行上链得到区块链。
以多个医生节点进行医疗数据的输入且对输入的医疗数据进行签名认证,既能打破不同医疗机构的信息壁垒实现数据的共享又能确保输入的医疗数据未被更改,提高数据来源的可靠性。信息初步梳理单元032和诊断信息梳理单元033还对医疗信息进行梳理:将同一疾病的医疗数据存储于同一信息存储库031中,将不同医生诊断得出的医疗数据进行比对有利于及时发现错误的诊断结果减少医疗事故并将明显重复的信息进行删除减少信息存储负荷,从而极大提高数据质量。
实施例2:
如图2所示,与实施例1的不同之处在于,所述数据梳理模块050还包括复诊信息梳理单元034,所述患者医疗信息还包括患者执行信息,所述患者执行信息反映患者根据治疗方案实际采取的操作;
所述复诊信息梳理单元034,获得同一信息存储库031中同一患者的不同诊断时间的患者医疗信息,获得一所述患者医疗信息记为初诊医疗信息,并获得诊断时间与该患者医疗信息的复诊时间最相近的患者医疗信息记为复诊医疗信息,计算初诊医疗信息中的治疗方案与复诊医疗信息中的患者执行信息的相似度得到遵守医嘱度,计算初诊医疗信息中的预计病症信息与复诊医疗信息中的病症信息的相似度得到恢复度,将遵守医嘱度和所述恢复度存储于所述信息存储库031。医生可根据遵守医嘱度和恢复度对患者的实际恢复情况进行直观地了解,为治疗方案的调整提供真实数据依据。
获得所述遵守医嘱度和所述恢复度,根据遵守医嘱度和所述恢复度得到治疗修正信息,所述治疗修正信息包括新的治疗方案、新的预计病症信息和新的复诊时间,将所述治疗修正信息存储于所述信息存储库031中。
所述数据梳理模块050还包括并发症梳理单元035,所述并发症梳理单元035预设有重合基准值,所述患者身份信息包括患者编号,所述重合基准值为30%;
所述并发症梳理单元035,以所述患者编号为索引在所述信息存储库031中检索得到对应的若干病症名称(病症名称包括学名和别名)作为病症名称组,挑选任一病症名称组作为待匹配名称组,挑选所述待匹配名称组中的任一病症名称作为待匹配名称,选择含有所述待匹配名称的所有病症名称组作为名称组数据池,采用病症关联策略从所述名称组数据池中筛选得到若干关联病症名称,同时含有所述关联病症名称的病症名称组的数量占名称组数据池中的病症名称组的百分比大于所述重合基准值,在所述病症查询数据库020中将所述关联病症名称对应的病症名称进行关联。
所述病症关联策略,在所述待匹配名称组中挑选除所述待匹配名称之外的任一病症名称作为新的待匹配名称,在名称组数据池中挑选含有新的待匹配名称的所有病症名称组作为关联名称数据池,计算关联名称数据池中的病症名称组数量占名称组数据池中的病症名称组数量的百分比得到重合值,若所述重合值大于所述重合基准值,则所述待匹配名称和新的待匹配名称为关联病症名称,重复所述病症关联策略直至所述待匹配名称组中不再有新的待匹配名称。
实施例3:
与实施例2的不同之处在于,重合基准值为43%。
实施例4:
与实施例2的不同之处在于,重合基准值为50%,存储量阈值为1g。
以上对本发明的一个实施例进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的均等变化与改进等,均应仍归属于本发明的专利涵盖范围之内。
1.一种基于区块链技术的健康数据管理系统,其特征在于包括智能合约,所述智能合约配置有公钥数据库(010)和病症查询数据库(020),所述公钥数据库(010)存储有若干医生节点的id和所述医生节点的id对应的医生公钥,所述病症查询数据库(020)存储有若干病症名称和所述病症名称对应的链号,所述健康数据管理系统还包括数据采集模块(030)、数据验证模块(040)和数据梳理模块(050);
所述数据采集模块(030)包括若干医生节点,所述医生节点输入患者医疗信息,所述患者医疗信息包括患者身份信息、诊断时间、病症名称、病症信息、治疗方案、预计病症信息和复诊时间,所述治疗方案包括若干治疗时间和对应所述治疗时间所需进行的治疗操作信息,所述病症信息反映患者的病症情况,将所述患者医疗信息和所述医生节点的id发送到所述数据验证模块(040);
所述数据验证模块(040),所述患者医疗信息采用哈希算法计算得到第一医疗哈希值,用医生私钥对所述患者医疗信息和第一医疗哈希值进行签名,智能合约根据所述医生节点的id从所述公钥数据库(010)中调取得到医生公钥,使用所述医生公钥验证签名的有效性并调用所述智能合约验证所述患者医疗信息的有效性,若签名和患者医疗信息均有效,则将所述患者医疗信息和医生输入记录发送至所述数据梳理模块(050),若签名或患者医疗信息无效,则将所述患者医疗信息删除并发出警告;
所述数据梳理模块(050)包括若干信息存储库(031),所述病症查询数据库(020)中的每一病症名称对应一信息存储库(031),所述数据梳理模块(050)还包括信息初步梳理单元(032)、诊断信息梳理单元(033)和数据打包单元(036);
所述信息初步梳理单元(032),获得所述患者医疗信息,若所述患者医疗信息中的病症名称能在所述病症查询数据库(020)中匹配到则将该病症对应的所述患者医疗信息存储于对应的信息存储库(031),若所述患者医疗信息中的病症名称不能在所述病症查询数据库(020)中匹配到则将该病症名称输入病症查询数据库(020),建立对应的信息存储库(031)并将该病症对应的所述患者医疗信息存储于对应的信息存储库(031);
所述诊断信息梳理单元(033)预设有时差基准值,将同一信息存储库(031)中同一患者的患者医疗信息按照诊断时间进行排序,计算相邻诊断时间的时间差得到诊断时差,若所述诊断时差小于所述时差基准值,则计算对应的病症信息的相似度和对应的治疗方案的相似度,若病症信息的相似度小于85%,则发出诊断警报,若治疗方案的相似度小于70%,则发出治疗警报,若病症信息的相似度大于或等于85%且治疗方案的相似度大于或等于70%,则删除一患者医疗信息;
所述数据打包单元(036)预设有存储量阈值,当所述信息存储库(031)中的存储量达到所述存储量阈值时将所述信息存储库(031)压缩得到信息区块,每一所述信息区块匹配有一链号,将所述信息区块进行上链得到区块链;
所述数据梳理模块(050)还包括复诊信息梳理单元(034),所述患者医疗信息还包括患者执行信息,所述患者执行信息反映患者根据治疗方案实际采取的操作;
所述复诊信息梳理单元(034),获得同一信息存储库(031)中同一患者的不同诊断时间的患者医疗信息,获得一所述患者医疗信息记为初诊医疗信息,并获得诊断时间与该患者医疗信息的复诊时间最相近的患者医疗信息记为复诊医疗信息,计算初诊医疗信息中的治疗方案与复诊医疗信息中的患者执行信息的相似度得到遵守医嘱度,计算初诊医疗信息中的预计病症信息与复诊医疗信息中的病症信息的相似度得到恢复度,将遵守医嘱度和所述恢复度存储于所述信息存储库(031);
所述复诊信息梳理单元(034),获得所述遵守医嘱度和所述恢复度,根据遵守医嘱度和所述恢复度得到治疗修正信息,所述治疗修正信息包括新的治疗方案、新的预计病症信息和新的复诊时间,将所述治疗修正信息存储于所述信息存储库(031)中。
2.根据权利要求1所述的一种基于区块链技术的健康数据管理系统,其特征在于,所述数据梳理模块(050)还包括并发症梳理单元(035),所述并发症梳理单元(035)预设有重合基准值,所述患者身份信息包括患者编号;
所述并发症梳理单元(035),以所述患者编号为索引在所述信息存储库(031)中检索得到对应的若干病症名称作为病症名称组,挑选任一病症名称组作为待匹配名称组,挑选所述待匹配名称组中的任一病症名称作为待匹配名称,选择含有所述待匹配名称的所有病症名称组作为名称组数据池,采用病症关联策略从所述名称组数据池中筛选得到若干关联病症名称,同时含有所述关联病症名称的病症名称组的数量占名称组数据池中的病症名称组的百分比大于所述重合基准值,在所述病症查询数据库(020)中将所述关联病症名称对应的病症名称进行关联。
3.根据权利要求2所述的一种基于区块链技术的健康数据管理系统,其特征在于,所述病症关联策略,在所述待匹配名称组中挑选除所述待匹配名称之外的任一病症名称作为新的待匹配名称,在名称组数据池中挑选含有新的待匹配名称的所有病症名称组作为关联名称数据池,计算关联名称数据池中的病症名称组数量占名称组数据池中的病症名称组数量的百分比得到重合值,若所述重合值大于所述重合基准值,则所述待匹配名称和新的待匹配名称为关联病症名称,重复所述病症关联策略直至所述待匹配名称组中不再有新的待匹配名称。
4.根据权利要求2或3所述的一种基于区块链技术的健康数据管理系统,其特征在于,所述重合基准值为30~50%。
5.根据权利要求2或3所述的一种基于区块链技术的健康数据管理系统,其特征在于,所述重合基准值为43%。
6.根据权利要求1~5任一所述的一种基于区块链技术的健康数据管理系统,其特征在于,所述病症名称包括学名和别名。
7.根据权利要求1所述的一种基于区块链技术的健康数据管理系统,其特征在于,所述信息初步梳理单元(032)中配置有网络链接地址,若输入的病症名称不能在病症查询数据库(020)中匹配到,则跳转到所述网络链接地址并以输入的病症名称为关键词进行检索。
8.根据权利要求1所述的一种基于区块链技术的健康数据管理系统,其特征在于,所述存储量阈值为100m~1g。
技术总结