A.1 平台介绍

MapReduce的日趋流行带动了普通程序员学习MapReduce的潮流,它的学习资料也日趋丰富起来。但是MapReduce运行所需的并行环境却成为了入门者学习的最大障碍,主要原因是并行环境的硬件要求高,配置复杂,同时现有的学习资料中鲜有编程实战方面的指导,更多专注在MapReduce的理论知识上。综合这些情况,我们开发了云计算在线检测平台(http://cloudcomputing.ruc.edu.cn/),为大家提供理论知识测试和利用理论知识进行实战的机会。该平台提供运行程序的并行环境,避免入门者将精力都花费在环境配置上,帮助他们配合本书进行学习和实践。

云计算在线检测平台是一个MapReduce程序检测平台。此平台基于Hadoop集群提供了MapReduce并行程序运行的分布式环境,旨在为MapReduce的入门者提供简单具体的编程练习,使其初步掌握MapReduce框架的编程思想,并拥有使用MapReduce并行化解决实际问题的能力。用户可以根据平台提供的问题背景,开发自己的并行程序并提交运行。平台会根据运行结果反馈给用户一定的信息,以便进行修改或进一步优化。用户也可以在平台上进行分布式系统理论知识的测试,以提高理论水平。同时,此平台结合分布式系统架构Hadoop、MySQL技术和Tomcat技术,提供了在线的分布式并行运行环境,供用户运行自己所提交的并行程序。根据实际的使用结果和平台功能完整性的需求,平台的结构已经从原来的前台用户接口和后台程序运行两个主体结构发展成前台用户接口、后台运行程序和平台程序过滤模块三大部分。前台用户接口负责同用户的交互,包括保存用户提交的代码、返回程序的检测结果等;后台运行程序负责前台收集的用户代码并检测结果,同时将检测的结果交给前台并维护网站用户的信息,提供整个网站的网络服务;代码过滤模块主要实现了雷同代码的过滤和非MapReduce合理框架程序的过滤。

云计算在线检测平台兼顾实战和理论,能让用户在进行理论测试的过程中掌握开源分布式系统架构Hadoop的相关知识和MapReduce的理论知识,能让用户在编程提交和修改再提交的过程中切身体验到如何利用分布式系统Hadoop、MapReduce编程,以及如何用MapReduce并行程序来解决实际问题。总体来说,此平台能够提高用户的理论水平和实战能力,是MapReduce入门者不错的入门指导。