Skip to content

OMNILab/yet-another-hadoop-tutorial

Repository files navigation

Yet Another Hadoop Tutorial “又一个Hadoop入门教程”

作业管理系统

作业管理系统(Batch Management System)是在集群环境上管理批量作业的调度系统。 集群的使用者通过作业管理系统与集群进行异步地交互——通常一个集群作业要运行相当长的时间,使用者通常不需要在终端前等待作业结束。 作业管理系统的一般工作方式如下:

  1. 用户向作业管理系统提交作业;
  2. 作业管理系统根据现有资源调度作业,将作业分配到适当节点运行;
  3. 作业结束,调度系统记录运行结果;
  4. 用户收到电子邮件或者在工作目录下看到运行结果。

相比于直接让用户登录到集群的每个节点进行运算,使用作业管理系统有很多好处,如更小的权限、更高的资源利用率、更便利的管理方式等。 因此,大型集群,如高性能计算集群,都提供了作业管理系统供用户使用。

作业管理系统的几个要素包括:

  • 硬件资源池:服务器节点、互联网络、全局文件系统;
  • 资源管理器:资源监视器、调度器和调度策略;
  • 用户端库和工具;

商用的作业管理系统有IBM LSF、Altair PBS等,使用较为广泛的开源作业管理系统有Torque。

Hadoop与作业管理系统

Hadoop也具有作业管理系统的核心功能,如接收作业、分配作业运行、监视硬件资源等。 这个入门教程将Hadoop与作业管理系统类比,从用户编写、提交作业的角度介绍Hadoop使用。 希望能为用户提供一份“可实践”的材料,由浅入深循序渐进,而不是一开始就扎入Hadoop冗长的Java API上。

阅读本教程前你应该对Hadoop有初步了解,并且有一个可用的伪分布式或者分布式Hdoop环境。 你可以参考Apache MapReduce Tutorial了解Hadoop,并搭建一个自己的Hadoop环境。

内容安排

  1. Hadoop文件系统操作
  2. Hadoop程序编写
  3. Hadoop作业管理
  4. Apache Pig数据流处理
  5. Apache Hive数据仓库
  6. Hadoop作业优化
  7. Hadoop练习;

主要参考资料

致谢

开源许可证

MIT LIcense

About

Yet Another Hadoop Tutorial

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published