0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一个基于区块链的电子病历共享系统

DPVg_AI_era 来源:lq 2018-12-08 09:33 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在“歪评”区块链之后,前IBM认知医疗研究总监、平安科技首席医疗科学家谢国彤回归本行,聚焦MIT基于区块链的电子病历共享系统MedRec,从Linked Data角度思考区块链的医疗行业应用。

自从今年3月份写完《最具娱乐精神的区块链科普》以后,一直没有写下篇。最近看了MIT Media Lab做的MedRec,一个基于区块链的电子病历共享系统,有点儿感想,分享一下。

万维网和Linked Data

每当听到有人说要把医疗数据放到区块链上的时候,我的第一个问题都是:什么信息应该放到链上?什么不应该放到链上?在区块链诞生的“比特币”场景下,链上记录的是比特币交易信息,这类金融信息的特点是交易频次高,但结构简单,每次交易的数据量小。

电子病历数据却不太一样。相比金融交易系统,电子病历的频次要低很多。在这个“买买买”的时代,一个人可以在一天内轻轻松松扫20次以上的支付宝或微信支付,但他/她一年也不见得会有20次电子病历数据交易。可是单次电子病历数据却相当复杂度,一个患者一次就诊就可以产生挂号信息、病历信息、检验单、检查结果、医学影像、入院记录、手术记录、护理记录和出院小结等结构复杂、模态多样的电子病历数据。

这时问题就来了:难道我们要把这些数据都放到链上吗?把这些数据在区块链的每个节点上都复制一遍?这看起来不像个好主意。

类似的跨系统、多模态复杂数据的共享平台其实我们每天都在用,就是万维网(World Wide Web)。当你刷着淘宝追着剧,同时不停在微信上积赞换购物红包,或者在微博上点评剧中男/女主的时候,你已经在多个复杂的异构系统中进行了信息访问和共享。只不过这个信息共享系统的设计实在太优美,简洁直观,以至于你都没有意识到自己做了这么复杂的事情。

这个优美系统的设计者就是Tim Berners-Lee(TBL),他在1990年圣诞节实现了第一次HTTP通讯,并于2016年因为这个伟大的设计获得了图灵奖。

Tim Berners-Lee因为发明了万维网获得了2016年的图灵奖

在完成万维网的设计后,TBL在2006年提出了Web 2.0的概念,Linked Data。顾名思义,就是把数据,而不是网页,通过链接关联起来;让程序,而不是人,可以在数据的海洋中冲浪。

这个希望在Web之上构建一个分布式结构化数据共享平台的想法远远没有Web成功,但它的一些设计指导原则在基于区块链的电子病历共享系统方面其实很有借鉴意义。

Linked Data有四个设计原则:

用URI(Uniform Resource Identifier)标识所有的数据资源

用户可以通过HTTP协议访问URI

当URI被访问时,返回一些基于标准的有用信息

在URI之间建立链接,这样用户可以发现更多的信息

基于区块链的电子病历共享系统设计

参考Linked Data的四大设计原则,会发现在基于区块链的电子病历共享系统设计中,有一些基本的问题要思考:

什么是数据资源?在Web时代,最基本的数据资源是一个网页、一张图片或者一段视频。在电子病历共享系统中的资源是什么?一个患者,一个医疗机构,一次就诊,一次就诊中产生的一个临床文档?

用什么做数据资源的URI?用什么协议访问这个URI?这里应该用区块链的程序访问协议来代替HTTP。

当用户访问某个URI的时候,应该由谁返回信息?返回什么信息?是由区块链的分布式账本,还是每个医疗机构的本地服务器来返回信息?是返回患者的就诊列表,还是患者的电子病历数据集?返回的信息格式应该如何设计才能更好的支持互操作性(Interoperability)。

URI之间有什么样的语义链接?如何让程序可以在通过链接在数据的海洋中穿梭遨游?

看完MedRec的系统设计,虽然它并没有提Linked Data,不过我觉得它无意中遵循了一些LInked Data的设计原则。想想也不奇怪,毕竟MedRec也是在解决分布式异构数据共享问题,只不过从Web平台换到了区块链平台上。

MedRec的智能合约设计

MedRec采用智能合约(Smart Contract)来表示区块链上的患者、医疗机构、病历信息指针和患者-机构之间的就诊关系,这属于电子病历的元数据(metadata),而真正的数据依然存储在每个医疗机构本地的数据库中。

从智能合约中可以找到医疗机构本地数据库的指针,然后程序通过这个指针可以查询到最终的数据。类似你从谷歌和百度的搜索结果页面中找到Web链接,然后再通过链接访问包含原始数据的网站,获取链接内容。它主要包含三个合约:

管理合约(Registrar Contract):它承担了资源定义的工作。目前MedRec里只有两类资源:患者(Patient)和医疗机构(Provider)。每个资源定义了唯一的URI:Eth addr(Ethereum address),是这个资源在Ethereum区块链平台上唯一的地址,类似一个RDFResource的集合。

摘要合约(Summary Contract):以每个资源(患者或医疗机构)为索引,把这个资源相关的所有数据(关系)都整合起来。这样从一个资源的URI出发,就可以找到所有跟它有关的数据。类似一个RDFGraph,记录了所有以某个RDFResource为subject的RDFStatement的集合。

医患关系合约(Patient Provider Relationship):它表示的是两类URI(患者和医生)之间的语义关系:就诊,类似一个RDFStatement。但它还要表示很多其他信息,所以采用了类似属性图(Property Graph)的方法,在二元关系上附加了很多属性,比如:

Access info:包含实际存储了原始电子病历数据的医疗机构的本地数据库访问信息,如IP地址,数据库用户名等;

EMR queries & hashes:在医疗机构本地数据库中查询某个患者电子病历信息的SQL语句,还有电子病历信息的哈希值。这样如果数据上传区块链之后,医疗机构又对本地电子病历数据进行了修改,通过哈希值是可以发现的,这体现了区块链的不可篡改性和可溯源性;

Permission:它是个哈希表,记录了第三方访问者可以调用哪些额外的SQL查询,类似rdfs:seeAlso的设计,告诉访问者还有哪些有意思的信息可以“顺便”看看;

Mining Bounties:非常区块链风格的赏金设计,很有趣。为了激励区块链上的矿工们(Miner)参与平台的计算,当包含这个电子病历数据更新的block(块)被挖到的时候,矿工自动会得到访问这个赏金(bounty)查询的权限。赏金查询主要是针对人群的一些统计信息,比如“最近一个月来医院A就诊的糖尿病患者的血糖均值”,不会泄漏患者的个人信息,所以也不需要患者的授权。

MedRec的智能合约基本还是从数据库设计的角度出发,考虑的是如何简洁高效地把数据的关系表示清楚,但它无意中遵循了一些Linked Data对数据建模的原则。如果一开始就从Linked Data的设计原则(而不是具体的RDF语法或者W3C标准)出发,这个智能合约的结构应该还可以优化。

另外,请各位RDF(Resource Description Framework)大神不要追究我对RDFStatement,RDFResource,RDFGraph或者Reification等概念的语义内涵或外延不严谨的陈述,这里只是示意而已。

MedRec的系统实现

我觉得MedRec最核心的是智能合约设计,至于系统的实现会因为底层区块链平台的不同选择(Ethereum或HyperLedger或其它平台),或者架构师对工程美学的不同理解而千差万别。

出于完整性的角度,我也非常简单地介绍一下MedRec的系统实现。

MedRec设计了4个模块,通过9个步骤完成资源的注册、病历信息的上链更新、患者授权和病历信息查询等关键过程:

Backend API Library:主要是一些utility功能,简化系统操作的AP;

Ethereum Client:参与和使用Ethereum区块链平台的客户端模块;

Database Gatekeeper:在区块链下访问医疗机构本地数据库的模块I;

EHR Manager:MedRec系统对终端用户的前端用户界面

MedRec可以改进的方面

MedRec比很多随便在HyperLedger上搭的所谓区块链电子病历共享系统的质量高很多,不愧是MIT Media Lab出品。不过它依然只是个原型系统,还有很多方面可以提高,我抛几块砖:

智能合约的设计:Web是目前最成功的异构多模态数据访问和共享架构,Linked Data是Web向结构化数据共享迈进的一步,它的很多设计原则可以应用在基于区块链的电子病历共享系统中,让资源的表示和访问模式更加简洁优美,提高系统的可扩展性和鲁棒性

避免单点失败:目前真正的电子病历数据还是存储在医疗机构本地的数据库中。Web系统设计的初衷就是为了支持大规模多用户访问的,而医疗机构的数据库不是为这个目标设计的,它只是为了支持医院自身的流程管理和分析应用而已。一旦医疗机构的数据库不能被访问,就像微博宕机一样,什么数据都访问不了。目前MedRec去中央数据库的设计并不能避免单点失败的尴尬,也许可以参考Hadoop的思想,在区块链平台的另外2-3个可信赖的节点中保存数据的备份,保证即使某个医疗机构的数据库挂了,真个电子病历共享系统依然不受影响

数据的互操作性:数据共享平台输出的数据格式要满足互操作性的要求。简单的说,就是要让数据使用方能理解查询到的数据,就像Web系统用HTML,Linked Data系统用RDF一样。在医疗领域,除了数据格式的规范,还有医疗术语的语义互操作性。可以考虑目前比较流行的FHIR格式,加上SNOMED-CT这样的医疗术语标准

分布式机器学习:目前MedRec只是个数据查询系统,但并不支持跨医疗机构的数据分析,即使是最基本的统计。可以考虑“加载”类似MapReduce的分布式计算框架,甚至是分布式机器学习框架,支持跨医疗机构的分布式数据分析。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 医疗
    +关注

    关注

    8

    文章

    1957

    浏览量

    61151
  • 数据共享
    +关注

    关注

    0

    文章

    58

    浏览量

    11122
  • 区块链
    +关注

    关注

    112

    文章

    15574

    浏览量

    110517

原文标题:谢国彤:解决分布式异构数据共享,交叉视角看区块链电子病历系统

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    不同场景下的文件共享方案-SMB/WebDAV/FTP/ZeroNews

    四大主流文件共享方案,为企业选型提供专业参考。 SMB 简介 SMB(Server Message Block) 是种网络文件共享协议,主要用于局域网(LAN)内计算机之间的文件和打印机共享
    的头像 发表于 08-28 12:04 683次阅读
    不同场景下的文件<b class='flag-5'>共享</b>方案-SMB/WebDAV/FTP/ZeroNews

    RFID标签在共享经济的应用

    :通过RFID系统,可以实时获取共享资源的位置和状态信息,便于及时调整管理计划。4.自动化:RFID可以与自动管理系统结合,实现共享资源管理的自动化,减少人力成本
    的头像 发表于 07-07 15:22 357次阅读
    RFID标签在<b class='flag-5'>共享</b>经济的应用

    航盛电子出席东风日产第次供应顾问委员会

    近日,以“共创、共赢”为主题的东风日产第次供应顾问委员会在广州召开。39家战略供应商齐聚东风日产企业大学,结合时代机遇与挑战,共商共享发展方针。航盛集团董事长、总裁杨洪作为东风日产供应
    的头像 发表于 07-01 16:58 763次阅读

    循环经济 2.0:海翔科技如何用区块技术追溯二手设备全生命周期

    需求,阐述区块技术在二手设备追溯中的应用路径、优势及面临的挑战,揭示海翔科技如何借助技术创新推动二手设备产业升级。 、引言 循环经济 2.0 强调在资源循
    的头像 发表于 06-27 09:58 765次阅读
    循环经济 2.0:海翔科技如何用<b class='flag-5'>区块</b><b class='flag-5'>链</b>技术追溯二手设备全生命周期

    迅为RK3588开发板Android13系统挂载samba共享文件夹-怎么开启Windows共享

    注:推荐新建用户以及共享目录都是用英文。 windows 系统中,文件夹共享需要设置指定用户与密码,通过输入用户和密码进行连接,在设置共享系统
    的头像 发表于 06-25 10:25 409次阅读
    迅为RK3588开发板Android13<b class='flag-5'>系统</b>挂载samba<b class='flag-5'>共享</b>文件夹-怎么开启Windows<b class='flag-5'>共享</b>目

    PanDao:光学设计中的光学加工建模

    区分。因此,尽管制造还是由互相适当平衡的后续单个过程组成,但已经能够将制造视为整体过程,从而产生新的见解和解决方案。因此,在加工层面进行了方法论分析,将OFT
    发表于 05-12 08:53

    PanDao:光学制造设计

    生成 光学系统的生成般是涉及四方的过程(如图2a所示):从(a)客户开始,他们希望将光作为工具使用,并因此定义了应用参数(例如,MTF、图像分辨率、信噪比dB),接着是(b)光学
    发表于 05-12 08:51

    文掌握RK3568开发板Android13挂载Windows共享目录

    在物联网和边缘计算场景中,开发板与PC端的高效文件交互尤为重要。现以iTOP-RK3568开发板为例,详细演示Android13系统如何通过CIFS协议挂载Windows共享目录,实现开发板与PC
    发表于 04-16 13:55

    安博电子:全路品控体系赋能供应安全

    在全球电子产业面临供应波动、技术迭代和市场需求变化等多重挑战的背景下,安博电子始终秉持“让合作伙伴赢得更多点”的核心理念,致力于打造稳健、高效、可持续的全球供应
    的头像 发表于 04-07 17:03 691次阅读
    安博<b class='flag-5'>电子</b>:全<b class='flag-5'>链</b>路品控体系赋能供应<b class='flag-5'>链</b>安全

    设备管理系统新范式:区块存证+动态权限管理

    企业面对数字化转型挑战,设备管理面临安全与灵活性问题。传统设备管理方案漏洞频出,数据易遭篡改,权限管理僵化。企业需构建区块存证+动态权限管理方案,提升设备管理可信度、灵活性与效率,实现设备管理和合规监管。
    的头像 发表于 03-13 10:41 863次阅读
    设备管理<b class='flag-5'>系统</b>新范式:<b class='flag-5'>区块</b><b class='flag-5'>链</b>存证+动态权限管理

    电子元件ERP系统真的好用吗

    ?本文将围绕这主题展开详细探讨。电子元件ERP系统的核心价值电子元件ERP系统通过集成企业
    的头像 发表于 02-27 10:36 1277次阅读
    <b class='flag-5'>电子</b>元件ERP<b class='flag-5'>系统</b>真的好用吗

    人工智能、云计算、区块三者区别对比

    AI人工智能基于算法和数据,擅长处理复杂数据;云计算依赖虚拟化和网络,提供高效计算;区块利用密码学,保证数据安全透明。三者在数据处理、安全性和应用场景上各有特色,AI人工智能适用于智能决策,云计算支持大规模数据处理,区块
    的头像 发表于 02-20 14:45 1193次阅读

    做的系统需要用到4片ADS1298,在多器件联接方式中,标准模式和菊模式,哪个更换好些?

    我正在做的系统需要用到4片ADS1298,在多器件联接方式中,标准模式和菊模式,哪个更换好些? 优势在哪里?
    发表于 02-08 06:54

    hyper-v共享,Hyper-V 共享:Hyper-V的资源共享设置

    的解决方案。今天就为大家介绍Hyper-V共享:Hyper-V的资源共享设置。    在Hyper-V虚拟化环境中,资源共享是实现高效管理和灵活部署的关键功能之。Hyper-V提供了
    的头像 发表于 02-07 10:26 1833次阅读
    hyper-v<b class='flag-5'>共享</b>,Hyper-V <b class='flag-5'>共享</b>:Hyper-V的资源<b class='flag-5'>共享</b>设置

    新加坡共享主机怎么设置ip

    在新加坡设置共享主机的IP地址,通常涉及多个步骤,包括评估需求、选择服务商、配置网络等。以下是详细的设置指南,主机推荐小编为您整理发布新加坡共享主机怎么设置ip。
    的头像 发表于 01-24 11:47 738次阅读