著录项信息
专利名称 | 基于异构系统数据映射模板的医疗数据采集系统及方法 |
申请号 | CN201410605173.6 | 申请日期 | 2014-10-31 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2015-02-18 | 公开/公告号 | CN104361221A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F19/00 | IPC分类号 | G;0;6;F;1;9;/;0;0查看分类表>
|
申请人 | 沈阳锐易特软件技术有限公司 | 申请人地址 | 辽宁省沈阳市浑南新区世纪路22号702-2室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 沈阳锐易特软件技术有限公司 | 当前权利人 | 沈阳锐易特软件技术有限公司 |
发明人 | 李轶强;马国耀;蔡军;孙勇韬;肖华 |
代理机构 | 沈阳东大知识产权代理有限公司 | 代理人 | 刘晓岚 |
摘要
本发明提供一种基于异构系统数据映射模板的医疗数据采集系统及方法,该系统包括数据采集单元、数据源管理单元和模板管理单元。方法包括:获取医疗数据源内业务数据信息;获取区域卫生平台上的卫生数据业务标准,并根据该业务标准建立基于区域卫生平台的结果集;若当前数据映射模板与结果集完全符合,则进行基于业务标准的数据源数据映射处理,否则,若当前数据映射模板中存在与结果集符合的数据模型,则对该数据模型进行复用,否则执行基于区域卫生平台的结果集来构建数据映射模板。本发明的系统及方法解决了在医院数据的标准化采集问题,通过本方法内数据采集模板的业务约束实现数据的规范化采集,使得数据的采集过程更加规范和高效。
1.一种基于异构系统数据映射模板的医疗数据采集系统,包括:
数据采集单元:用于获取异构医疗数据系统中的医疗数据源内业务数据信息,所述业务数据信息的类型包括结构数据与非结构数据;
数据源管理单元:用于记录并存储当前医疗数据采集过程中需要访问的异构医疗数据系统中的医疗数据源的配置信息,同时为数据采集模块提供既有医疗数据源配置的连通支持;
模板管理单元:用于获取区域卫生平台上的卫生数据业务标准,并根据该业务标准建立基于区域卫生平台的结果集,执行基于区域卫生平台的结果集来构建数据映射模板,利用数据映射模板资源实现基于业务标准的医疗数据源数据规范化映射处理,通过导入的方式来使用数据映射模板,为医疗数据采集提供数据映射模板;
其特征在于:
所述的模板管理单元包括聚合拆分模块、模板映射模块和模板管理模块;
聚合拆分模块:执行基于区域卫生平台的结果集来构建数据映射模板,即把结果集拆分成若干具有业务关联关系的数据模型,将这些数据模型组合成数据映射模板,并生成针对每个数据模型的数据采集SQL脚本;其中,基于区域卫生平台的结果集是对区域卫生平台上卫生数据业务标准的分解,结果集在结构上符合业务标准的上报结构要求,同时,结果集也是数据映射模板中数据模型创建的依据;
模板映射模块:利用数据映射模板资源实现基于业务标准的数据源数据规范化映射处理;
模板管理模块:通过导入的方式来使用数据映射模板,对模板映射模块提供数据映射模板支撑。
2.根据权利要求1所述的基于异构系统数据映射模板的医疗数据采集系统,其特征在于:所述的数据采集单元包括数据源适配模块和采集规则编辑模块;
数据源适配模块:用于根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配,实现对医疗数据源的连通以及对医疗数据源内信息的查询,并根据采集逻辑的要求来动态访问不同医疗数据源,为采集规则编辑模块提供连通支持;
采集规则编辑模块:实现对异构医疗数据系统中的医疗数据获取规则的编辑和维护,通过支持对SQL脚本的编辑来实现对医疗数据源中结构化数据的获取以及对非结构化数据获取规则的维护和管理。
3.根据权利要求1所述的基于异构系统数据映射模板的医疗数据采集系统,其特征在于:所述的数据源管理单元包括数据源配置管理模块和数据源概要文件模块;
数据源配置管理模块:对医疗数据源访问过程和配置信息进行记录,为数据采集模块提供既有异构医疗数据系统中的医疗数据源配置的连通支持;
数据源概要文件模块:对各类型异构医疗数据系统中的医疗数据源的配置信息进行存储,为数据源配置管理模块提供配置信息支持。
4.根据权利要求1所述的基于异构系统数据映射模板的医疗数据采集系统,其特征在于:还包括规则校验单元,该单元包括规则执行模块和规则校验模块;
规则执行模块:实现基于数据映射模板的医疗数据采集过程的模拟运行并显示运行结果;
规则校验模块:实现基于数据映射模板的医疗数据采集过程中数据的合规性校验,对不符合区域卫生平台上卫生数据业务标准的数据进行异常提示。
5.采用权利要求1所述的医疗数据采集系统的医疗数据采集方法,其特征在于:包括以下步骤:
步骤1:获取异构医疗数据系统中的医疗数据源内业务数据信息,所述业务数据信息的类型包括结构数据与非结构数据;
步骤2:获取区域卫生平台上的卫生数据业务标准,并根据该业务标准建立基于区域卫生平台的结果集,基于区域卫生平台的结果集是对卫生区域平台上卫生数据业务标准的分解,结果集在结构上符合业务标准的上报结构要求,同时,结果集也是数据映射模板中数据模型创建的依据;
步骤3:判断当前数据映射模板与结果集的符合程度,若完全符合,则执行步骤6,否则,执行步骤4;
步骤4:若当前数据映射模板中存在与结果集符合的数据模型,则对该数据模型进行复用,并执行步骤6,否则,执行步骤5;
步骤5:执行基于区域卫生平台的结果集来构建数据映射模板,即把结果集拆分成若干具有业务关联关系的数据模型,并将这些数据模型组合成数据映射模板,并生成针对每个数据模型的数据采集SQL脚本;
步骤6:利用数据映射模板资源进行基于业务标准的数据源数据映射处理,完成基于数据映射模板的医疗数据采集。
6.根据权利要求5所述的医疗数据采集方法,其特征在于:所述步骤1按以下步骤进行:
步骤1-1:根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配,实现对医疗数据源的连通以及对医疗数据源内信息的查询,并根据采集逻辑的要求来动态访问多种异构医疗数据系统中的医疗数据源,为采集规则编辑模块提供连通支持;
根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配的内容,包括对数据源驱动文件、数据库名称、URL、登录信息的配置;
步骤1-2:记录医疗数据源的适配内容,并对医疗数据源内容查询,包括结构、字段、类型;
步骤1-3:对医疗数据获取规则编辑和维护,通过编辑SQL脚本的方式来实现数据获取。
7.根据权利要求5所述的医疗数据采集方法,其特征在于:所述步骤5按以下步骤进行:
步骤5-1:根据区域卫生平台的结果集及原始SQL语句把结果集拆分成若干具有业务关联关系的数据模型,并创建数据映射模板的结果集信息和数据源连接信息;
步骤5-2:创建各数据模型的数据采集SQL脚本;
步骤5-3:将各数据模型组合成数据映射模板进行保存;
步骤5-4:创建数据映射模板的采集合并SQL,并将采集合并SQL与数据映射模板的结果集信息和数据源连接信息一同保存至数据映射模板中。
8.根据权利要求5所述的医疗数据采集方法,其特征在于:所述步骤6按以下步骤进行:
步骤6-1:根据业务场景的需要来选取数据映射模板;
步骤6-2:进行基于数据映射模板的业务数据映射处理,根据数据映射模板来获取医疗数据源中的相应数据,将医疗数据源中数据转换为数据映射模板定义的数据模型结构,使其符合业务标准的上报结构要求,完成基于数据映射模板的医疗数据采集。
基于异构系统数据映射模板的医疗数据采集系统及方法\n技术领域\n[0001] 本发明涉及医疗行业数据采集技术领域,具体涉及一种基于异构系统数据映射模板的医疗数据采集系统及方法。\n背景技术\n[0002] 在医疗信息的获取过程中,通常需要根据不同的医院或医疗数据系统的特征,对医疗信息的获取过程进行定制开发,在实际的医疗信息系统数据采集过程中无法快速的顺应医疗业务特征。由于医疗数据系统的数据采集过程的多样化,通常一个采集场景中的采集方式无法在其他的采集场景中复用,同时在同一场景中,当采集功能实现后其所对应的采集方法方式也随之完全固化,这样就使得场景与采集方式紧耦合,所以在大规范实现医疗数据采集工作需要极大的成本投入。因此,需要一种数据抽取方法,可以根据业务场景的变更,灵活的实现医疗数据的采集,而无需对已应用过场景的采集业务作较多调整便可以直接将其复用。而且,提供可配置的数据采集模板,实现业务细节的可配置,对具体场景中的业务流程中不同的业务功能粒度进行维护管理,为业务行为提供极为灵活的功能支撑。\n发明内容\n[0003] 针对现有技术存在的问题,本发明提供一种基于异构系统数据映射模板的医疗数据采集系统及方法。\n[0004] 本发明的技术方案是:\n[0005] 一种基于异构系统数据映射模板的医疗数据采集系统,包括:\n[0006] 数据采集单元:用于获取异构医疗数据系统中的医疗数据源内业务数据信息,所述业务数据信息的类型包括结构数据与非结构数据;\n[0007] 所述异构医疗数据系统是彼此相关的医疗数据系统的集合,彼此间具有自治性和独立性,彼此间在实现数据共享、交互的同时,仍保留自身独特的应用特性、控制完整性和控制安全性。\n[0008] 数据源管理单元:用于记录并存储当前医疗数据采集过程中需要访问的异构医疗数据系统中的医疗数据源的配置信息,同时为数据采集模块提供既有医疗数据源配置的连通支持;\n[0009] 模板管理单元:用于获取区域卫生平台上的卫生数据业务标准,并根据该业务标准建立基于区域卫生平台的结果集,执行基于区域卫生平台的结果集来构建数据映射模板,利用数据映射模板资源实现基于业务标准的医疗数据源数据规范化映射处理,通过导入的方式来使用数据映射模板,为医疗数据采集提供数据映射模板。\n[0010] 所述的数据采集单元包括数据源适配模块和采集规则编辑模块;\n[0011] 数据源适配模块:用于根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配,实现对医疗数据源的连通以及对医疗数据源内信息的查询,并根据采集逻辑的要求来动态访问不同医疗数据源,为采集规则编辑模块提供连通支持;\n[0012] 采集规则编辑模块:实现对异构医疗数据系统中的医疗数据获取规则的编辑和维护,通过支持对SQL脚本的编辑来实现对医疗数据源中结构化数据的获取以及对非结构化数据获取规则的维护和管理。\n[0013] 所述的数据源管理单元包括数据源配置管理模块和数据源概要文件模块;\n[0014] 数据源配置管理模块:对医疗数据源访问过程和配置信息进行记录,为数据采集模块提供既有异构医疗数据系统中的医疗数据源配置的连通支持;\n[0015] 数据源概要文件模块:对各类型异构医疗数据系统中的医疗数据源的配置信息进行存储,为数据源配置管理模块提供配置信息支持。\n[0016] 所述的模板管理单元包括聚合拆分模块、模板映射模块和模板管理模块;\n[0017] 聚合拆分模块:执行基于区域卫生平台的结果集来构建数据映射模板,即把结果集拆分成若干具有业务关联关系的数据模型,将这些数据模型组合成数据映射模板,并生成针对每个数据模型的数据采集SQL脚本;其中,基于区域卫生平台的结果集是对区域卫生平台上卫生数据业务标准的分解,结果集在结构上符合业务标准的上报结构要求,同时,结果集也是数据映射模板中数据模型创建的依据;\n[0018] 模板映射模块:利用数据映射模板资源实现基于业务标准的数据源数据规范化映射处理;\n[0019] 模板管理模块:通过导入的方式来使用数据映射模板,对模板映射模块提供数据映射模板支撑。\n[0020] 所述的基于数据映射模板的医疗数据采集系统还包括规则校验单元,该单元包括规则执行模块和规则校验模块;\n[0021] 规则执行模块:实现基于数据映射模板的医疗数据采集过程的模拟运行并显示运行结果;\n[0022] 规则校验模块:实现基于数据映射模板的医疗数据采集过程中数据的合规性校验,对不符合区域卫生平台上卫生数据业务标准的数据进行异常提示。\n[0023] 采用所述的医疗数据采集系统的医疗数据采集方法,包括以下步骤:\n[0024] 步骤1:获取异构医疗数据系统中的医疗数据源内业务数据信息,所述业务数据信息的类型包括结构数据与非结构数据;\n[0025] 步骤2:获取区域卫生平台上的卫生数据业务标准,并根据该业务标准建立基于区域卫生平台的结果集,基于区域卫生平台的结果集是对卫生区域平台上卫生数据业务标准的分解,结果集在结构上符合业务标准的上报结构要求,同时,结果集也是数据映射模板中数据模型创建的依据;\n[0026] 步骤3:判断当前数据映射模板与结果集的符合程度,若完全符合,则执行步骤6,否则,执行步骤4;\n[0027] 步骤4:若当前数据映射模板中存在与结果集符合的数据模型,则对该数据模型进行复用,并执行步骤6,否则,执行步骤5;\n[0028] 步骤5:执行基于区域卫生平台的结果集来构建数据映射模板,即把结果集拆分成若干具有业务关联关系的数据模型,并将这些数据模型组合成数据映射模板,并生成针对每个数据模型的数据采集SQL脚本;\n[0029] 步骤6:利用数据映射模板资源进行基于业务标准的数据源数据映射处理,完成基于数据映射模板的医疗数据采集。\n[0030] 所述步骤1按以下步骤进行:\n[0031] 步骤1-1:根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配,实现对医疗数据源的连通以及对医疗数据源内信息的查询,并根据采集逻辑的要求来动态访问多种异构医疗数据系统中的医疗数据源,为采集规则编辑模块提供连通支持;\n[0032] 根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配的内容,包括对数据源驱动文件、数据库名称、URL、登录信息的配置;\n[0033] 步骤1-2:记录医疗数据源的适配内容,并对医疗数据源内容查询,包括结构、字段、类型;\n[0034] 步骤1-3:对医疗数据获取规则编辑和维护,通过编辑SQL脚本的方式来实现数据获取。\n[0035] 所述步骤5按以下步骤进行:\n[0036] 步骤5-1:根据区域卫生平台的结果集及原始SQL语句把结果集拆分成若干具有业务关联关系的数据模型,并创建数据映射模板的结果集信息和数据源连接信息;\n[0037] 步骤5-2:创建各数据模型的数据采集SQL脚本;\n[0038] 步骤5-3:将各数据模型组合成数据映射模板进行保存;\n[0039] 步骤5-4:创建数据映射模板的采集合并SQL,并件采集合并SQL与数据映射模板的结果集信息和数据源连接信息一同保存至数据映射模板中。\n[0040] 所述步骤6按以下步骤进行:\n[0041] 步骤6-1:根据业务场景的需要来选取数据映射模板;\n[0042] 步骤6-2:进行基于数据映射模板的业务数据映射处理,根据数据映射模板来获取医疗数据源中的相应数据,将医疗数据源中数据转换为数据映射模板定义的数据模型结构,使其符合业务标准的上报结构要求,完成基于数据映射模板的医疗数据采集。\n[0043] 有益效果:\n[0044] 本发明的系统是实现基于异构医疗数据系统数据映射模板的数据采集功能,实现针对区域卫生平台业务标准的数据采集,使得业务数据采集更加高效。数据映射模板的设计是基于异构医疗数据系统中的医疗数据的特点而进行构建,具有较强的行业特性,在进行医疗数据采集项目的建设过程中,同一个数据映射模板可以复用在多个医疗数据采集项目的建设场景中,在节约建设成本的同时,数据映射模板的业务特性也将在实际使用过程中得到补充和优化,从而达到项目建设良性循环的目标。\n[0045] 本发明的系统及方法解决了在医院业务数据的规范化采集问题,通过本方法内数据采集模板的业务约束实现数据的规范化采集,使得数据的采集过程更加规范和高效,同事将采集的数据转换为区域卫生平台所要求的标准业务数据。本方法目前已经成功应用在医疗数据的处理项目中,使得业务数据得到稳定高效的采集和处理,从而推动医疗卫生体系的建设和管理,为区域医疗数据系统的构建提供有力支撑。\n[0046] 本系统及方法中所属的数据映射模板通过对多个业务标准的分析后已经达到一定的积累,可以实现对医疗数据采集业务的有效支撑,实现基于数据映射模板快速构建新的数据采集项目。此外,本方法主要应用于卫生医疗行业,但对其它行业的应用仍然具有可拓展性。\n附图说明\n[0047] 图1为本发明具体实施方式的基于异构系统数据映射模板的医疗数据采集系统结构框图;\n[0048] 图2为本发明具体实施方式的数据采集单元结构框图;\n[0049] 图3为本发明具体实施方式的数据源管理单元结构框图;\n[0050] 图4为本发明具体实施方式的模板管理单元结构框图;\n[0051] 图5为本发明具体实施方式的数据采集结构示意图;\n[0052] 图6为本发明具体实施方式的数据映射模板内容关系结构示意图;\n[0053] 图7为本发明具体实施方式的基于异构系统数据映射模板的医疗数据采集方法流程图;\n[0054] 图8为本发明具体实施方式的数据模型采集关系示意图;\n[0055] 图9为本发明具体实施方式的合并采集SQL采集关系示意图。\n具体实施方式\n[0056] 下面结合附图对本发明的具体实施方式做详细说明。\n[0057] 一种基于异构系统数据映射模板的医疗数据采集系统,如图1所示,包括:\n[0058] 数据采集单元:用于获取异构医疗数据系统中的医疗数据源内业务数据信息,所述业务数据信息的类型包括结构数据与非结构数据;\n[0059] 所述异构医疗数据系统是彼此相关的医疗数据系统的集合,彼此间具有自治性和独立性,彼此间在实现数据共享、交互的同时,仍保留自身独特的应用特性、控制完整性和控制安全性。\n[0060] 数据源管理单元:用于记录并存储当前医疗数据采集过程中需要访问的异构医疗数据系统中的医疗数据源的配置信息,同时为数据采集模块提供既有医疗数据源配置的连通支持;\n[0061] 模板管理单元:用于获取区域卫生平台上的卫生数据业务标准,并根据该业务标准建立基于区域卫生平台的结果集,执行基于区域卫生平台的结果集来构建数据映射模板,利用数据映射模板资源实现基于业务标准的医疗数据源数据规范化映射处理,通过导入的方式来使用数据映射模板,为医疗数据采集提供数据映射模板。\n[0062] 数据采集单元包括数据源适配模块和采集规则编辑模块,如图2所示;\n[0063] 数据源适配模块:用于根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配,实现对医疗数据源的连通以及对医疗数据源内信息的查询,并根据采集逻辑的要求来动态访问不同医疗数据源,为采集规则编辑模块提供连通支持;\n[0064] 采集规则编辑模块:实现对异构医疗数据系统中的医疗数据获取规则的编辑和维护,通过支持对SQL脚本的编辑来实现对医疗数据源中结构化数据的获取以及对非结构化数据获取规则的维护和管理。\n[0065] 数据源管理单元包括数据源配置管理模块和数据源概要文件模块,如图3所示;\n[0066] 数据源配置管理模块:对医疗数据源访问过程和配置信息进行记录,为数据采集模块提供既有异构医疗数据系统中的医疗数据源配置的连通支持;\n[0067] 数据源概要文件模块:对各类型异构医疗数据系统中的医疗数据源的配置信息进行存储,为数据源配置管理模块提供配置信息支持。\n[0068] 模板管理单元包括聚合拆分模块、模板映射模块和模板管理模块,如图4所示;\n[0069] 聚合拆分模块:执行基于区域卫生平台的结果集来构建数据映射模板,即把结果集拆分成若干具有业务关联关系的数据模型,将这些数据模型组合成数据映射模板,并生成针对每个数据模型的数据采集SQL脚本;其中,基于区域卫生平台的结果集是对区域卫生平台上卫生数据业务标准的分解,结果集在结构上符合业务标准的上报结构要求,同时,结果集也是数据映射模板中数据模型创建的依据;\n[0070] 模板映射模块:利用数据映射模板资源实现基于业务标准的数据源数据规范化映射处理;\n[0071] 模板管理模块:通过导入的方式来使用数据映射模板,对模板映射模块提供数据映射模板支撑。\n[0072] 所述的基于数据映射模板的医疗数据采集系统还包括规则校验单元,该单元包括规则执行模块和规则校验模块;\n[0073] 规则执行模块:实现基于数据映射模板的医疗数据采集过程的模拟运行并显示运行结果;\n[0074] 规则校验模块:实现基于数据映射模板的医疗数据采集过程中数据的合规性校验,对不符合区域卫生平台上卫生数据业务标准的数据进行异常提示。\n[0075] 本方法实现对医疗数据模型结构的处理,使其符合卫生规范标准。本方法为数据模型的处理提供了一种新模式,即根据卫生场景来选取数据映射模板,并根据数据映射模板来选择医疗数据采集逻辑和细节,通过业务模板的需求和约束来获取医疗原始数据,这一数据采集过程在业务标准和模板的指引下将提示效率和正确性。\n[0076] 本方法在实施过程中,也适用于数据源变更的实施条件。当数据源出现变更时,校验当前数据源模型与模板规范间的模型差异,对部分数据模型存在差异的情况,在实施中只需调整差异部分即可对当前业务规范过程进行复用,提升实施效率和工作量。\n[0077] 在本实施例中,以对门诊数据的标准化过程为例,使用门诊业务模板来实现医院端门诊数据的标准化过程。本发明所属异构系统根据数据映射模板所描述的采集规则,将医院系统中数据进行采集,并将采集后的数据进行合并后上报到区域卫生平台。本实施方式应用的数据采集结构如图5所示,其中,卫生区域平台的业务标准是上报的最终数据,结果集是对卫生区域平台业务标准的分解,结果集在结构上符合业务标准的上报结构要求,同时,结果集也是数据映射模板中数据模型创建的依据。数据模型是对结果集结构的分解,即结果集由一系列数据模型组合而成,数据模型用于描述具有业务特征的元数据单元,而该元数据单元与医院系统内的数据内容一一对应。数据模型是来自对结果集的拆分,数据模型中的数据结构是结果集的一个子集,同时,数据模型间存在业务关联关系。数据模型的聚合成结果集,反之,对结果集的聚合度进行拆分而形成数据模型。\n[0078] 在本实施方式中,结果集的定义参考卫生区域平台中该业务标准进行。\n[0079] 卫生区域平台P={B1,B2,B3...Bn},Bi为平台业务标准集,n为平台业务标准数量。\n平台业务标准集B={F1,F2,F3...Fm},其中,m为平台业务标准集中字段数,Fi为业务标准B中第i个字段,即Fi∈B。\n[0080] 结果集ResultSet={B′1,B′2,B′3....B′n},集合项B′i={F1,F2,F3....Fm,σ},σ为附加字段。\n[0081] 结果集是业务标准集合在本方法中的投影,但在业务数据的使用上结果集集合项中的字段内容与平台业务标准集字段项会存在区别,根据业务情况增加一类附加字段用于辅助业务数据处理,辅助处理业务数据的字段在本方法中使用σ附加字段进行记录,即σ是标准集合在结果集在本方法中投影的精度差。\n[0082] 根据结果集ResultSet中的集合项B′i来构建数据模型集MetaDatai={M1,M2,M3...Mj},其中j为数据模型个数,Mj为数据模型集中的第j个数据模型。\n[0083] B′i与MetaDatai存在如下关系:\n[0084] MetaDatai=Separation(B′i)\n[0085] Separation函数为拆分函数,实现将结果集分解成一系列数据模型,该数据模型在内容上与医院数据库内数据结构相同,数据模型是对医疗数据的描述。\n[0086] Separation函数执行过程如下:\n[0087] (1)M={md1,md2,md3...mdm,mdm+1},初始化数据模型集合;\n[0088] (2)对数据模型集进行数据来源判断,如果数据模型字段来源多个数据库或表,则执行步骤(3)、(4),否则执行步骤(5);\n[0089] (3)根据数据所属的数据库来拆分数据模型,将M分割成一系列具有独立数据来源的数据模型:DataSourceSplit(M)→{M′1...M‘i},i为整数;\n[0090] (4)根据数据源进行数据模型拆分:Separation(M′1...M‘i);\n[0091] (5)根据结果集SQL脚本及结果集结构,确定所涉表的字段集,createDataMeta(M,B)→<<F,σ,η>...>;\n[0092] (6)记录当前递归深度,并赋给变量I;\n[0093] (7)创建当前递归深度内的条件关系集createLevel(I,M,B)→<η,η,...,ηLevelI>;\n[0094] (8)对数据模型内容进行优化;\n[0095] (9)生成数据模型采集SQL;\n[0096] (10)生成合并采集SQL。\n[0097] 本方法中所述数据映射模板是一组记录业务数据模型的数据结构、数据模型间关联关系以及数据采集规则的描述信息集合。在本方法中,数据映射模板使用XML标记语言进行描述,以使其符合结构性和通用性的要求。数据映射模板由一系列数据模型组成,数据模型是业务数据最细粒度描述,也是模板的最小组成单元,同时数据模型间存在关联关系,通过这种关联关系,通过若干数据模型的组合来共同描述一种业务数据结构。数据模型由一系列模型项组成,模型项用于描述采集数据的字段名称、类型,以及业务信息等,模型项说描述的信息与采集的医疗数据相同。\n[0098] 同时,模板中记录了模板内数据模型所需获取的医疗数据源的连接配置信息,并将数据模型与具体医疗数据源进行绑定,以便在进行基于数据映射模板来获取医疗数据时,完成来自多个医疗数据源数据的采集。\n[0099] 数据映射模板内容关系结构,如图6所示。\n[0100] 数据映射模板记录了模板的基本信息、数据采集所需要的合并采集SQL语句、数据模型、结果集信息以及数据源连接信息。\n[0101] 模板信息包括模板名称、模板版本号、模板描述信息,用于对数据采集规模模板基本信息进行描述。\n[0102] 合并采集SQL将模型采集SQL语句进行动态组合,形成可执行的SQL语句用于对医院数据库内数据进行数据采集。合并采集SQL语句执行对象是数据模型的模型映射表,即对模型采集后的缓存数据再进行二次合并采集,从而获得符合结果集结构要求的数据信息。\n[0103] 数据模型包括数据模型名称、模型映射表、数据模型描述、数据模型数据采集SQL、数据模型中字段信息、模型数据源信息。其中,模型映射表代表当前数据模型查询结果的缓存表名称,用于数据规则采集模板的合并采集SQL从中获取模型采集到的数据。数据模型中字段信息用于描述数据模型数据采集SQL语句中字段信息,包括字段名、字段长度、字段类型和字段描述。数据模型数据采集SQL是用于将医疗数据库中数据采集成本模型定义的结构的可执行SQL语句。数据模型存在嵌套引用关系,通过数据模型间的嵌套引用来描述彼此间存在依赖关系的数据模型。模型数据源记录了该模型从医疗数据系统唯一标识,该标识在数据映射模板的数据源连接信息中统一注册,数据模型对其进行引用。\n[0104] 结果集是区域卫生平台业务标准集的投影,是对平台业务标准结构的描述。\n[0105] 数据源连接信息用于记录医疗数据库系统的连通配置信息,包括连接名称、数据库IP、数据库类型、连接类型、实例名称、端口、用户名、密码、表空间名称、连接参数。数据源连接信息注册了当前模板需要进行连通的数据源信息,为数据模型使用数据源提供支持。\n[0106] 下面以对住院实验室检验数据采集为例,实施本发明的医疗数据采集方法,如图7所示,包括以下步骤:\n[0107] 步骤1:获取异构医疗数据系统中的医疗数据源内业务数据信息,所述业务数据信息的类型包括结构数据与非结构数据;\n[0108] 步骤1-1:根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配,实现对医疗数据源的连通以及对医疗数据源内信息的查询,并根据采集逻辑的要求来动态访问多种异构医疗数据系统中的医疗数据源,为采集规则编辑模块提供连通支持;\n[0109] 根据异构医疗数据系统中的医疗数据源类型对医疗数据源进行访问适配的内容,包括对数据源驱动文件、数据库名称、URL、登录信息的配置;\n[0110] 步骤1-2:记录医疗数据源的适配内容,并对医疗数据源内容查询,包括结构、字段、类型;\n[0111] 步骤1-3:对医疗数据获取规则编辑和维护,通过编辑SQL脚本的方式来实现数据获取。\n[0112] 获取结果集结构,结果集的分类可以参照区域平台业务标准的分类,即按照业务大类中包括业务小类的方式进行设计,业务大类包括多个小类业务,每一个小类业务对应一个结果集。\n[0113] 表1诊疗收费业务结果集结构\n[0114]\n字段名 字段类型 填报要求 数据项 说明\nSTFRQ VARCHAR2(8) 必填 收/退费日期 复合主键;格式为YYYYMMDD\nSTFBH VARCHAR2(50) 必填 收/退费编号 复合主键\nZLF NUMERIC(8,2) 必填 诊疗费 \nZHF NUMERIC(8,2) 必填 治疗费 \nCFZS NUMERIC(10) 必填 处方张数 \nGHBM VARCHAR2(50) 必填 门诊就诊流水号 \n[0115] 从医疗数据库系统中获得结果集内容的SQL脚本:\n[0116]\n[0117] 假设区域卫生平台P={B1},平台存在一个业务标准集B1,B1={F1,F2,F3,F4,F5,F6}。\n[0118] 其中,F1为STFRQ,F2为STFBH,F3为ZLF,F4为ZHF,F5为CFZS,F6为GHBM。\n[0119] 根据表1,建立诊疗收费业务结果集ResultSet={B′1},B′1={F1,F2,F3F4,F5,F6,σ},其中B′1选取与业务标准集B1内的字段,同时不添加任何附件字段,则σ=φ,那么有:B′1={STFRQ,STFBH,ZLF,ZHF,CFZS,GHBM,φ}。\n[0120] 步骤2:获取区域卫生平台上的卫生数据业务标准,并根据该业务标准建立基于区域卫生平台的结果集,基于区域卫生平台的结果集是对卫生区域平台上卫生数据业务标准的分解,结果集在结构上符合业务标准的上报结构要求,同时,结果集也是数据映射模板中数据模型创建的依据;\n[0121] 步骤3:判断当前数据映射模板与结果集的符合程度,若完全符合,则执行步骤6,否则,执行步骤4;\n[0122] 步骤4:若当前数据映射模板中存在与结果集符合的数据模型,则对该数据模型进行复用,并执行步骤6,否则,执行步骤5;\n[0123] 对数据映射模板的复用是本方法应用便捷性特点的另一体现。数据映射模板可以应用于业务标准相同或相似,同时结果集相同或相似的数据采集业务中。如果业务标准相同或结果集相同,那么对数据映射模板的复用是直接的。如果是卫生平台的业务标准或结果集与已知的业务标准或结果集是相近的,那么对相近情况进行分析后,选择符合度最高的业务模板进行数据采集操作。\n[0124] 以对结果集的对比为例,现考察结果集ResultSet'对已知结果集ResultSet的复用性,ResultSet'记为R',ResultSet记为R。\n[0125] 步骤4-1:如果R'=R,则R的数据模型MR可以被R'完全复用,即MR'=MR。\n[0126] 步骤4-2:如有R'≠R,且R'∩R=φ,则已知结果集R的数据映射模板对R'不具有可复用性。\n[0127] 步骤4-3:如有R'≠R,且R'∩R=η,其中η为结果集R与R'的共有字段集,即η∈R'且η∈R,则可知:\n[0128] η+β'=R', 且 即β'为R不存在的字段,为不可复用的部分。\n[0129] η为R模板的可复用部分,及对R中η所涉字段集的数据模型进行分析。\n[0130] 步骤4-3-1:如果 且η={f|f∈M且f≠φ},则可断定数据模型M为R数据模\n型MR可复用的部分。\n[0131] 可对β'使用Separation函数进行数据模型拆分得到Mβ',即Mβ'∪M=MR‘。\n[0132] 步骤4-3-2:如果 且 则可断定数据模型M为R数据\n模型MR可复用的部分,但存在于 的字段集,故M不可复用。\n[0133] 步骤5:执行基于区域卫生平台的结果集来构建数据映射模板,即把结果集拆分成若干具有业务关联关系的数据模型,并将这些数据模型组合成数据映射模板,并生成针对每个数据模型的数据采集SQL脚本;\n[0134] 步骤5-1:根据区域卫生平台的结果集及原始SQL语句把结果集拆分成若干具有业务关联关系的数据模型,并创建数据映射模板的结果集信息和数据源连接信息;\n[0135] 根据Separation函数结果集拆分算法,对结果集B′1进行数据模型拆分,拆分算法执行过程如下:\n[0136] 1.根据结果集B′1来构建数据模型集,将结果集中每个字段都设为一个数据模型MetaData M={<STFRQ>,<STFBH>,<ZLF>,<ZHF>,<CFZS>,<GHBM>}\n[0137] 2.判断M中内容是否来着于同一个医疗数据系统,根据医疗数据库中获得结果集内容的SQL脚本可判定,递归查询SQL语句的FROM部分,判断结果集字段来至于统一数据库的表MS_GHMX、MS_SFMX、MS_MZXX、MS_CF01,即DataSource(M)<1。\n[0138] 3.根据结果集SQL脚本及结果集结构,确定所涉表的字段集。\n[0139] 表MS_GHMX别名T,在SQL脚本中递归查询WHERE部分\n[0140]\n[0141] 对表T涉及的字段为GHBM、SBXH,其中GHBM字段为实际字段,SBXH条件字段,其中σ记录该表所涉查询条件字段,η记录该表所涉查询条件关联字段关系信息:\n[0142] T:<GHBM,σT>,其中σT=<SBXH>,ηT=<<T.SBXH,C.GHGL,'='>>同理,获得表MS_MZXX别名C的字段集\n[0143] C:<STFRQ,STFBH,σC>,其中σC=<SFRQ,FPHM,GHGL,MZXH>,ηC=<<C.MZXH,B.MZXH,'='>>\n[0144] 获得表MS_SFMX别名B的字段集\n[0145] B:<STFBH,ZLF,ZHF,σB>,其中σB=<SFXM,ZJJE,MZXH>,ηB=<<B.MZXH,C.MZXH,'='>>\n[0146] 获得表MS_CF01别名D的字段集\n[0147] D:<CFZS,σD>,其中σD=<CFSL,FPHM>,ηD=<<D.FPHM,C.FPHM,'='>>获得表MS_CF01别名A的字段集\n[0148] A:<FPHM,CFSL,σA>,其中σA=<CFHM,FPHM,ZFPM>,ηA=<<D.FPHM,'null','ISNOT'>,<<A.ZFPD,'0','='>,<A.ZFPD,'null','IS'>,OR>,AND>根据对SQL脚本中递归WHERE部分,获得各η嵌套深度Level及条件关系ηLEVEL,得到:\n[0149] Level1=<ηB,ηC,ηD,ηT,ηLEVEL1>\n[0150] Level2=<ηA,ηLEVEL2>\n[0151] 合并内容相同的η,进而得到:\n[0152] Level1=<ηBC,ηD,ηT,ηLEVEL1>,其中ηLEVEL1=<<ηBC,ηT,'AND'>,ηD,'AND'>[0153] Level2=<ηA,ηLEVEL2>,其中ηLEVEL2=φ\n[0154] 4.根据表集合确定数据模型及依赖关系。\n[0155] 对表A、B、C、D、T的字段集进行遍历,其中B、C、D、T的实际字段都是结果集[0156] 的子集,则将B、C、D、T分别划分为独立的数据模型。\n[0157] MB:<STFBH,ZLF,ZHF>\n[0158] MC:<STFRQ,STFBH>\n[0159] MD:<CFZS>\n[0160] MT:<GHBM>\n[0161] 其中根据对表A、B、C、D、T的嵌套层级关系Level进行遍历,表B、C、T、D都[0162] 处于同一Level中,故将其合并,从而得到新的数据模型集合:\n[0163] MBCDT:<STFBH,STFRQ,STFBH,ZLF,ZHF,GHBM>\n[0164] 现在对不包含结果集字段的表字段集进行拆分。\n[0165] A与D都是表MS_CF01的别名,且A的实际字段集合在D中作为条件字段集使用,\n[0166] 则可断定A与D存在依赖关系,记:\n[0167] D:<CFZS,σD>,其中σD=<CFSL,FPHM>且A=σD∪σA\n[0168] 而根据结果集确定数据模型如下:\n[0169] MBCDT:<STFBH,STFRQ,STFBH,ZLF,ZHF,CFZS,σB,σC,σT,σD>,[0170] 其中σD=MA=<FPHM,CFSL,σA>\n[0171] 5.根据数据模型获得数据模型采集SQL脚本。\n[0172] 生成SQL语句分为生成SELECT、FROM、WHERE、GROUP和ORDER部分。\n[0173] ●SELECT部分:\n[0174] 数据模型MBCDT中,实际字段集为\n[0175] <STFBH,STFRQ,STFBH,ZLF,ZHF,CFZS>,保留其在原结果集SQL中语句结构。\n[0176] 条件字段集σB、σC、σT记录了进行查询是表B、C与T间的条件关联字段,σB=<SFXM,ZJJE,MZXH>、σC=<SFRQ,FPHM,GHGL,MZXH>、σT=<SBXH>,条件字段则直接获得。\n[0177] 由于σD=MA,存在依赖关系,对于模型间的依赖的处理在合并采集SQL过程中进行处理。\n[0178] ●FROM部分:\n[0179] MBCDT从表B、C、D、T中查询获得。\n[0180] ●WHERE部分:\n[0181] 根据Level1中关联关系描述\n[0182] Level1=<ηBC,ηD,ηT,ηLEVEL1>,其中ηLEVEL1=<<ηBC,ηT,'AND'>,ηD,'AND'>来对条件关系进行处理。\n[0183] ●GROUP部分:\n[0184] 取原结果集SQL语句中,表B、C在σB、σC、σD、σT字段条件下的关联关系,去掉σB、σC、σD、σT不包含的关联条件字段及关系。\n[0185] ●ORDER部分:\n[0186] 取原结果集SQL语句中,表B、C在σB、σC、σD、σT字段条件下的关联关系,去掉σB、σC、σD、σT不包含的关联条件字段及关系。\n[0187] 合并SELECE、FROM、WHERE、GROUP及ORDER部分,MBC数据模型采集SQL语句为:\n[0188]\n[0189]\n[0190] 同理,MA数据模型采集SQL语句为:\n[0191]\n[0192] 6.执行数据模型采集SQL,将执行结果保存至缓存表。\n[0193] 模型间数据采集规则,MBCDT与MA间存在依赖关系,即MBCDT查询条件基于MA查询结果,即根据Level1、Level2嵌套层级深度,对级别低的先执行,并以其结果作为级别高的查询条件。\n[0194] 例如将MBCDT数据模型采集SQL采集结果保存至表M_BCDT中,M_BCDT缓存表中字段为MBCDT数据模型的实际字段集和条件字段集,而其查询条件依赖于MA建立的缓存表M_A。结构关系如图8所示。\n[0195] 缓存表用于记录数据模型采集结果,当本方法执行结束后自动销毁缓存表。\n[0196] 将数据模型MBCDT、MA及其执行SQL保存至数据映射模板的数据模型项中。\n[0197] 步骤5-2:创建各数据模型的数据采集SQL脚本;\n[0198] 步骤5-3:将各数据模型组合成数据映射模板进行保存;\n[0199] 执行对数据模型关联关系进行分析后,将各数据模型对应的数据采集SQL脚本进行合并,合并后的采集SQL只对包括嵌套Level的最外层的数据模型所建立缓存表进行数据查询。\n[0200] 合并后的数据采集SQL脚本内容:\n[0201]\n[0202] 将采集到的数据直接存入结果集,结构关系如图9所示。\n[0203] 步骤5-4:创建数据映射模板的采集合并SQL,并件采集合并SQL与数据映射模板的结果集信息和数据源连接信息一同保存至数据映射模板中。\n[0204] 步骤6:利用数据映射模板资源进行基于业务标准的数据源数据映射处理,完成基于数据映射模板的医疗数据采集。\n[0205] 步骤6-1:根据业务场景的需要来选取数据映射模板;\n[0206] 步骤6-2:进行基于数据映射模板的业务数据映射处理,根据数据映射模板来获取医疗数据源中的相应数据,将医疗数据源中数据转换为数据映射模板定义的数据模型结构,使其符合业务标准的上报结构要求,完成基于数据映射模板的医疗数据采集。\n[0207] 虽然以上描述了本发明的具体实施方式,但是本领域内的熟练的技术人员应当理解,这些仅是举例说明,可以对这些实施方式做出多种变更或修改,而不背离本发明的原理和实质。本发明的范围仅由所附权利要求书限定。
法律信息
- 2021-10-19
未缴年费专利权终止
IPC(主分类): G06F 19/00
专利号: ZL 201410605173.6
申请日: 2014.10.31
授权公告日: 2017.07.14
- 2017-07-14
- 2015-03-25
实质审查的生效
IPC(主分类): G06F 19/00
专利申请号: 201410605173.6
申请日: 2014.10.31
- 2015-02-18
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2009-06-10
|
2008-11-28
| | |
2
| |
2012-06-20
|
2011-11-04
| | |
3
| |
2013-01-16
|
2012-09-29
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |