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;
    }
}
相关推荐
BD_Marathon2 分钟前
【Java】集合里面的数据结构
java·数据结构·python
代码不停5 分钟前
Java字符串 和 队列 + 宽搜 题目练习
java·开发语言
柒.梧.6 分钟前
Servlet原理和Tomcat原理的知识总结
java·servlet·tomcat
quan26318 分钟前
20251204,职级权限,开发实践分享
java·递归·java权限·职级架构
今天也想MK代码10 分钟前
JS 注入机制深度解析
java·前端·javascript
路边草随风11 分钟前
SparkSession read() 执行Impala任意sql返回Dataset
java·sql·spark
开心香辣派小星12 分钟前
23种设计模式-18观察者(Observer)模式
java·开发语言·设计模式
im_AMBER13 分钟前
Leetcode 68 搜索插入位置 | 寻找比目标字母大的最小字母
数据结构·笔记·学习·算法·leetcode
重生之我在番茄自学网安拯救世界13 分钟前
网络安全中级阶段学习笔记(四):XSS-Labs 前 10 关 通关命令and实战笔记
笔记·学习·网络安全·xss·xss-labs
Slow菜鸟13 分钟前
Java项目基础架构(一)| 工程架构选型指南
java·开发语言·架构