大数据的内存加载方法及装置与流程

文档序号:12158044阅读:1010来源:国知局
大数据的内存加载方法及装置与流程
本发明涉及数据加载,尤其涉及一种大数据的内存加载方法及装置。
背景技术
:企业的信息管理系统,例如PDM系统、ERP系统、MES系统、SRM系统等等,这些系统分别负责企业的产品设计、生产计划与库存、财务管理、制造执行与设备管控、供应商管理等,所涉及的数据类别有产品、零部件、图纸、工艺、账套、采购单、工令单、领料单、设备、维修等等,这些数据有如下特点:量大,种类多,关系庞杂,另外由于信息系统对数据描述的差异性,导致一类数据存在多个描述,使得数据存在重复、交叉。如此种类繁多、海量、交织的数据形成大数据,这些大数据被加载到信息系统进行业务逻辑运算时,信息系统需要筛选过滤这些数据,导致信息系统加载数据缓慢、逻辑处理困难。技术实现要素:发明目的:本发明针对现有技术存在的问题,提供一种大数据的内存加载方法及装置,本发明可以提高数据加载到内存中的处理效率。本发明提供了一种大数据的内存加载方法,包括以下步骤:将数据按照类进行划分和合并,形成多类对象数据,并存储于对象数据库中;按照关系中的关联顺序,将多类对象数据有序关联,形成多个树状关系网络;自顶端开始,将每一树状关系网络的上下层关系记录下来,形成多个快照,存储于快照数据库中;需要加载数据时,获取快照中的所有关系,并将所有关系加载到内存中。进一步的,所述将数据按照类进行划分和合并,具体包括:将属于同一类的对象数据划分为一类数据;在同一类数据中,将关键属性相同的不同对象数据进行合并,从而将一类对象数据组织在一起。本发明还提供了一种大数据的内存加载装置,包括:数据划分模块,用于将数据按照类进行划分和合并,形成多类对象数据,并存储于对象数据库中;数据关联模块,用于按照关系中的关联顺序,将多类对象数据有序关联,形成多个树状关系网络;快照生成模块,用于自顶端开始,将每一树状关系网络的上下层关系记录下来,形成多个快照,存储于快照数据库中;快照加载模块,用于在需要加载数据时,获取快照中的所有关系,并将所有关系加载到内存中。进一步的,所述数据划分模块具体包括:数据划分单元,用于将属于同一类的对象数据划分为一类数据;数据合并单元,用于在同一类数据中,将关键属性相同的不同对象数据进行合并,从而将一类对象数据组织在一起。有益效果:本发明与现有技术相比,其显著优点是:1、采用快照进行一次性加载,内存加载速度更快;2、快照中的关系是可定义的,通过获取这个定义,然后在数据库中使用join语句进行SQL拼凑,可以将原先的逐层查找树变成一次(或几次)查找树,数据库访问次数大大减少,所以提高了效率;3、数据对象都在对象数据库中,如果要创建一个数据对象,首先根据这类对象的匹配规则到对象数据库里寻找,如果有相同的,则直接使用,故而提高了数据重复使用率。附图说明图1是本发明的一个实施例的流程示意图;图2是数据合并示例图;图3是树状关系网络示例图;图4是产品各道加工工序所需原辅料的首样BOM结构图;图5是产品各道加工工序所需原辅料的下单BOM结构图。具体实施方式如图1所示,本实施例的大数据的内存加载方法包括以下步骤:S1、将数据按照类进行划分和合并,形成多类对象数据,并存储于对象数据库中。其中,按照类进行划分和合并具体包括步骤:(1)将属于同一类的对象数据划分为一类数据;例如,数据中有各种不同的产品类,产品类中只负责描述产品相关的特性,如:名称、型号、功能等,产品类下有不同的零部件类,因此,可以将产品类划分为一类对象数据,将零部件类划分为一类对象数据。(2)在同一类数据中,将关键属性相同的不同对象数据进行合并,从而将一类对象数据组织在一起;例如,比如零部件,每个零部件都有一个唯一的物料编码,物料编码相同的零部件就是同一个,因此,可以合并为一个;如图2所示,对象数据A1和对象数据A2,对象数据A1中有属性B和C,对象数据A2中有属性E和C,关键属性为C,将对象A1和对象A2合并后,得到对象数据A,其属性为E、B、C。S2、按照关系中的关联顺序,将多类对象数据有序关联,形成多个树状关系网络。例如,产品由零部件按照装配关系装配组成,每个零部件有一张或者多张图纸,每个图纸可能有一个或者多个版本,这样就形成了产品-零部件-图纸-图纸版本的对象网络,如图3所示,产品1包含零部件1,零部件1由子零部件2和子零部件3组成,子零部件2下有一张图纸1,从而构成一树状关系网络。S3、自顶端开始,将每一树状关系网络的上下层关系记录下来,形成多个快照,存储于快照数据库中。例如,针对图3所示的树状网络,从顶端开始,将上下层关系记录下来,得到快照如表1所示。表1快照结构表产品1零部件1快照1零部件1子零部件1快照1零部件1子零部件3快照1子零部件2图纸1快照1表1中,第一行表示产品1下有零部件1,第二行表示零部件1下有子零部件2,第三行表示零部件1下有子零部件3,第三行表示子零部件2下有一张图纸1,产品1和零部件有一个构成关系,零部件1和子零部件2,子零部件3有一个装配关系,子零部件2和图纸1有一个拥有关系,这些关系都记录在快照1中。S4、需要加载数据时,获取快照中的所有关系,并将所有关系加载到内存中。本实施例的大数据的内存加载装置与上面所述的方法一一对应,具体包括:数据划分模块,用于将数据按照类进行划分和合并,形成多类对象数据,并存储于对象数据库中;数据关联模块,用于按照关系中的关联顺序,将多类对象数据有序关联,形成多个树状关系网络;快照生成模块,用于自顶端开始,将每一树状关系网络的上下层关系记录下来,形成多个快照,存储于快照数据库中;快照加载模块,用于在需要加载数据时,获取快照中的所有关系,并将所有关系加载到内存中。其中,所述数据划分模块具体包括:数据划分单元,用于将属于同一类的对象数据划分为一类数据;数据合并单元,用于在同一类数据中,将关键属性相同的不同对象数据进行合并,从而将一类对象数据组织在一起。将本实施例应用于家纺系统中时,如图4和图5所示,分别记录了产品‘安娜与国王’各道加工工序所需原辅料的首样BOM和下单BOM结构图,该图所涉及的对象数据类别有产品、半成品、原辅料、工序,关系包含产品-半成品,半成品-原辅料,半成品-工序,在产品类上记录了两个快照,快照名称分别是首样BOM和下单BOM,首样BOM就是产品样品的组成BOM,下单BOM就是正式产品的组成BOM,采用此发明方法加载两个快照里的所有对象与关系的数据比现有方法在速度上提高了三倍以上。以上所揭露的仅为本发明一种较佳实施例而已,不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1