在以 map reduce 模式启动 Pig 之前,您始终必须启动历史服务器,否则在尝试执行 Pig Latin 语句时会生成以下日志:
2018-10-18 15:59:13,709 [main] INFO
org.apache.hadoop.mapred.ClientServiceDelegate - Application state
is completed. FinalApplicationStatus=SUCCEEDED. **Redirecting to job
history server**
2018-10-18 15:59:14,713 [main] INFO org.apache.hadoop.ipc.Client -
Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 0
time(s); retry policy is
RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000
MILLISECONDS)
如上日志所示,Pig 执行引擎正在尝试连接历史服务器请解释作业历史服务器在 Hadoop 中的作用以及为什么需要与 Pig 中的历史服务器建立连接以进行 Map Reduce工作
最佳答案
JobTracker 或 ResourceManager 将所有作业信息保存在内存中。对于完成的作业,它会丢弃它们以避免内存不足。这些过去工作的跟踪委托(delegate)给 JobHistory 服务器。
Pig 客户端在其作业完成时提取作业计数器统计信息。 Stats 仍然可以与 JobTracker/ResourceManager 一起使用,或者 pig 可能需要询问 JobHistory 服务器。当 JobHistory 服务器关闭时,它会打印出这些日志消息,但最终客户端应该仍然会成功,但会丢失统计信息。
关于hadoop - Hadoop 中的作业历史服务器是什么?为什么在 Map Reduce 模式下启动 Pig 之前必须启动历史服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52872301/