0

我有一系列 map-reduce 作业来处理用户数据(使用 Cascading 框架实现),我想跟踪很多细粒度的统计信息(我可以有 100 到 1000 个用户和每个用户 20 个统计信息,所以,可能总共有 5000 到 10.000 个统计数据)。我想使用 map-reduce 计数器来构建这些统计信息,因为在代码中使用它们非常方便,但是 map-reduce 计数器的数量有限制(默认为 120),根据这篇文章:http ://developer.yahoo.com/blogs/hadoop/posts/2010/08/apache_hadoop_best_practices_a/ 如果我有超过 20/50 个自定义计数器,我不应该使用它们。

问题:有没有一种适当的方法可以在这个 map-reduce 上下文中使用类似计数器的模式来跟踪我的统计数据?我所说的类似计数器的意思是,可以在我的代码中随处访问计数器,并能够在需要的地方增加它们。

感谢提前注册

4

1 回答 1

0

如果您的统计数据只是计数并且它们仅在并行阶段增加,您可以为每个实例单独收集它们,然后加起来(减少)。实际上,这就是 MapReduce 的全部思想。

于 2012-09-12T10:44:35.513 回答