[发明专利]通过NoSQL数据库实现BOM数据多组织多视图的解决方法有效
| 申请号: | 201810477372.1 | 申请日: | 2018-05-18 |
| 公开(公告)号: | CN108710677B | 公开(公告)日: | 2021-08-17 |
| 发明(设计)人: | 曲强;何川;马军;应小昆;周渝丰;雷旭;吴亚瑜;高红云;袁家鹏;李济龙;祁玉亭;鄢泳;苏震;孙林;沈明艳;高原 | 申请(专利权)人: | 中国兵器工业新技术推广研究所;重庆铁马工业集团有限公司;西北工业大学 |
| 主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/20 |
| 代理公司: | 天津耀达律师事务所 12223 | 代理人: | 侯力 |
| 地址: | 100089 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 通过 nosql 数据库 实现 bom 数据 组织 视图 解决方法 | ||
1.通过NoSQL数据库实现BOM数据多组织多视图的解决方法,其特征在于,具体步骤如下:
1)元数据定义:同一属性,在NoSQL数据库中存储多个值;这些值用TAG进行区分,不要求每个TAG都需要维护值;
2)数据存储:
a)以一颗BOM树存储作为一个文档,文档名即为根节点物料的组件编码,通过组件编码能够快速定位到文档;
b)BOM树中的一个物料存储为文档中的一条记录;物料之间的关系通过引用的方式存储;即BOM树中的一个组件与另外一个组件或者零件的关系,存储为引用关系,而非采用嵌套的方式;
c)BOM树的节点中的属性存储的是该记录的属性;同一属性根据TAG值不同,存储不同的值;
d)当修改BOM数据的时候,在对应的历史文档中新增一条记录,记录更改的相关信息;同时备份修改前文档;
e)备份文档的文件名为当前文档名加前缀BAK_和后缀,后缀为版本号,备份文档的文档名存储到历史文档中的当前记录;
f)通过对应的历史文档,能够完整的记录BOM数据的修改历史;
3)视图定义:
BOM视图的定义包括两部分的内容:
a)属性列表以及属性的先后顺序;
b)TAG列表,以及TAG之间的优先关系:
如果定义了多个TAG,根据优先关系得到对应的值;如果定义的TAG都没有值,则取TAG=0对应的默认值;如果TAG=0也没有定义值,则返回空值;
4)视图映射:
a)BOM树读取:完整读取一个BOM对应的文档;
b)BOM在内存中构建树:为了避免通过递归的方式构建树,在存储BOM树的时候,把BOM树按先父节点,再第一个子节点,第二个子节点的顺序展开为一个数组,然后记录当前节点和父节点在数组中的序号;当读取BOM树的时候,顺序读取数据在内存中构建一个数组,然后根据数组的序号快速构建树;
c)根据视图定义过滤树:根据步骤3)视图定义规则,先过滤属性,再根据定义的TAG获得属性的值,然后把结果重新构建为一颗新的树,即BOM的一个视图;
5)视图展现:把视图映射后的新的树展现给用户;对于NoSQL数据库存储的同一个文档,根据视图定义的不同,展现给不同的用户的BOM树,有不同的树结构,节点属性以及节点属性不同的值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国兵器工业新技术推广研究所;重庆铁马工业集团有限公司;西北工业大学,未经中国兵器工业新技术推广研究所;重庆铁马工业集团有限公司;西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810477372.1/1.html,转载请声明来源钻瓜专利网。





