The present invention provides a parallel processing method of massive data based on large data, which includes: (1) obtaining the available process number of the parallel computing platform; (2) assigning and initializing the cache queues for the storage based on the number of available processes; (3) operation tasks that need to be requested and operated according to the number of available processes. Regional segmentation; (4) multiple processes parallel computing tasks in each region, save the last entry values to the corresponding items in the cache queue; (5) unify the results of each region in the updated cache queue. This invention puts forward a parallel processing method of massive data based on large data. On the basis of multi core computing platform, it makes full use of the distributed parallel environment to improve the computing speed.
【技术实现步骤摘要】
基于大数据的海量数据并行处理方法
本专利技术涉及并行计算,特别涉及一种海量数据的并行处理方法。
技术介绍
大数据的分析和处理已经成为企业重要的IT能力。因为大数据的体量大、速度快、种类多,具有大量异构非结构化数据,使得大数据分析处理和利用也存在巨大的困难。为了解决大数据运算的问题,世界各国的软件开发人员和研究学者都进行了很多的研究和实践。近年来,越来越多的开发人员开始重视软件工程的作用,为了减少重复劳动,提高软件的质量和代码复用,许多优秀的大数据运算库随之出现。现有的大数据运算库所提供的只是数学运算功能,并且只实现各种运算的串行算法,对于多核分布式计算平台并不适用。当前还没有在多核分布式计算平台上产生任何相关的并行计算。在并行计算中克服的主要问题之一是数据相关性,而累加算法中按位求和操作使算法本身存在很大的相关性问题。
技术实现思路
为解决上述现有技术所存在的问题,本专利技术提出了一种基于大数据的海量数据并行处理方法,包括:(1)获取并行计算平台当前可用进程数;(2)根据步骤(1)中得到的可用进程数,分配和初始化用于存储进位的缓存队列,其项数为N;(3)根据步骤(1)中得到的可用进程数将需要进行求和操作的运算任务进行区域切分,区域中的子任务的个数与缓存队列的个数一一对应,大于等于可用进程数;(4)使用动态调度策略,多进程并行求取各区域的计算任务,率先执行完任务的进程接着从由子任务形成的任务池中分配一个子任务,各进程在求取子任务时需判断当前子任务是不是最后一个子任务,如果是最后一个子任务则调用串行累加算法,否则直接调用串行累加算法计算当前子任务,然后将最后的进位 ...
【技术保护点】
一种基于大数据的海量数据并行处理方法,其特征在于,包括:(1)获取并行计算平台当前可用进程数;(2)根据步骤(1)中得到的可用进程数,分配和初始化用于存储进位的缓存队列,其项数为N;(3)根据步骤(1)中得到的可用进程数将需要进行求和操作的运算任务进行区域切分,区域中的子任务的个数与缓存队列的个数一一对应,大于等于可用进程数;(4)使用动态调度策略,多进程并行求取各区域的计算任务,率先执行完任务的进程接着从由子任务形成的任务池中分配一个子任务,各进程在求取子任务时需判断当前子任务是不是最后一个子任务,如果是最后一个子任务则调用串行累加算法,否则直接调用串行累加算法计算当前子任务,然后将最后的进位值保存到步骤(2)缓存队列中相应的项中,将结果存储在结果的相应位置;(5)对步骤(4)中已更新的缓存队列中每个区域的结果进行统一操作,具体过程为:遍历缓存队列中除缓存队列N‑1的每一个值,如果进位值为零,则继续遍历下一个,如果值为非零,则对步骤(4)得到的结果中从下一个区域结果开始到结果的最高位的整个区域进行加1操作,且当加1过程中新的当前进位不为1时,跳出此次遍历过程;遍历完除缓存队列N‑1的 ...
【技术特征摘要】
1.一种基于大数据的海量数据并行处理方法,其特征在于,包括:(1)获取并行计算平台当前可用进程数;(2)根据步骤(1)中得到的可用进程数,分配和初始化用于存储进位的缓存队列,其项数为N;(3)根据步骤(1)中得到的可用进程数将需要进行求和操作的运算任务进行区域切分,区域中的子任务的个数与缓存队列的个数一一对应,大于等于可用进程数;(4)使用动态调度策略,多进程并行求取各区域的计算任务,率先执行完任务的进程接着从由子任务形成的任务池中分配一个子任务,各进程在求取子任务时需判断当前子任务是不是最后一个子任务,如果是最后一个子任务则调用串行累加算法,否则直接调用串行累加算法计算当前子任务,然后将最后的进位值保存到步骤(2)缓存队列中相应的项中,将结果存储在结果的相应位置;(5)对步骤(4)中已更新的缓存队列中每个区域的结果进行统一操作,具体过程为:遍历缓存队列中除缓存队列N-1的每一个值,如果进位值为零,则继续遍历下一个,如果值为非零,...
【专利技术属性】
技术研发人员:李垚霖,
申请(专利权)人:成都博睿德科技有限公司,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。