【问题标题】:creating and mapping key values inside mapper is bad practice?在映射器中创建和映射键值是不好的做法?
【发布时间】:2014-02-24 02:43:02
【问题描述】:

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

我有 10K 个键,它们的值是字符串格式的, 我正在映射器内部进行拆分,这样好吗?还是不好? 如果不好那为什么?如果不是,那在什么情况下会不好?

【问题讨论】:

    标签: hadoop mapreduce cassandra


    【解决方案1】:

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

    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 作为键类。相反,您可以使用 Text 来解决这个问题。 您也可以访问本教程以查看更多教程(http://hadoop.apache.org/docs/stable1/mapred_tutorial.html)

    【讨论】:

    • okkey,我还有一个问题,明天在 stackoverflow 上问,我会把链接发给你,然后请告诉我应该使用什么 synario.. 好吧..
    • stackoverflow.com/questions/21967190/… 根据这个问题,最好的实现应该是什么,我的代码在单个节点上工作......
    猜你喜欢
    • 1970-01-01
    • 2020-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-23
    • 1970-01-01
    相关资源
    最近更新 更多