我正在编写一个计算地理数据图块的Hadoop应用程序(如Google地图)。当我执行Map任务时,我想检查dfs上是否有可用的数据。如果不是,则应该稍后执行地图。我假设我可以将Map任务设置为失败,以便hadoop稍后将自动重新执行它。但是,我似乎无法找到如何做到这一点。任何人都可以帮助我吗?
答案 0 :(得分:1)
只有在HDFS中处理数据时才会启动地图任务。无需在映射器代码中明确检查数据的可用性。
作业中的地图任务数等于输入拆分数或FileInputFormat情况下要处理的块数。
建议您仔细阅读Hadoop - The Definitive Guide中相应的MapReduce章节。