两阶段环境指纹的健康体检技能包路由与回退方法及装置与流程
本发明涉及健康体检数据处理、计算机软件版本管理及人工智能系统控制,尤其涉及一种两阶段环境指纹的健康体检技能包路由与回退方法及装置。
背景技术:
1、在健康体检数据处理场景中,处理程序的适用环境通常由机构标识、来源系统版本、设备标识或固件版本、检测方法、体检项目代码、检查协议标识、原始单位、参考配置版本、适用人群条件及数据产生时间等多种环境字段共同确定。随着来源系统升级、设备替换、参考配置更新及智能处理组件的引入,同一体检项目可能对应多个代码版本、组件依赖组合与审核配置,因而需要在每次处理前确定与当前数据环境相匹配的程序版本。
2、现有技术通常将不同环境字段合并为单一静态标签并依据标签匹配结果选择处理版本,或者仅根据有限历史样本验证候选版本的适用性。部分环境字段在处理程序执行前即可从来源元数据或独立审核配置中取得,而实际标准单位、实际采用的参考区间版本及试剂批次等字段需在完成字段语义映射、单位换算及参考区间选择后才能确定。若未对上述两类字段加以区分,则候选版本可能先被调用,再以该候选版本自身产生的执行后字段证明其适用性,从而形成执行结果反向影响初始路由决定的反馈关系。
3、现有方案还通常仅将处理程序代码版本作为版本管理对象,而未将依赖组件、当前生效配置、执行前路由条件、执行后环境条件、有效时间及验证证据共同冻结为统一对象。发生生产异常时,系统往往直接按父版本关系或版本发布时间选择旧版本,而父版本可能绑定已经失效的参考配置、单位换算配置或接口契约,单纯恢复旧代码并不必然恢复与当前输入环境兼容的处理状态。
4、因此,现有技术至少存在以下技术问题:其一,执行前可确定字段与执行后才能确认的字段未被有效隔离,有限历史样本难以证明候选版本对允许输入域内全部允许输入组合均满足执行后条件,容易产生路由反馈及授权域外误调用;其二,版本身份、验证对象与回退对象缺少统一绑定,父版本关系与回退资格未被区分,导致异常切换时难以确定唯一、兼容且可审计的回退版本。
技术实现思路
1、本发明所要解决的技术问题是:建立彼此隔离的执行前路由依据和执行后核验证据,使生产版本的初始选择仅由执行前可确定字段正向决定,并对允许输入域内全部允许输入组合进行机器校验,证明路由准入条件不会将可能产生不满足执行后条件的输入路由至候选版本;同时,将处理程序版本连同依赖组件、生效配置、路由准入条件、执行后条件及有效时间绑定为组合版本,在发生越界时排除异常版本并从满足当前输入环境及运行环境要求的版本中确定唯一回退版本。
2、为解决上述技术问题,本发明提供一种两阶段环境指纹的健康体检技能包路由与回退方法,应用于健康体检数据处理系统,所述环境指纹为由若干环境字段经规范化并按固定顺序编码形成的可比较摘要,所述技能包为用于对体检数据进行处理的可版本化处理程序,所述方法包括:
3、将待处理体检数据在执行所述处理程序前即可确定取值的执行前字段拼接计算摘要值,得到预执行路由指纹;
4、预先设定所述处理程序允许接收的输入所构成的取值范围为允许输入域,对所述允许输入域内每一种允许输入组合,校验所述处理程序的版本执行后产生的字段取值均满足预设执行后条件,仅当全部允许输入组合均满足时,将通过校验的版本连同其依赖组件、生效配置、路由准入条件、执行后条件及有效时间共同冻结为组合版本,任一冻结对象变化时所述组合版本的校验结果失效;
5、以所述预执行路由指纹匹配各所述组合版本的路由准入条件,命中多个时按预设排序规则取排序最前者为生产版本并执行,将执行后产生的结果字段追加至所述预执行路由指纹,得到执行后证据指纹;
6、依据所述执行后证据指纹判定所述生产版本是否满足所述执行后条件,当不满足时排除所述生产版本,依据所述待处理体检数据及当前运行环境,在各所述组合版本中重新确定满足与所述当前运行环境兼容的预设条件的回退候选,排除所述生产版本后按预设回退排序规则取排序最前者为回退版本,采用原子比较更新将路由切换至所述回退版本。
7、进一步地,所述将待处理体检数据在执行所述处理程序前即可确定取值的执行前字段拼接计算摘要值,得到预执行路由指纹,包括:
8、将所述执行前字段设为包括机构标识、设备标识或固件版本、检测方法、体检项目代码或检查协议标识及经过审核且当前生效的参考配置的版本标识,并将实际标准单位、实际选择的参考区间版本及试剂批次设为在执行所述处理程序前无法确定取值的字段而不纳入所述执行前字段;
9、在所述执行前字段中的所述体检项目代码或检查协议标识、所述设备标识或固件版本及所述检测方法中的任一字段缺失时,不为所述缺失的字段推定取值,将对应待处理体检数据转人工处理;
10、对未转人工处理的待处理体检数据,按预设的固定字段模式对所述执行前字段排序,按预设的规范化格式将排序后的所述执行前字段拼接为待摘要字符串,对所述待摘要字符串计算所述摘要值,得到所述预执行路由指纹。
11、进一步地,所述预先设定所述处理程序允许接收的输入所构成的取值范围为允许输入域,所述允许输入域为由输入字段模式、机构授权范围、体检项目、设备标识或检测方法标识、适用人群条件及数据产生时间构成的机器可判定输入域,包括:
12、依据所述执行前字段构造所述组合版本的路由准入条件,所述路由准入条件仅由所述执行前字段构成而不含所述处理程序执行后产生的字段,且禁止将形成不满足所述预设执行后条件的记录路由至所述组合版本,使所述预执行路由指纹在执行所述处理程序前即可与所述路由准入条件进行匹配;
13、将所述允许输入域内每一个允许的预执行路由指纹及与所述允许的预执行路由指纹一致的全部输入取值确定为所述允许输入组合;
14、为每一所述组合版本绑定用于判断所述待处理体检数据是否属于所述允许输入域的预设判定规则。
15、进一步地,所述对所述允许输入域内每一种允许输入组合,校验所述处理程序的版本执行后产生的字段取值均满足预设执行后条件,包括:
16、按固定字段模式在所述预执行路由指纹上扩展执行后产生的字段,得到执行后证据的取值模式;
17、对所述取值模式中取值可枚举的字段列举其全部取值,对所述取值模式中取值连续或取值个数超过预设阈值的字段归并为取值区间或符号变量,得到所述允许输入域的输入取值表征;
18、将所述输入取值表征与所述执行后条件转换为约束表达式,由约束求解器对所述约束表达式求解,判定所述输入取值表征所界定的输入组合中是否存在不满足所述执行后条件的输入组合,得到校验结果;
19、在所述校验结果指示不存在时判定校验通过,并保存所述允许输入域、所述约束求解器的求解器版本及所述校验结果的哈希,在所述校验结果指示存在或所述约束求解器返回未知或超时时,将对应待处理体检数据转人工处理。
20、进一步地,所述将通过校验的版本连同其依赖组件、生效配置、路由准入条件、执行后条件及有效时间共同冻结为组合版本,任一冻结对象变化时所述组合版本的校验结果失效,包括:
21、分别计算所述版本的内容、所述依赖组件、所述生效配置、所述路由准入条件及所述执行后条件的哈希,得到各冻结对象的哈希;
22、依据所述各冻结对象的哈希及所述有效时间生成组合版本哈希,并在验证报告中绑定所述允许输入域的哈希、所述求解器版本及所述校验结果的哈希;
23、在所述各冻结对象的哈希及所述有效时间中的任一者发生变化时,判定所述组合版本的既有校验结果失效并重新执行所述校验;
24、将所述组合版本的父版本设为仅表示派生关系而不作为回退资格。
25、进一步地,所述以所述预执行路由指纹匹配各所述组合版本的路由准入条件,命中多个时按预设排序规则取排序最前者为生产版本并执行,将执行后产生的结果字段追加至所述预执行路由指纹,得到执行后证据指纹,包括:
26、查询处于生效状态、所述路由准入条件被所述预执行路由指纹命中、字段契约兼容、外部依赖可用、所述生效配置与当前运行环境一致且已通过所述校验的所述组合版本,得到候选版本集合;
27、以预设判定规则判断当前待处理体检数据及所述预执行路由指纹是否属于所述允许输入域,并从所述候选版本集合中剔除所述预执行路由指纹不属于所述允许输入域的组合版本,得到过滤后的候选版本集合,其中所述剔除仅在已命中所述路由准入条件的组合版本中进行;
28、在所述过滤后的候选版本集合包含多个组合版本时,对所述过滤后的候选版本集合中的组合版本按预设排序规则排序,取排序最前的组合版本作为所述生产版本;
29、执行所述生产版本,得到结果字段,按预设顺序将所述结果字段追加至所述预执行路由指纹,得到所述执行后证据指纹,其中所述执行后证据指纹中追加的任一字段不改变所述生产版本的选择结果。
30、进一步地,所述依据所述执行后证据指纹判定所述生产版本是否满足所述执行后条件,当不满足时排除所述生产版本,依据所述待处理体检数据及当前运行环境,在各所述组合版本中重新确定满足与所述当前运行环境兼容的预设条件的回退候选,排除所述生产版本后按预设回退排序规则取排序最前者为回退版本,采用原子比较更新将路由切换至所述回退版本,包括:
31、将所述执行后条件设为包括字段单位一致约束、数值取值范围约束、必需字段完整性约束及禁止改变字段一致性约束,其中所述字段单位一致约束指结果字段的单位与所述生产版本声明的标准单位一致,所述数值取值范围约束指结果字段的数值处于预设的允许取值范围内,所述必需字段完整性约束指预设的必需字段均已产生,所述禁止改变字段一致性约束指预设的禁止变化字段在执行前后取值未被改变;
32、以所述执行后证据指纹逐项核验所述字段单位一致约束、所述数值取值范围约束、所述必需字段完整性约束及所述禁止改变字段一致性约束的四项约束是否成立,得到指示所述四项约束是否均成立的越界判定结果;
33、在所述越界判定结果指示所述四项约束中的任一项不成立时,判定所述生产版本不满足所述执行后条件,触发回退并排除所述生产版本;
34、将当前待处理体检数据及所述预执行路由指纹属于所绑定的允许输入域、所述路由准入条件被所述预执行路由指纹命中、所述生效配置与所述当前运行环境相符、字段契约兼容、外部依赖健康且已通过所述校验的所述组合版本置入回退候选集合;
35、对所述回退候选集合排除所述生产版本后,对所述回退候选集合中剩余的组合版本依次按照环境匹配维度、回退优先级、生效时间及版本标识排序,取排序最前的组合版本作为所述回退版本;
36、采用带期望当前版本标识的所述原子比较更新,仅在路由仍指向所述生产版本时将路由切换至所述回退版本,并保存切换前后的版本标识、由所述生效配置所界定的适用环境范围、路由配置哈希、生效配置哈希及组合版本哈希。
37、进一步地,所述方法还包括:
38、在所述回退候选集合排除所述生产版本后为空且存在可复用的历史执行代码时,禁止在运行时将所述历史执行代码与所述生效配置直接拼接,而将所述历史执行代码与所述生效配置构建为新候选版本;
39、为所述新候选版本重新形成所述路由准入条件与所述执行后条件,并对所述允许输入域内全部允许输入组合重新执行所述校验,得到所述新候选版本的校验结果及新的组合版本哈希;
40、对所述新候选版本完成静态校验、样本选择及成对回放,得到所述新候选版本的验证结果,其中所述静态校验指在不实际执行所述新候选版本的情况下检查所述新候选版本的代码及配置是否符合预设规则,所述样本选择指从所述允许输入域内选取用于回放的输入样本,所述成对回放指将所述输入样本分别送入所述新候选版本与被替换版本并比对所述新候选版本与所述被替换版本输出的一致性;
41、在所述校验结果指示所述新候选版本通过所述校验、且所述验证结果指示所述静态检查、所述样本选择及所述成对回放均通过之前,暂停由所述生效配置所界定的适用环境范围的自动处理并转人工审核;
42、在所述回退候选集合排除所述生产版本后为空且无可复用的历史执行代码时,停止由所述生效配置所界定的适用环境范围的自动处理。
43、进一步地,所述方法还包括:
44、固化带时间戳与哈希的回退前快照,所述回退前快照包含所述预执行路由指纹、所述执行后证据指纹、所述生产版本的版本标识、失败原因及中间结果;
45、在隔离环境中以所述回退版本重放所述当前待处理体检数据,得到版本与指纹匹配证据、独立的数据合法性校验证据及回退后结果校验证据,且将同一模块产生的重复日志合并计为一项证据;
46、在所述版本与指纹匹配证据、所述数据合法性校验证据及所述回退后结果校验证据均通过,且预设的回退后校验条件全部成立时,提交回退结果并固化回退后快照,所述回退后校验条件包括单位一致、参考区间适配、必经校验完成、禁止改变字段未改及版本状态合法;
47、在所述版本与指纹匹配证据、所述数据合法性校验证据及所述回退后结果校验证据未均通过或所述回退后校验条件未全部成立时,丢弃所述回退结果并转人工复核或阻断。
48、本发明还提供一种两阶段环境指纹的健康体检技能包路由与回退装置,所述装置包括:
49、指纹生成模块,用于将待处理体检数据在执行所述处理程序前即可确定取值的执行前字段拼接计算摘要值,得到预执行路由指纹;
50、版本冻结模块,用于预先设定所述处理程序允许接收的输入所构成的取值范围为允许输入域,对所述允许输入域内每一种允许输入组合,校验所述处理程序的版本执行后产生的字段取值均满足预设执行后条件,仅当全部允许输入组合均满足时,将通过校验的版本连同其依赖组件、生效配置、路由准入条件、执行后条件及有效时间共同冻结为组合版本,任一冻结对象变化时所述组合版本的校验结果失效;
51、路由执行模块,用于以所述预执行路由指纹匹配各所述组合版本的路由准入条件,命中多个时按预设排序规则取排序最前者为生产版本并执行,将执行后产生的结果字段追加至所述预执行路由指纹,得到执行后证据指纹;
52、越界回退模块,用于依据所述执行后证据指纹判定所述生产版本是否满足所述执行后条件,当不满足时排除所述生产版本,依据所述待处理体检数据及当前运行环境,在各所述组合版本中重新确定满足与所述当前运行环境兼容的预设条件的回退候选,排除所述生产版本后按预设回退排序规则取排序最前者为回退版本,采用原子比较更新将路由切换至所述回退版本。
53、本发明的有益技术效果在于:
54、由于采用了预执行路由指纹与执行后证据指纹的两阶段隔离机制,使得执行后才能确定的字段不能反向影响生产版本的初始选择,解决了候选版本利用自身输出证明适用性所产生的路由反馈问题;由于对允许输入域内全部允许输入组合进行约束求解器校验并在校验未通过时转人工处理,使得版本准入范围能够在发布前被保守收紧,降低有限历史样本不能覆盖生产输入域所产生的误路由风险;由于将版本连同依赖组件、生效配置、路由准入条件、执行后条件及有效时间共同冻结为组合版本并在任一冻结对象变化时使校验结果失效,使得验证对象、生产对象与回退对象保持一致,减少恢复失效配置或不兼容接口的情况。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com