最近写了个Web程序来调用Hadoop的api,对Hadoop自带的管理方式进行了二次开发,加强了可操作性。现在简单的介绍下功能和方法。Hadoop版本为1.xx
1.文件查看功能
先来个页面截图
这个功能实现主要是利用了Hadoop的FileSystem类得到HDFS文件的对象,并利用此提供的方法对HDFS进行操作。其中文件类型的判断用到的是FileStatus类。
2.作业监控功能
作业的监控首先是得到一个JobClient对象,调用其getAllJobs方法,得到集群中所有作业的列表,再根据JobStatus得到作业的运行状态。
在作业监控种每个作业是由系统通过新建一线程实现的,在创建作业页面进行新建线程,由新线程去运行作业,这样并不妨碍主线程进行其它的作业新建或者对集群的管理。
页面中作业进程的更新是通过页面自动刷新得到的,这样比较浪费系统资源,或许用Ajax实现更好,随后有时间会进行完善。