京公网安备 11010802034615号
经营许可证编号:京B2-20210330
医疗大数据分析管理系统的设计与科研应用
1 背景
我院半结构化电子病历起用于2005年,至今已积累电子病历近50万份。由于病历完成者主要是进修医和学生,数据质量无法满足科研需求,我们又开发了科研电子病历系统,供科研人员在其中补充录入普通电子病历没有的数据。两个系统共为科研数据中心的数据来源。科研数据中心的应用大大提高了科研工作效率及准确性。但随着数据量和查询维度的增加,数据查询和数据挖掘的速度越来越慢。为此,我们决定引入分布式存储及分布式计算技术,建立医疗大数据分析管理系统,来提高数据处理效率。
2 硬件系统架构
我们采用MongoDB作为存储工具。首先,因为普通关系型数据库的每次操作都会有一致性检查,而MongoDB的设计没有这个步骤,所以MongoDB的存储效率比普通关系型数据库更高。其次,医院总数据量低于5T,综合考虑数据量级及管理成本,没有选择hadoop。而且,MongoDB也考虑了设备故障出现的场景,在设计时就做了容灾和故障转移的方案。
图1 硬件系统架构
如图1所示,客户端连接3台应用服务器,应用服务器主要负责随访、数据采集清洗和科研项目管理等业务。因为做大数据分析,尽管本项目对存储量要求不高,但对I/O及CPU运算速度却要求很高,故设计9台PC服务器用来进行分布式存储及计算,这9台PC服务器由三套副本集组成,以提高存储及计算效率。每个副本集又由三个存储节点组成,每个存储节点各有分工,但数据相互备份,以保证数据安全。
MongoDB的集群部署方案中有三类角色:实际数据存储结点(shard)、配置文件存储结点(config server)和路由接入结点(mongos)。连接的客户端直接与路由结点相连,从配置结点上查询数据,根据查询结果到实际的存储结点上查询和存储数据。
mongos,数据库集群请求的入口,所有的请求都通过mongos进行协调,不需要在应用程序添加一个路由选择器,mongos自己就是一个请求分发中心,它负责把对应的数据请求请求转发到对应的shard服务器上。在此我们考虑部署3台mongos作为请求的入口,防止其中一台宕机后所有的mongodb请求都无法操作。
config server,顾名思义为配置服务器,存储所有数据库元信息(路由、分片)的配置。mongos本身没有物理存储分片服务器和数据路由信息,只是缓存在内存里,配置服务器则实际存储这些数据。mongos第一次启动或者关掉重启就会从 config server 加载配置信息,以后如果配置服务器信息变化会通知到所有的 mongos 更新自己的状态,这样 mongos 就能继续准确路由。在此我们考虑部署3台config server 配置服务器,就算其中一台宕机, mongodb集群仍然可用。
shard,实际的数据存储节点,把既往一台服务器存储的数据分散到3台存储,不仅存储空间大大的扩展,同时硬盘的读写,网络的IO、CPU和内存都得到很大的扩展。在Mongodb集群中只要设置好了分片规则,通过mongos操作数据库就能自动把对应的数据操作请求转发到对应的分片机器上。同时每个分片有3台服务器组成副本集(Replica Set) ,保证同一份数据存储三份。
3 软件系统架构
院内医疗数据大量分散存储在HIS、LIS、EPR、PACS等子系统中,院外数据主要存储在随访系统中。这些数据具有多源相关性、异构性、海量高速性的特点,有效的数据整合是大数据分析的前提。首先,所有子系统数据通过医院系统集成平台进行采集,然后通过解析、映射、标准化等手段进行加工处理,最后存储于数据仓库中。数据仓库中的数据通过聚合统计、结构化、归一等技术手段,为大数据查询、挖掘、随访、科研项目管理等应用系统提供数据支撑,具体如图2所示。
图2 软件系统架构
4 应用效果分析
我院科研大数据分析管理系统启用后效果明显,到目前为止已建立20个专业科研数据库,支持了15个科研项目。完成各类科研查询200余项次,发表论文上百篇,其中SCI文章数十篇。科研工作绩效长期在北京市医管局系统名列前茅。科研人员普遍反映工作效率有很大改善。
5 目前存在的不足
5.1数据分析与建模中存在的问题 首先,医疗信息系统通常不是为了科研和数据分析设计的。从数据分析的角度看,医疗数据通常比较复杂,医疗数据建模与医疗业务流程关系密切,需要不同领域的知识,包括医学、生物统计学、流行病学和信息学等。在某些涉及基因疗法的医学数据中,还需要有基因学领域的专家。仅凭HIS厂商是无法实现的。因此如何协调好各领域专家,建立行之有效的数据模型是项目成败的关键。
5.2 医学自然语言处理难度大,影响数据质量 由于大量详细的病人信息以文本形式存储,而文本描述的信息通常存在歧义和很多非标准化描述,如何把这些非结构化数据转化为统一的结构化数据是医学信息处理的重要步骤。自然语言处理是解决方案之一。将非结构化医疗数据转化为结构化数据需要一系列医学自然语言处理技术,包括:医学名实体识别,名实体自动编码,名实体修饰词识别,时间信息抽取等。作为信息抽取的关键技术,医学信息抽取一直是医学自然语言处理的研究热点。
5.3 病案质量欠佳 科研数据中心的数据是需要经过结构化、标准化处理后才能存储的。这些数据要求以病例个体为单位,以时间为线索,按照开放的标准架构进行组织存储,如HL7、CDA,保证病例数据的可用性和可扩展性。提供灵活的数据检索能力,方便查找符合条件的病例,并通过数据输出接口将数据导出成为标准的,可供第三方平台处理的数据格式。
临床科研对病案质量要求更高,低质量的病案会直接导致临床科研结果的偏差。因此,严谨的病历书写规范及数据校验,对每一个数据元素进行标准化定义,是必不可少的步骤。
5.4 患者提供随访数据的依从性有待提高 随访数据对于医学科研的意义不言而喻。在实践过程中,我们发现心脑血管疾病人群大多为老年人,而老年人对于电子设备操作不熟练,影响了数据采集的及时性和准确性。未来应通过可穿戴设备、远程会诊、异地医疗机构信息系统互联互通等方式提高患者,特别是外地患者随访的依从性。
6 结论与展望
医疗卫生行业的数据资源为大数据技术应用提供了条件。目前医疗大数据的相关标准与软件应用等研究仍处在起步阶段,开拓空间大,提供机会多,但也面临诸多现实问题。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
你有没有想过,手机里点外卖、刷社交软件、转一笔账,背后到底是谁在替你"记着账"? 答案其实很简单:数据库,以及跟它对话的那 ...
2026-10-07CDA数据分析师 出品 作者:李诗怡 一、数据分析四大思维 1. 对比思维:没有对比就没有分析 核心观点:单独一个数字没有意义,有 ...
2026-10-05Kimball 是方法,星型模型是它产出的形状。 很多人把"Kimball vs 星型模型"当成一道选择题——这本身就是个误会:Kimball 是动词 ...
2026-10-05写在开头 老板在微信上甩来一句: "帮我看下为什么销量跌了。" ” 你回工位,打开 SQL,开始写。查订单表、拉近三个月、按 ...
2026-10-03CDA数据分析师 出品 作者:李诗怡 1. 事实表 vs 维度表 对比维度 事实表 维度表 核心问题 记录“业务发生了什么事” 描述 ...
2026-10-02做数据聚合时,PySpark的groupBy()确实能完成统计,这也是它的本职工作。但它有一个根本性局限:每一组数据,最终只能返回一行 ...
2026-10-01热力地图是数据可视化中极具辨识度与实用性的空间分析图表,结合地理空间维度与数据密度特征,通过颜色深浅、色阶渐变直观展示数 ...
2026-09-30 很多数据分析师做过按月份的销售额趋势图,画过按天的流量折线图,但当被问到“时间序列和普通数据有什么本质区别”“季节性 ...
2026-09-30同样是“银行数据岗”,在国有大行总行数据中心、在一家城商行的零售部、在银行系金融科技子公司、在保险公司,工作内容、成长节 ...
2026-09-29在数据分析与统计学研究中,数据往往不是独立存在的,不同变量之间普遍存在相互关联、相互影响的关系。相关性统计分析是挖掘变量 ...
2026-09-29 导读:大多数人只把 dataclasses 当成偷懒工具,用来少写 __init__、__repr__ 这类魔法方法。但它的能力远不止于此。本文带 ...
2026-09-29 很多数据分析师能熟练地计算指标、搭建标签体系,但当被问到“画像到底在解决什么问题”“画像和标签是什么关系”“画像如何 ...
2026-09-29在MySQL数据库运维与业务开发中,行业普遍存在“数据达到千万级就必须分表”的说法。但在实际生产环境中,千万条数据并不是强制 ...
2026-09-28CDA数据分析师 出品 作者:李诗怡 1. 5W1H 分析法 定义:经典系统性思维框架,通过六个核心维度对问题进行全方位拆解与剖析,确 ...
2026-09-28 很多分析师在设计标签时思路清晰,但真到落地环节却面临“数据在手,不知如何转化为可用标签”的困境:或因加工方式选择不当 ...
2026-09-28CDA数据分析师 出品 作者:李诗怡 1. 用户标签体系 定义: 通过一系列高度精炼的特征标识,对用户属性、行为与偏好进行量化刻画 ...
2026-09-24Pandas是Python生态中用于表格数据处理的核心库,广泛应用于数据清洗、统计运算、报表输出、数据分析建模等场景。在处理极大数值 ...
2026-09-24随着数字经济快速发展,数据已成为核心生产要素,各行各业的业务沉淀、用户行为、设备运行、市场交易均产生海量数据。数据处理作 ...
2026-09-24 很多分析师每天和数据打交道,但当被问到“标签是什么”“标签和指标有什么区别”“标签体系如何设计”时,却常常答不上来。 ...
2026-09-24在时序数据分析中,大部分业务数据并非持续平稳变化,而是会在某些时间节点出现突然抬升、断崖下跌、趋势反转、波动异变等现象, ...
2026-09-23