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;
    }
}
相关推荐
hxung4 分钟前
MySQL面试学习
学习·mysql·面试
论迹7 分钟前
【JavaEE】-- 多线程(初阶)2
java·开发语言·java-ee
桃子是唯一的水果16 分钟前
java 单例模式(Lazy Initialization)实现遍历文件夹下所有excel文件且返回其运行时间
java·单例模式·maven
+72017 分钟前
如何在java中用httpclient实现rpc post 请求
java·开发语言·rpc
ybq1951334543119 分钟前
javaEE-SpringBoot日志
java·spring boot·后端
火烧屁屁啦23 分钟前
【JavaEE进阶】图书管理系统 - 贰
java·spring
xzzd_jokelin23 分钟前
Spring AI 接入 DeepSeek:开启智能应用的新篇章
java·人工智能·spring·ai·大模型·rag·deepseek
weixin_5025398525 分钟前
rust学习笔记5-所有权机制
笔记·学习·rust
PyAIGCMaster27 分钟前
50周学习go语言:第四周 函数与错误处理深度解析
开发语言·学习·golang
刘什么洋啊Zz34 分钟前
剖析IO原理和零拷贝机制
java·运维·网络