web工程调用hadoop集群1.2

本实例代码在lz的资源中有上传,有需要的可以参考(下载后的文件解压后有两个,一个直接导入myeclipse工程,另外的jar放在hadoop的lib下面,只需修改Utils中的ip即可运行该程序);

这里主要讲下设计思路:

首先进入页面后是一个frame框,上面是固定页面,下面是一个输入页面。输入页面输入要运行hadoop word count程序的输入和输出路径,然后提交路径到servlet A,servlet A中new一个Thread来启动wordcount程序(并初始化Job,这个Job可以在其他地方获取到),然后直接跳转到显示map和reduce进度的页面(第一次跳转的时候附带的map和reduce参数分别设置为零)。在显示页面读取map和reduce参数进行显示,然后判断reduce是否到达1(说明job完成),是则直接显示任务完成,否则等待3秒跳转到另外的获取map和reduce进度的servlet B中,在servlet B中获取Job的map和reduce进度,然后跳转到显示页面,并且附带map和reduce参数,然后显示页面读出参数进行显示。这个流程可以通过下面的图来解释:

1.启动页面:

2. map、reduce进度显示页面:

3. 任务完成界面:

标签