我想知道我是否可以比较Hadoop中的两个连续作业。如果不是,我会很感激,如果有人能告诉我如何继续这样做。确切地说,我想比较两个职位究竟是做什么的?这样做的原因是创建一个统计信息,说明在Hadoop上执行的作业数量在行为方面是相似的。例如,在同一输入上执行了多少次相同的排序功能。
例如,如果第一个工作做了类似SortList(A)的事情,而其他一些工作做了SortList(A)+ Group(结果(SortList(A))。现在,我想知道在Hadoop中是否有某些映射被存储在某个地方比如JobID X-> SortList(A)。
到目前为止,我认为这个问题是找到Hadoop中的入口点并尝试了解如何创建作业以及使用jobID以及以何种形式(以代码形式或某些描述)保存哪些信息,但是我无法成功解决这个问题。
答案 0 :(得分:0)
没有。 Hadoop工作只是程序。它们可能有任何副作用。他们可以编写普通文件,hdfs文件或数据库。 hadoop中没有任何内容记录他们的所有活动。所有hadoop都管理着时间表和数据流。
答案 1 :(得分:0)
Hadoop的计数器可能是一个很好的起点。您可以定义自己的计数器名称(例如每个计数器名称是您正在处理的数据集),并在每次对其执行排序时递增该计数器。但是,查找您正在处理的数据集可能是更困难的任务。
这是我发现的教程: http://philippeadjiman.com/blog/2010/01/07/hadoop-tutorial-series-issue-3-counters-in-action/