工业设计数据版本管理方法、系统、电子设备及存储介质与流程

摘要: 本技术涉及工业设计数据管理领域,具体而言,涉及一种工业设计数据版本管理方法、系统、电子设备及存储介质。背景技术:1、当前工业界广泛使用的三维cad软件(如cat...
工业设计数据版本管理方法、系统、电子设备及存储介质与流程

本技术涉及工业设计数据管理领域,具体而言,涉及一种工业设计数据版本管理方法、系统、电子设备及存储介质。

背景技术:

1、当前工业界广泛使用的三维cad软件(如catia、nx、creo、solidworks)的文件格式彼此不兼容,其内部数据结构各异。在跨企业协同中,下游供应商往往需要备有多个cad软件许可证,或依赖中性格式(如step/iges)进行转换,而转换过程会丢失特征树、参数历史、材质、约束等非几何信息,导致数据完整性和设计意图的丢失。

技术实现思路

1、有鉴于此,本技术实施例的目的在于提供一种工业设计数据版本管理方法、系统、电子设备及存储介质,能够消除传统方案中关系数据库元数据与文件服务器实体文件分离所导致的双源不一致问题。

2、第一方面,本技术实施例提供了一种工业设计数据版本管理方法,包括:将每一个设计单元映射为文件系统上的一个git仓库;将所述设计单元的内部属性存储为对应git仓库目录下的属性文件;其中,所述属性文件的文件名代表属性名,所述属性文件的文件内容代表属性值;将所述设计单元之间的装配引用关系,通过git的子模块机制进行表达;其中,所述设计单元之间的装配层级关系配置为通过所述文件系统中目录的嵌套关系进行表达。

3、在上述实现过程中,通过“文件即数据”的架构,将属性以文件形式存储于文件系统中,消除了传统方案中关系数据库元数据与文件服务器实体文件分离所导致的双源不一致问题,文件系统与git原子提交共同保障数据一致性。另外,将每个可复用设计单元作为独立的git仓库,使工业设计数据天然获得完整的版本追溯、分支管理、合并冲突处理等git原生能力,无需额外开发版本管理逻辑。

4、在一个实施例中,所述设计单元配置为被拆分为实体和节点;其中,所述实体配置为独立git仓库,用于存储通用属性;所述节点配置为submodule子模块,用于存储位置专属属性。

5、在上述实现过程中,通过git submodule和实体/节点分离,同一标准件可被多个装配位置引用节点,修改实体一次即可同步所有引用位置,同时各节点的位置属性(变换矩阵等)保持独立,可以避免传统方案中的文件复制或复杂数据库引用维护。同时,标准化的文件系统接口和ai agent接口,使得系统具备极高的开放性和可扩展性,可以无缝融入未来的智能化设计流程。

6、在一个实施例中,还包括:通过服务端工作空间,管理多个用户对所述git仓库的并发操作。

7、在上述实现过程中,通过设置服务端fork工作空间机制使客户端无需安装git、无需下载完整仓库,仅通过http api即可完成设计数据的编辑与提交,支持web浏览器和aiagent等轻量环境接入,增加该方法的应用场景。

8、在一个实施例中,所述通过服务端工作空间,管理多个用户对所述git仓库的并发操作,包括:通过所述服务端的工作空间管理器响应客户端的编辑请求,并从源git仓库创建隔离的服务端工作空间;其中,所述服务端工作空间配置为供客户端通过文件操作接口读写属性文件;响应提交指令将变更提交至所述服务端工作空间本地;以及响应推送指令将所述变更推送合并回所述源git仓库。

9、在上述实现过程中,通过设置服务端fork工作空间机制使客户端无需安装git、无需下载完整仓库,仅通过http api即可完成设计数据的编辑与提交,支持web浏览器和aiagent等轻量环境接入,增加该方法的应用场景。

10、在一个实施例中,其中,关系数据库配置为存储索引数据,对象存储配置为存储git对象及大体积工业文件,本地缓存配置为存储活跃工作空间的热数据;其中,所述大体积工业文件通过git lfs指针机制存储于所述对象存储中,git仓库中仅保留指向所述对象存储中实际内容的指针文件。

11、在上述实现过程中,通过设置三层存储架构(即,关系数据库、对象存储和大文件、本地缓存)配合git lfs透明指针机制,可以既防止git仓库膨胀,又可以保持用户操作透明性,兼顾存储效率与用户体验。

12、在一个实施例中,将各种制图软件的原生格式文件作为二进制数据文件存放于对应目录下,并将从所述原生格式文件中提取的设计属性平铺为所述目录下的属性文件。

13、在上述实现过程中,通过将多种主流cad软件的原生格式统一映射为“属性文件+二进制数据文件”的目录结构,可以屏蔽不同cad格式的差异,上层应用无需感知底层格式。

14、在一个实施例中,还包括:通过ai agent接口提供符合模型上下文协议mcp的标准工具集;其中,所述ai agent接口以文件操作语义封装git底层操作,所述ai agent接口配置为以读写文件的方式操作设计数据。

15、在上述实现过程中,通过将git底层操作封装为文件操作语义,使ai agent能够以读写文件的方式操作工业设计数据,大幅降低ai与工业设计系统的集成门槛。

16、在一个实施例中,还包括:按照全局默认配置层、租户企业配置层、团队配置层和项目配置层逐级进行配置继承与增量覆盖;其中,每个层级的配置变更以独立git提交记录存储;以及通过各层级目录下的manifest.json文件声明配置合并链。

17、在上述实现过程中,跨租户只读标准数据层配合live/frozen双模式引用,可以在保证标准数据版本一致性的同时,允许租户按需选择追踪策略。

18、在一个实施例中,还包括:在租户隔离的业务数据之上,建立第一目标目录;其中,所述第一目标目录配置为存放国标形位公差表和多个cad软件螺纹数据;不同租户的业务数据物理隔离于第二目标目录下,各租户具有独立的命名空间和权限控制; 所述租户通过多种模式引用标准数据。

19、在上述实现过程中,跨租户只读标准数据层配合live/frozen双模式引用,可以在保证标准数据版本一致性的同时,允许租户按需选择追踪策略。

20、第二方面,本技术实施例还提供一种工业设计数据版本管理系统,包括:git仓库映射层,用于将每一个设计单元映射为文件系统上的一个git仓库;文件系统抽象层,将所述设计单元的内部属性存储为对应git仓库目录下的属性文件;其中,所述属性文件的文件名代表属性名,所述属性文件的文件内容代表属性值;关系表达层,将所述设计单元之间的装配引用关系,通过git的子模块机制进行表达;其中,所述设计单元之间的装配层级关系配置为通过所述文件系统中目录的嵌套关系进行表达。

21、第三方面,本技术实施例还提供一种电子设备,包括:处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面的任一种可能的实施方式中的方法的步骤。

22、第四方面,本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面的任一种可能的实施方式中工业设计数据版本管理方法的步骤。

23、为使本技术的上述目的、特征和优点能更明显易懂,下文特举实施例,并配合所附附图,作详细说明如下。