zoukankan      html  css  js  c++  java
  • Hadoop学习-setPartitionerClass和setGroupingComparatorClass

    setPartitionerClass是用来设置按照什么规则对key来进行分区,即决定map输出时,什么样的key输出到同一个reduce节点上;但是这个设置不能保证到同一个reduce节点的key会在同一个group里(即不一定在reduce的同一个iter迭代里)。用户可以自定义分区类,通过继承Partitioner类,实现getPartition方法,该方法参数分别是key,value,reduce task数量(可由setNumReduceTasks指定)

    setGroupingComparatorClass是用来设置按照什么规则对key来进行分组,即保证符合该规则的key会在同一个group里(即reduce的同一个iter迭代里)。用户可以自定义分组类,通过继承WritableComparator类,实现compare方法,该方法参数分别是key1,key2,通过自定义比较算法来实现分组,即一个group中的所有元素的key都是compare==0的。

  • 相关阅读:
    初始面向对象
    python之路——迭代器和生成器
    函数进阶
    python之路——初识函数
    实现css两端对齐
    http
    background-size
    call和apply的区别
    js兼容性
    面试题
  • 原文地址:https://www.cnblogs.com/java-meng/p/15189288.html
Copyright © 2011-2022 走看看