我正在运行hadoopmapreduce作业,从hdfs或amazons3获取输入文件。我想知道是否有可能知道一个Map器任务需要多长时间才能将文件从hdfs或s3读取到Map器。我只想知道读取数据的时间,不包括那些数据的Map器处理时间。我想要的结果是某个mapper任务的mb/秒,这表明mapper可以以多快的速度读取hdfs或s3。有点像i/o性能。谢谢。
o2g1uqev1#
也许你可以用一个单位Map器把减速机的数目设为零。那么在你的模拟中唯一要做的就是i/o,没有排序和洗牌。或者,如果您特别想专注于阅读,那么您可以用一个不写任何输出的函数来替换单元Map器。下一步我会 mapred.jvm.reuse=-1 ,以消除jvm开销。它并不完美,但它可能是最简单的方法,有一个快速的想法。如果你想精确地做到这一点,我会考虑实现你自己的hadoop计数器,但目前我没有这方面的经验。
mapred.jvm.reuse=-1
1条答案
按热度按时间o2g1uqev1#
也许你可以用一个单位Map器把减速机的数目设为零。那么在你的模拟中唯一要做的就是i/o,没有排序和洗牌。或者,如果您特别想专注于阅读,那么您可以用一个不写任何输出的函数来替换单元Map器。下一步我会
mapred.jvm.reuse=-1
,以消除jvm开销。它并不完美,但它可能是最简单的方法,有一个快速的想法。如果你想精确地做到这一点,我会考虑实现你自己的hadoop计数器,但目前我没有这方面的经验。