我想问一下,拆分或在我们的映射器类中创建键值对,而不是创建其独立的可写类,是不好的编程习惯吗?

我有1万个键,而且它们的值都是字符串格式,
我在mapper中执行拆分,好吗?还是不好?
如果不好,那为什么呢?如果不是,那么在什么情况下会不好?

最佳答案

这与良好的编程习惯无关。实际上,该框架的设计是如此,您必须遵循上述规则和准则。如果键和值类不可写,则程序将无法编译,并且将返回错误。

The key and value classes have to be serializable by the framework and hence need to
implement the Writable interface. Additionally, the key classes have to implement the
WritableComparable interface to facilitate sorting by the framework.

因此,由于这个原因,您不能将String用作键类。相反,您可以使用文本。
您也可以访问本教程以查看更多教程(http://hadoop.apache.org/docs/stable1/mapred_tutorial.html)

关于hadoop - 在mapper中创建和映射键值是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21968070/

10-12 23:03