zoukankan      html  css  js  c++  java
  • MR 分组

    一、过程

    1、进行排序(自定义Hadoop序列化)

    2、进行分组

    二、语法

    1、自定义分组,继承WritableComparator

    2、创建无参构造参数

    目的:将比较对象的类传给父类

    super(GroupBean.class, true);

    注意:

    a、GroupBean.class是Hadoop自定义序列化和排序,实现 WritableComparable

    b、第二个值,必须为 true

    3、重写compare()方法,用于写业务逻辑

    a、形参

    public int compare(WritableComparable a, WritableComparable b) {}

    b、compare()

    主要逻辑 a和b做比较对象 a中的属性和对象 b的属性 做比较,因此a和b需要强制类型转换(排序类)

    若 a 大于 b ,则返回1, 若 a < b,则返回-1,若a=b,则返回0

    c、在Driver中设置job的驱动类

    job.setGroupingComparatorClass(GroupCompare.class);

    GroupCompare.class 为分组类

  • 相关阅读:
    bzoj4289
    bzoj3033
    bzoj3144
    896C
    bzoj4430
    bzoj4455
    bzoj5117
    BZOJ 1564: [NOI2009]二叉查找树
    BZOJ1261: [SCOI2006]zh_tree
    BZOJ1090: [SCOI2003]字符串折叠
  • 原文地址:https://www.cnblogs.com/wt7018/p/13629712.html
Copyright © 2011-2022 走看看