论文部分内容阅读
随着计算机物理性能已基本达到极致,摩尔定律基本失效,这一问题直接导致研究人员不得不绞尽脑汁以进一步提高计算机的运算性能,在此基础上出现了一机双核,一机四核的家用机,以此来达到通过并行计算提高计算机性能,实际上这种尝试被认为是可行的,并且是成功的。在并行计算、互联网技术、虚拟化等诸多技术的日趋成熟,及对高性能、高存储、高可靠性、高扩展性的服务器的追求,便催生出云计算的概念。2007年,由Google率先提出商业云计算的概念,其主要实现形式是将若干台廉价机相互连接,协同操作,其性能可匹配或临架于价格昂贵的超级服务器。同年IBM,微软,雅虎,HP等IT业巨头也相继加入云计算发展中,目前所有IT行业巨头都将云计算作为未来发展的主要战略之一,另外所有商业媒体也都对云计算的发展前景持乐观态度,如此可见云计算的商业前景和应用需求已经毋庸置疑。本文主要介绍云计算的产生,发展及现状、网格计算同云计算的相似点与不同点、并行计算语言MPI与Erlang、云计算的层次结构、IBM、微软、亚马逊等大公司对云计算的应用现状、开源云计算平台Hadoop的整体框架。并介绍了Hadoop中的两个最主要部分:MapReduce和HDFS,其中详细分析了Hadoop中的MapReduce的源代码,及MapReduce的操作流程,搭建了Hadoop的运行环境及开发环境,并在此基础之上开发了Hadoop云计算平台的管理软件,并详细介绍如何编写MapReduce框架的程序。本文工作重点:1.本文工作重点主要是对Hadoop中MapReduce部分的源代码分析,及在MapReduce过程中JobTracker与TaskTracker之间的调用关系。2.设计并编写了一个简单的管理Hadoop的程序,其主要功能有启动/关闭Hadoop、显示Hadoop节点信息、配置并显示Hadoop环境变量、运行基于MapReduce框架下的程序等功能。3.对于Hadoop中的任务调度算法进行了研究并设计了一个新的调度算法,该调度算法不同于传统的FIFO、时间片轮询、优先级等机制,更加的灵活。本文尝试着将MapReduce运行机理、流程分析的比较透彻,并编写一个可以让不懂得Hadoop命令的程序员也可以在该平台上顺利编写MapReduce程序的平台。