邹芳:电子病历单病种管理系统的国产化改造迁移之路
创建于1941年的西安市第一医院(西北大学附属第一医院)是一所集医疗、教学、科研、预防、康复、急救为一体的三级甲等综合医院。随着西安市第一医院高新院区的全面开诊,日均门诊量将逐步达到6千至1万人次,全年门诊量约120万左右。医院经过谨慎的评估调研,对国产化改造制定详实的推进计划,开展充分的国产化组件和业务测试,历时一年,最终完成了电子病历单病种管理系统的全链路改造,至今业务已稳定运行3个月。
图1 国产化改造整体思路
谨慎评估,大胆突破,选定单病种管理系统作为首批国产化改造业务
医院在进行国产化前期改造时,业务与路线选择十分关键。西安市第一医院对整体业务资产和国产化业务改造工作进行了详细调研和评估,总共调研了24个业务系统:
表1 资产调研表
(调研表说明:红色模块为暂时技术端不可行业务系统;黄色模块为考虑到业务系统较为复杂,与临床诊疗有较大关联,因此暂不选择)
医院经过与软件厂商的沟通,获取了国产化环境下对应医疗软件的测试报告与改造情况,然后再次进行谨慎评估,主要调研评估的维度如下:
1.业务影响:根据业务影响程度,对业务进行分类,主要包括行政办公、平台类、临床非核心与临床核心。
2.基础信息:业务开发语言、数据库种类、操作系统型号、中间件型号、业务并发压力、软件厂商名称、业务压力并发。
3.技术可行性:是否已有国产化改造案例、国产化适配架构、是否满足安全可靠测评结果。
图3 调研要求
考虑到OA等管理类软件已在各行业国产化改造中日趋成熟,改造难度较低。而临床核心类业务与诊疗密切相关,并且在国产化测试过程中不可避免与核心业务产生交互,因此风险较大。医院决定优先选择较为独立的非核心临床诊疗业务系统。根据业务影响程度与技术可行性等方面的考量,医院最终选定单病种管理系统为首批国产化改造业务,病历归档、CDSS、BI系统作为备选。
选择合适的合作伙伴,行稳致远
鉴于医疗行业信息技术创新目前很多方面都还处于“摸石头过河”的阶段,因此西安市第一医院在合作厂商的选择上也有一套清晰的评估标准:
1.软件系统必须是真适配:医院清楚地看到,当前行业内部分软件系统仅仅是在C86环境下运行,或者在intel环境下运行国产数据库与操作系统,甚至可能只是简单完成了功能兼容性验证,并未完成性能与稳定性验证。所以医院明确要求软件系统必须是真适配。
2.有资源能力共同投入者:初期改造必定带来大量人力与设备的投入,所以医院更愿意选择在医疗信息技术创新探索中能够投入公司研发资源的厂商。
3.已经通过行业国产化实践验证:相关国产化组件已在医疗行业得到广泛实践,自身具有一定的研发与技术能力。
制定详实计划,开展充分测试
在经过前期详细调研,明确改造业务,西安市第一医院与合作伙伴共同制定了详细的国产化改造计划,并开展了大量国产化组件和业务测试,确保后续业务迁移稳定运行。
第一,明确改造任务
1.计算机终端改造:基于国产化芯片与操作系统,确保国产化业务能够在终端稳定运行。
2.系统改造:
(1)搭建国产化测试业务区:基于虚拟化技术搭建信创云,在云上进行国产化业务测试与验证。
(2)对不同路线架构进行最佳实践评估:采用不同数据库、操作系统与中间件,分别开展性能与稳定性测试,综合对比不同架构优劣。
(3)开展非国产化向国产化环境的数据迁移、双轨运行切换等:从原有架构向国产化架构的正式切换、迁移,确保国产化环境具备真替真用的能力。
第二,国产化业务域搭建
西安市第一医院通过在原有机房单独构建国产化业务域,在测试阶段国产化业务域与临床业务区不互通,网络完全隔离。所有测试数据均通过离线方式传输到国产化平台,确保不产生业务互联。后续双轨运行阶段,则采用国产防火墙进行网络隔离,确保业务域的逻辑隔离与安全。
图4 国产化业务域搭建架构
图5 国产化业务域选型
第三,国产化组件测试与业务测试:所有测试结果皆满足国产化环境下的正常使用要求
本阶段测试所有业务数据均采用离线复制的方式,拷贝到单独的国产化测试区。网络侧则不介入到数据中心内部网络,物理层面网络完全隔离。
图6 国产化改造拓扑图
(1)底层虚拟化与服务器性能测试
测试结果:与原有Intel+VMware性能相比,虚拟机性能呈现误差在20%内,符合原有测试预期。
(2)数据库性能测试
测试结果:在模拟 500warehouse的情况下,针对单机环境,进行了100、300、500并发测试,每项测试时长为10分钟。
(3)业务应用测试
测试结果:通过对电子病历单病种系统5个大模块、36个功能点的功能测试,单病种产品主要模块可在国产化环境下正常使用。
(4)业务应用性能压测
测试结果:针对单个接口的压测,并发量分别为100-5000,每个接口压测时间为5-10分钟;以上三个接口压力测试各项性能指标符合通过标准(医院实际业务系统并发量最高在1200左右)。
针对稳定性压测,使用QueryJson接口、Execute接口混合场景,并发量为 1500,持续压测48个小时,各项性能指标符合通过标准。
进入“业务双轨期”,改造方案再升级
在西安市第一医院国产化组件与业务单独测试1个月后,相关性能指标达到实际业务承载要求。医院开始考虑逐步升级并切换方案,使整体单病种管理系统国产化改造在稳步中推进。后续的改造方案按如下流程进行开展:
1.生产环境打通:国产化业务区与临床业务区的网络打通,中间部署国产虚拟化防火墙与国产主机安全确保业务安全。
图7 部署逻辑图
由于方案会涉及国产化环境与常规环境的融合部署,因此本次建设将额外部署国产化安全组件(融入在云平台内,减少硬件的投入成本)以确保国产化环境本身安全风险不对生产环境产生额外影响。
数据库双轨测试(核心):将国产化数据库与原有业务的Oracle数据库进行双向同步,前端业务采取读写分离/负载分摊/业务拆封中某一策略进行业务的双轨运行。
由于医院的单病种上报系统是电子病历的某一模块,因此单病种上报系统的数据库与电子病历生产库为同一数据库。本次数据库双向同步需要对医院电子病历生产库进行全量同步,一旦出现问题对医院生产业务均会造成影响。所以西安市第一医院对数据库双向同步方案进行了详细对比:
最后,考虑到医院业务运行、可靠性、技术可行性等因素,最终医院选择模块拆分方案,将单病种系统单独拆分出来进行业务重定向。
图8 数据库/业务双向同步网络拓扑
数据库双向同步期间对Oracle数据库的实际性能消耗:电子病历原生产库是采取主备模式部署,因此首次全量同步通过对备库抽取完成。后续增量同步与双向同步运行过程中对主库进行同步(仅对备库同步无法完成业务写入与读取操作,而电子病历系统是需要和单病种做数据同步和单病种申报操作的,故不采用)。
图9 数据库首次增量同步示意图
在电子病历数据库安装数据库代理的性能损耗:
● 内存:内存可以限制使用在4G范围内,备库内存为64G,当前使用率小于30%;
● CPU:整个cpu使用率在2%左右;
● 磁盘:若增量数据为1个G,磁盘保留7天kufl文件的话,最多占用15个G的空间;
● 带宽:带宽忽略不计;
● I/O:若一天数据库增量1G,每小时250M,每分钟3M;
● 原Orale数据库量大约1TB,预计首次双向迁移时间大约4小时。
经过备库抽取与验证,结果说明数据库双向同步机制对业务数据库压力较小,并不影响电子病历生产库的实际运行。
表2 业务功能测试报告(部分)
测试结论:本次业务功能测试5大模块,49个功能点均无出现异常情况
2. 双轨运行:前端业务科室挑选部分科室(3-4个)进行终端改造与业务测试,试运行2周,判别双轨运行的实际业务效果。本次测试基于质控科、临床科进行单病种上报(全国产化环境),运行超1月无任何问题。
图10 终端改造与业务测试
表3 电子病历单病种管理
医院国产化业务上线后,Oracle和人大金仓数据库双向同步新增77G的数据量,历史同步累计事务量136303426个,日均同步事务量1660698个。
图11 2024年7月下旬截图
西安市第一医院基于本次“全链路信创环境下的单病种管理系统改造成果及经验”项目,荣获陕西省第七届智慧医疗创新大赛一等奖。整体改造项目历时一年,从前期业务选择到组件评估、业务测试、业务切换等环节,进行了丰富的技术实践与业务积累。后续医院持续总结本次项目经验,反哺到其他医院与企业,为助力卫生健康行业提升整体信息技术创新水平贡献自己的力量。
作者简介
邹芳,西安市第一医院正高级工程师,常年专注于医院信息化管理及建设工作,拥有丰富的医院信息化建设及管理经验。