hadoop的分区学习

自定义分区实现:

抽象类

要自定义分区规则,就必须继承并且重写。

设置分区数量

driver类:

java 复制代码
        job.setNumReduceTasks(3);
        job.setPartitionerClass(FlowPartitioner.class);

分区方法类,直接用编号代替就好了

java 复制代码
public class FlowPartitioner extends Partitioner<Text, FlowBean> {
    @Override
    public int getPartition(Text text, FlowBean flowBean, int numPartitions) {
        int partitions;
        String phoneNum = text.toString();
        if(phoneNum.startsWith("136")){
            partitions = 0;
        } else if (phoneNum.startsWith("137")) {
            partitions = 1;
        }else if (phoneNum.startsWith("138")) {
            partitions = 2;
        }else if (phoneNum.startsWith("139")) {
            partitions = 3;
        }else {
            partitions = 4;
        }
        return partitions;
    }
}
相关推荐
橙熟几秒前
一次 Druid 慢查询超时问题的源码排查
java
Coder_Boy_2 分钟前
Java调用Python实现FAISS向量操作(两种方式完整实战)
java·python·faiss
transitory_truth11 分钟前
Apollo使用记录
java·中间件
程序猿阿越20 分钟前
Kafka源码(八)数据复制
java·后端·源码阅读
byzh_rc20 分钟前
[机器学习-从入门到入土] 计算学习理论
人工智能·学习·机器学习
毕设源码-钟学长28 分钟前
【开题答辩全过程】以 基于java旅游网站的设计与实现为例,包含答辩的问题和答案
java·开发语言·旅游
三品吉他手会点灯42 分钟前
STM32F103 学习笔记-21-串口通信(第2节)-STM32串口功能框图讲解
笔记·stm32·单片机·嵌入式硬件·学习
zs宝来了1 小时前
ArrayList源码阅读
java
brave_zhao1 小时前
关于javafx下打开postman无法正常关闭postman的问题
java·测试工具·postman
攻心的子乐1 小时前
Spring IOC 源码
java·后端·spring