1、job提交后,调用JobSubmitter的submitJobInternal方法提交job相关文件到hdfs
2、nodemanager启动时会初始化本地目录,并清除本地yarn.nodemanager.local-dirs下的filecache/usercache/nmprivate目录下的资源文件
3、nodemanager的container资源初始化:ResourceLocalizationService服务中LocalizerRunner分别会去下载job相关文件
4、container运行完成时会触发JobHistoryEvent事件,JobHistoryEventHandler接收事件就向hdfs写对应job的log
5、Historyserver服务会定时(默认间隔1天)删除mapreduce.jobhistory.done-dir目录中过期(默认七天过期)的.jhist/_conf.xml文件
6、Historyserver服务会定时(默认间隔3分钟)从hdfs的mapreduce.jobhistory.intermediate-done-di目录将.jhist/_conf.xml移动到mapreduce.jobhistory.done-dir目录,同时删除/.summary文件
应用优化点:Historyserver上面会有几个定时任务用于log及job相关文件的搬迁,这里面可以方便定制自己的定时任务,比如成功job日志和失败job日志删除时间不一样,以及增加mapreduce jar包缓存功能后,可以定时删除hdfs上的文件。
对应流程如下图所示:
相关推荐
- 位于`/var/log/hadoop/hadoop-namenode-namenode.out` (具体路径可能因版本而异) - 记录了HDFS元数据操作的日志信息 - **DataNode日志**: - 位于`/var/log/hadoop/hadoop-datanode-datanode.out` (具体路径可能...
遇到问题时,日志文件是排查的关键,如NameNode的`hadoop-hdfs-namenode-*.log`和DataNode的`hadoop-hdfs-datanode-*.log`。同时,`jps`命令可用于检查各进程是否正常运行。 通过以上知识点的掌握,可以有效地进行...
例如,`hadoop.logfile.size`定义了日志文件的最大大小,而`io.file.buffer.size`设置了读写操作的缓冲区大小,影响I/O性能。`io.compression.codecs`列出了支持的压缩算法,如DefaultCodec、GzipCodec等。 了解和...
Hadoop 测试题 Hadoop 测试题主要涵盖了 Hadoop ...33. DataNode 首次加入 cluster 的时候,如果 log 中报告不兼容文件版本,那需要 NameNode 执行“Hadoop namenode -format”操作格式化磁盘。因此,正确答案是 √。
Spark拥有Hadoop MapReduce所具有的优点,但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS。Storm是一个分布式实时计算系统,Storm是任务并行连续计算引擎。Hive是基于Hadoop的一个...
6. **第三方工具库**:Kettle可能会依赖一些第三方库,如`log4j.jar`用于日志记录,`pentaho-kettle-plugins-ktr.jar`,`pentaho-kettle-plugins-formats-meta.jar`等,这些库提供了特定的功能,如读写特定格式的...
Spark可以与Hadoop生态系统集成,但本压缩包不包含Hadoop依赖,这意味着你需要自己提供Hadoop配置,包括HDFS的配置信息,以便Spark能读写Hadoop的数据。 **4. Spark的运行原理** Spark基于弹性分布式数据集...
DataX支持多种数据源,如RDBMS(关系型数据库管理系统)、NoSQL、Hadoop等,提供了一种统一的接口来处理各种数据源的读写操作。 在DataX作业中,配置文件起着至关重要的作用。在这个"job"文件夹下,包含的json文件...
- **应用场景**: 主要应用于海量数据实时读写、查询、处理等领域,如社交网络、互联网广告、物联网等。 - **特点**: - 支持PB级别的数据量。 - 高可扩展性,能够水平扩展到数千台服务器。 - 强一致性读取。 - ...
Hudi(Hadoop Unified Data Index)是一种开源框架,旨在解决基于Apache Hadoop的数据湖上增量数据处理、更新及查询的问题。它通过引入一种新的数据层——Hoodie表,来支持对大数据集进行高效读写操作,同时保持了...
- `mapreduce.job.maps.per.node`和`mapreduce.job.reduces.per.node`控制每个节点上并行运行的任务数。 #### 2.2 YARN内存和CPU优化 - 优化内存分配,确保每个任务有足够资源运行,同时避免过度分配导致资源浪费...
- **工作流程**:客户端提交 Job 请求给 ResourceManager;ResourceManager 分配 Container 并通知 NodeManager 启动 ApplicationMaster;ApplicationMaster 向 ResourceManager 申请资源,并与 NodeManager 协同...