应用同步
应用同步是指在不同应用之间实现数据一致性与模型复用的能力。为了支撑工业企业在产品全生命周期管理、制造执行、供应链协同等场景下的数据治理需求,工业数字模型驱动引擎-数据建模引擎(xDM Foundation,简称xDM-F)分别支持应用设计态和应用运行态的同步。
- 应用设计态下的应用同步,是指将一个应用设计态中的数据模型与基础数据,按照既定规则完整或选择性同步至另一个应用,以实现多环境、多租户之间的数据一致性与模型复用。该功能主要服务于工业企业在产品全生命周期管理(PLM)、制造执行(MES)、供应链协同(SCM)等场景下的数据治理需求,有效支撑研发测试一体化、异地协同开发、跨组织数据共享等业务模式。
- 应用运行态下的应用同步,是指在应用完成发布并部署运行后,对其运行态中的基础数据、数据模型、服务编排、生命周期等生产运行核心资产,通过安全可控的离线方式,实现跨应用、跨租户、跨环境的完整同步,保障生产环节模型一致、业务标准统一、部署高效。该功能可支撑企业生产环境平滑升级、灾备切换及多区域业务部署,适配高可用性、高业务连续性要求的工业场景。更多内容请参见应用同步概述。
适用场景
在工业产品全生命周期管理过程中,应用同步主要服务于以下三类典型场景:
- 同一租户下,将数据同步至不同环境标识的同名应用。例如,将“环境标识”为“dev”的A应用同步至“环境标识”为“sit”的同名应用。
- 同一租户下,将数据同步至除源应用自身以外的环境。例如,将广州友好区域的B应用同步至北京四区域的C应用。
- 不同租户下,但源应用和目标应用都属于iDME应用的应用间数据同步。
支持同步的内容与状态
应用同步支持对以下模块内容进行同步。同步后目标应用的状态,取决于源应用数据模型的版本属性:
- A版本:指“修订号”为“A”的数据模型。同步后目标应用中保持“已发布”状态,适用于成熟模型的直接复用。
- 非A版本:指“修订号”不为“A”的数据模型。同步后目标应用中处于“正在工作”状态,便于接收方进行二次修订或适配。
| 同步模块 | 同步内容项 | 源应用状态要求 | 目标应用同步后状态(A版本) | 目标应用同步后状态(非A版本) | 模板同步后状态 |
|---|---|---|---|---|---|
| 数据模型 | 数据实体 | 已发布 | 已发布 | 正在工作 | 已发布 |
| 关系实体 | 已发布 | 已发布 | 正在工作 | 已发布 | |
| 功能模型 | 已发布 | 已发布 | 正在工作 | 已发布 | |
| 基础数据 | 枚举类型 | - | - | - | - |
约束与限制
- 应用同步仅支持在iDME已适配的数据库类型之间执行。如果源应用与目标应用均属于iDME应用,则支持在不同类型数据库间进行应用同步。
- 如果目标应用中已存在具有“多维视图&多维分支”功能的同名数据模型,则不支持同步没有该功能的同名数据模型。
- 在工业数据模型模板库生成的同步任务,不支持下载离线文件。如果应用中存在同名的数据模型或枚举类型,系统遵循同步任务中配置的“处理方式”策略,对现有版本执行相应的更新操作。
- 租户需要同时具有源应用和目标应用的“应用责任人”或“应用开发人员”权限。
- 如果源应用中的数据模型包含“参考对象”类型属性,且该属性关联的目标数据模型不属于目标应用(即属于其他应用),通过同步任务或离线文件导入执行同步时,需同时满足以下条件:
- 操作人需同时具有源应用、目标应用及目标数据模型所属应用的“应用责任人”或“应用开发人员”权限。
- 目标数据模型所属应用的使用场景需与目标应用一致。如:目标应用为“标准使用场景”时,关联的目标数据模型所属应用也必须为“标准使用场景”。
- 一个目标应用仅支持创建一个“未启动”或“执行中”的同步任务。
- 系统每天凌晨2点自动清理超过一年且“状态”为“已完成”的应用同步任务,为避免所需的应用同步任务或离线文件超出保留时间被删除,请及时备份应用同步任务,以及下载所需离线文件至本地。
- 通过导入离线文件方式同步数据时,文件解压后的大小须小于100MB。
创建同步任务
- 登录应用设计态,在左侧导航栏中,选择,进入“应用同步”页面。
- 单击“创建”。 图1 创建应用同步
- 在展开的创建应用同步页面,设置如下主要信息,单击“创建”。 图2 基本信息
表1 基本信息 参数
参数说明
任务名称
用户自定义,表示当前创建的同步任务的名称。
同步类型
系统根据当前操作上下文自动识别并锁定任务类型(默认为“应用同步”)。
该字段仅支持查看,不可手动修改。
是否跨环境
选择同步任务的类型。
- 选择“是”,跨环境同步应用数据。仅支持离线方式同步。
- 选择“否”,同一租户下应用间的数据同步。仅支持在线方式同步。
目标应用
仅“是否跨环境”选择为“否”时,必填项。
需要同步当前应用数据的应用。例如,选择目标应用为B,则视为需要将当前应用A所选数据同步到应用B。
同步模块
数据模型模块包含“数据实体”、“关系实体”、“功能模型”和“枚举类型”。为减少关联数据报错,建议同步顺序 。
同步内容方式
支持全量和自定义。- 选择“全量”,需同步XDM定制属性。
- 选择“自定义”,根据实际需求,选择是否同步XDM定制属性。
处理方式
- 版本覆盖:基于英文名称进行唯一性校验与匹配。
- 数据模型处理策略:目标应用中的模型处于“正在工作”状态时,直接覆盖现有内容;模型处于“已发布”状态时,自动创建新的修订版本。
- 枚举类型处理策略:如果目标应用已存在同名枚举类型,则直接覆盖现有内容;如果不存在,则自动创建新枚举类型。
- 重复则跳过:基于英文名称进行唯一性校验与匹配。如果目标应用已存在同名数据模型或枚举类型,则自动跳过。
同步XDM定制属性
指非XDM应用对XDM模型进行新增和修改的属性。- 选择“是”,全部定制属性进行版本覆盖。
- 选择“否”,定制属性不同步。
执行同步任务
创建同步任务后,需要手动启动才会启动该任务。如果同步任务选择为不跨环境,任务启动后,会立即将当前应用数据同步至目标应用中。如果同步任务选择为跨环境,任务启动后会生成一个离线文件,您可以下载该离线文件,前往目标应用导入离线文件,完成数据同步操作。
- 登录应用设计态,在左侧导航栏中,选择,进入“应用同步”页面。
- 在“应用同步”页面,您可以通过如下方式启动同步任务。
- 单个执行:在“状态”为“未启动”的同步任务所在行,单击
。 图3 单个执行同步任务
- 批量执行:勾选多个“状态”为“未启动”的同步任务,单击列表上方的“启动”。 图4 批量执行同步任务
- 单个执行:在“状态”为“未启动”的同步任务所在行,单击
- 在弹出的提示框中,单击“确定”。
根据同步应用的数据量大小,完成同步需要一定时间,您可单击
更新同步状态。启动应用同步后,该应用同步不能删除或编辑。
下载离线文件
仅“状态”为“已完成”的跨环境同步任务支持下载离线文件。
- 登录应用设计态,在左侧导航栏中,选择,进入“应用同步”页面。
- 在“应用同步”页面,找到需要下载离线文件的同步任务,单击
,即可将离线文件下载至本地。 图5 下载离线文件
导入离线文件
当您已获取到应用同步任务对应的离线文件后,您可以将文件发送给其他租户或切换iDME所在其他区域,然后进入待同步数据的应用设计态,导入离线文件,同步应用数据。
- 登录应用设计态,在左侧导航栏中,选择,进入“应用同步”页面。
- 在“应用同步”页面,单击“离线文件导入”。 图6 离线文件导入
- 在弹出的窗口中,将已获取到的离线文件拖拽到待上传列表区域,单击“确认导入”。
您也可以单击“选取文件”,将已获取到的离线文件上传至应用设计态。
导入后,您可以单击同步任务列表右上方的
,刷新应用同步的状态。待数据同步完成后,在“结果”栏中查看同步结果,或者进入同步任务详情页进行查看。图7 同步结果
查看同步任务详情
为了方便用户查看同步任务信息,xDM-F提供如下查看路径:
- 在应用设计态的页查看所有同步任务的信息。 图8 应用同步列表
在该页面中,您可以查看到的同步任务操作包括:编码、任务名称、是否跨环境、同步类型、目标应用、同步内容方式、处理方式、状态、结果、开始时间及结束时间等。
同时,支持根据不同字段进行排序,支持分页显示(默认分页20条/页,可选择10条/页、20条/页、50条/页、100条/页、200条/页)。
- 在同步任务详情页上查看某个同步任务的详细信息。
在“应用同步”页面,通过对应同步任务的“编码”超链接进入详情页。如下图所示:
图9 同步任务详情
在该页面中,您可以查看到的同步任务操作包括:
- 基本信息:为您展示当前同步任务相关的基本信息和修改记录。
- 同步内容:您可以在“同步内容”页签下查看数据实体、关系实体、功能模型、枚举类型和XDM定制属性等信息。此外,支持勾选不同的同步结果用于筛选同步信息。 图10 筛选同步结果
搜索同步任务
默认情况下,应用同步页展示的是当前应用设计态下全部同步任务。为了帮助用户快速搜索出当前应用设计态下的同步任务,xDM-F提供搜索同步任务功能,目前可通过编码、任务名称、状态、是否跨环境、目标应用、同步内容方式、处理方式、完成时间、创建者及更新者等属性维度进行过滤。
- 登录应用设计态,在左侧导航栏中,选择,进入“应用同步”页面。
- 根据实际需求,设置筛选条件,单击“搜索”,即可获取对应同步任务。 图11 条件筛选
筛选条件说明如下:
- 编码:可通过同步任务的编码进行筛选。
- 任务名称:可通过同步任务的名称进行筛选。
- 状态:支持按照未启动、执行中和已完成筛选。
- 同步类型:支持按照应用同步和模型模板筛选。
- 是否跨环境:支持按照是和否筛选。
- 目标应用:可通过同步任务中的目标应用名称进行筛选。
- 同步内容方式:支持按照工作中、审核中和已发布筛选。
- 处理方式:支持按照版本覆盖和重复则跳过筛选。
- 完成时间:您可以自定义同步任务的开始时间和结束时间进行筛选。
- 创建者:可通过创建同步任务的用户名进行筛选。
- 更新者:可通过更新同步任务的用户名进行筛选。
删除同步任务
当您不再需要某个应用同步任务时,可参考如下操作删除同步任务。仅支持删除“状态”为“未启动”的同步任务。
- 登录应用设计态,在左侧导航栏中,选择,进入“应用同步”页面。
- 在“应用同步”页面,勾选“状态”为“未启动”的同步任务,单击“删除”。 图12 删除任务
- 在弹出的提示框中,单击“确定”。