5 软件框架
云计算提供了进行大规模数据密集型应用程序的平台。通常这些应用程序利用MapReduce框架(如Hadoop可伸缩的和容错数据处理)。研究表明MapReduce作业的性能和资源消耗的是高度依赖应用程序的类型。例如,Hadoop任务sort是I/O密集型,而grep则要求大量CPU资源。
此外,分配在每个Hadoop节点的VM可能是异构的。例如,一个VM可用带宽依赖于配置在同一个服务器的其他VM.
因此,通过仔细选择它的配置参数值和设计更高效的调度算法能优化MapReduce应用程序的性能和成本。通过缓解瓶颈资源,可以将应用程序的执行时间显著提高。关键的挑战包括Hadoop的性能建模(无论是在线还是离线)和动态条件下自适应调度。
另一个相关的方法认为让MapReduce框架有节能感知[5].这种方法的基本思想是将完成工作且等待新任务的Hadoop节点进入睡眠状态。这就要求Hadoop和HDFS必须由有节能感知。此外,通常会在性能和节能感知之间进行权衡。根据目标,找到一个理想的权衡点仍是一个没有探索的研究课题。
6 存储技术和数据管理
软件框架MapReduce和它的不同实现(Hadoop和Dryad)针对分布式处理的数据密集的任务。这些框架通常运行在网际文件系统(比如GFS和HDFS)。这些文件系统的存储结构、访问模式和应用程序编程接口不同于传统的分布式文件体系。特别是他们没有实现标准POSIX接口,因此引入和传统文件系统和应用程序的兼容性问题。目前的解决方法主要包括提支持MapReduce框架使用集群文件体系(如IBM的GPFS)方法和基于新的API原语支持可伸缩和并发数据访问等。
7 结束语
需求推动、技术进步和商业模式转变共同促进了云计算的快速发展,其核心是构建了一种全新的信息与数据存储、处理和服务模式。本文从云计算平台建设与管理、应用的构建等多角度总结了这种新兴计算模式存在关键技术及难点,提出了未来云计算研究与应用中所需解决的问题。