数据存储方法及装置制造方法及图纸

技术编号:8563054 阅读:171 留言:0更新日期:2013-04-11 04:43
本发明专利技术公开了一种数据存储方法,包括:对输入的数据进行分组,其中,所述数据的组数根据处理该数据的结点数确定;依次为每个结点分配一组待处理的数据,并利用各结点对各自对应的数据进行并行的连续id化处理,其中,所述连续id化处理是指将数据中的关键字替换为0-N的整数;存储经连续id化处理后的数据。采用本发明专利技术能够实现数据并行id化处理,节省存储时间。本发明专利技术还公开了相应的装置。

【技术实现步骤摘要】

本专利技术涉及网络应用领域,具体涉及一种数据存储方法以及数据存储装置。
技术介绍
在大规模并行计算中,输入的数据通常是一系列的关键字-值(key-value )对。经过一系列的计算后,输出每个key对应的新的value。为了方便寻址,并且节省存储空间,可以对输入数据进行连续的id化,即将每个key-value对中的key替换为0_N的整数。在输入数据较多时,为每个数据(例如每个key-value对中的key) id化就会占用大量的时间,进而会降低数据的存储速度。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的数据存储装置和相应的数据存储方法。依据本专利技术的一个方面,提供了一种数据存储方法,包括对输入的数据进行分组,其中,所述数据的组数根据处理该数据的结点数确定;依次为每个结点分配一组待处理的数据,并利用各结点对各自对应的数据进行并行的连续id化处理,其中,所述连续id化处理是指将数据中的关键字替换为O-N的整数;存储经连续id化处理后的数据。可选地,所述利用各结点对各自对应的组数据进行并行的连续id化处理,包括对于任意一个节点,计算本结点起始id编号;根据本节点起始id编号对本结点数据进行id化。可选地,采用如下公式对本结点数据进行id化 rank-

【技术保护点】
一种数据存储方法,包括:对输入的数据进行分组,其中,所述数据的组数根据处理该数据的结点数确定;依次为每个结点分配一组待处理的数据,并利用各结点对各自对应的数据进行并行的连续id化处理,其中,所述连续id化处理是指将数据中的关键字替换为0?N的整数;存储经连续id化处理后的数据。

【技术特征摘要】
1.一种数据存储方法,包括 对输入的数据进行分组,其中,所述数据的组数根据处理该数据的结点数确定; 依次为每个结点分配一组待处理的数据,并利用各结点对各自对应的数据进行并行的连续id化处理,其中,所述连续id化处理是指将数据中的关键字替换为O-N的整数; 存储经连续id化处理后的数据。2.根据权利要求1所述的方法,其特征在于,所述利用各结点对各自对应的组数据进行并行的连续id化处理,包括 对于任意一个结点,计算本结点起始id编号; 根据本结点起始id编号对本结点数据进行id化。3.根据权利要求2所述的方法,其特征在于,采用如下公式对本结点数据进行id化4.根据权利要求3所述的方法,其特征在于,rank=0时,StartID= O。5.根据权利要求1至4任一项所述的方法,其特征在于,所述利用各结点对各自对应的组数据进行并行的连续id化处理,包括 对于任意一个结点, 在本结点内部设置多个工作线程,并将本结点处理的数据依次分配到每个工作线程上; 利用每个工作线程对各自对应的数据进行连续id化处理。6.根据权利要求5所述的方法,其特征在于,所述利用每个工作线程对各自对应的数据进行连续id化处理,包括 对于任意一个工作线程, 判断当前处理的数据是否是自身所处理的最后一条数据; 若是,则结束并退出处理流程; 若否,则为当前数据赋予id,并触发下一条数据的处理。7.根据权利要求6所述的方法,其特征在于,所述触发下一条数据的处理,包括利用原子递增atomic_inc,对下一条数据进行连续id化处理。8.根据权利要求1至7任一项所述的方法,其特征在于,所述输入的数据为key-value对。9.根据权利要求1至8任一项所述的方法,其特征在于,所述方法采用MPI模型对数据进行并...

【专利技术属性】
技术研发人员:齐路何锐邦唐会军
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1