我在Mesos 0.14上运行Hadoop 1.2.1。我的目标是记录输入数据大小,运行时间,CPU使用率,内存使用情况等,以便以后进行优化。所有这些但数据大小都是使用Sigar获得的。
我有什么方法可以获得正在运行的任何作业的输入数据大小?
例如,当我正在运行hadoop示例terasort时,我需要在作业实际运行之前获取teragen生成的数据大小。如果我正在运行Wordcount example,我需要获取wordcount输入文件大小。我需要自动获取数据大小,因为我无法知道稍后将在此框架内运行什么作业。</ p>
我正在使用Java编写一些mesos库代码。最好,我想在MesosExecutor类中获取数据大小。出于某种原因,升级Hadoop / Mesos不是一个选择。
任何建议或相关API将不胜感激。谢谢。
答案 0 :(得分:0)
hadoop fs -dus
是否满足您的要求?在将作业提交给hadoop之前,计算输入文件大小并将其作为参数传递给执行者。