某市医疗保障信息平台建设工程,以信息化建设为抓手,推动医保覆盖与医保控费,积极融入医疗保障信息化全国“一盘棋”格局,为信息化支撑体系添砖加瓦。英方软件为本次项目建设的打标环节提供高可用和实时数据整合方案,协助数据库系统保持 7*24 小时运作,满足最终用户连续可用的要求。
医保局的数据同步需求
01 自动建表功能
实现源端HotDB数据库数据同步到目标端MySQL数据库并自动建表,并且需要再加上操作符字段 OP_CODE 和操作时间字段 OP_TIME。
02 记录源端操作
同步工具需要将源端 HotDB 只读库的 delete 数据插入到目标端MySQL数据库,并且将操作符字段 OP_CODE记录为‘D’,OP_TIME 记录源端数据库 delete 操作时间。
03主键冲突保留新数据
同步过程中,若出现跟之前相同的 delete 业务,同步到目标端 MySQL 库时会发生主键冲突,则保留最新的那条数据。
04 源备端数据不冲突
保证源端 HotDB 和目标端 MySQL 数据不冲突,若源端产生 insert 插入语句,需要判断目标库中是否有冲突数据,决策是否需要执行 delete 操作。
实现方案:i2Active for MySQL解决方案
由于不能在源端 HotDB 生产库上安装任何代理程序,所以采用同步机抽取数据,再同步打标写入到 MySQL 目标库中的方式。下图为某市医保打标库数据同步拓扑图,英方的节点程序会安装在两台同步机的机器上,通过网络抽取 HotDB 数据并直接加载写入到目标库。
△市医保打标库数据同步拓扑图
△数据同步进程实现原理示意图
△多线程架构与数据流实现原理示意图
实现步骤:
1、自动建表,并且添加操作符和时间戳字段;
2、通过目标端装载进程的配置参数来实现同步过来的 delete 转 insert,插入目标库,打标记为 D,记录时间戳;
3、目标端主键冲突时,保留最新的数据,该功能通过装载进程来控制;
4、将 insert 的增量数据同步到目标端时,查询备端库是否有冲突数据。如果发现 insert 的数据已存在,则执行 delete 操作,如没有对应的数据,则直接执行 insert,从而保持源端和目标端 MySQL 数据不冲突。
方案价值
01 统一数据管理平台
通过统一平台进行图形化的管理,节点管理、规则配置、参数下发、规则启停等数据同步相关配置及操作,均于 i2UP 数据统一管理平台上可视化进行,大幅降低DBA运维成本。
02 对生产端零影响
源端HotDB数据所在服务器不需部署任何软件, 通过同步机代理程序,实现源库日志分析,解析出其delete语句,无侵入性,不会对生产环境造成任何干扰或负担。
03主键冲突保留新数据
目前已经完成该市医保所有数据库打标需求的实施工作,成功打标中台 11518 张表、经办 1900 张表、财务 539 张表、公服 20 张表。
结语
方案的实施不仅加强了系统维护和稳定性保障,确保了系统的稳定运行,还提高了数据处理的效率和准确性,使得决策更加科学、精准。同时,这一方案也促进了医保系统的优化,为当地人民群众提供了更加优质、便捷的医保服务。
热门跟贴