论文部分内容阅读
随着互联网技术的发展和云计算技术的出现,越来越多的公司企业开始面对海量数据的处理。传统的集中式处理方式和分布式处理方式很难满足海量数据的计算需求,而云计算技术的发展则为大规模数据处理提供了很好的技术平台。然而,在云计算环境下的数据处理具有内在的高度并行性,并且是分布式的,这与传统的顺序程序存在巨大差异。如何为普通用户提供一个简洁而又功能强大的编程模型与接口,是当今云计算技术研究的重点。现有云计算环境下的计算模型往往对迭代式编程的支持不够,并通常要求用户实现特定的自定义函数,而用户对程序的逻辑缺少控制,不能像顺序程序一样简单的编写代码。本文针对以上问题,通过对现有计算模型的研究,设计出了面向集合的MapPartition计算模型(Set-oriented Map Partition Computational Model,SOMP)。该模型由一个Main函数和一些用户自定义的操作组成。在Main函数中,用户可以像顺序程序一样进行迭代式编程,然后通过模型提供的一些原语将自定义的一些操作作用在一些键值对集合上。通过操作的延迟执行和优化,SOMP模型能够很好的利用数据缓存提高计算效率。经过实际测试,该计算模型在处理迭代式数据计算时具有较高的效率。