5.5 小结
作业提交与初始化过程是指从用户输入提交作业命令到作业初始化的整个过程。该过程涉及Hadoop三个非常重要的组件,即JobClient、JobTracker和TaskScheduler。
作业提交主要是为后续作业执行准备环境,涉及创建目录、上传文件等操作。
作业初始化的主要工作是根据输入数据量和作业配置参数将作业分解成若干个Map Task以及Reduce Task,并添加到相关数据结构中,以等待后续被调度执行。
Hadoop DistributedCache是Hadoop为方便用户进行应用程序开发而设计的数据分发工具。它能够将只读的大文件自动分发到各个节点上进行本地缓存,以便Task运行时加载使用。它将待分发的文件根据可见级别分为public级别和private级别两种。其中,public级别文件允许同一个TaskTracker上所有用户共享,而private级别文件只允许某个用户的所有作业共享。
作业在JobTracker端经初始化后,会被存放到相关数据结构中等待被调度执行。在下一章中,我们将重点分析JobTracker和任务调度的相关原理及实现。