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;
    }
}
相关推荐
rannn_11135 分钟前
【Redis|原理篇2】Redis网络模型、通信协议、内存回收
java·网络·redis·后端·缓存
徐新帅36 分钟前
4181:【GESP2603七级】拆分
c++·学习·算法·信奥赛
敢敢のwings39 分钟前
NVIDIA Thor学习之 |在Jetson AGX Thor上部署OpenClaw并基于Ollama的边缘AI协作实战(二)
人工智能·学习
遇见你的雩风1 小时前
网络原理(一)
java·网络
952361 小时前
Spring IoC&DI
java·数据库·spring
三分钟管理实战案例1 小时前
华恒智信助力传统制造与科技服务行业完成激活组织效能,打破“躺平”困局
学习
十六年开源服务商1 小时前
游戏与设计驱动WordPress建站2026
java·前端·游戏
前进吧-程序员1 小时前
C++ 内存到底分配在哪?
java·jvm·c++
NWU_白杨1 小时前
VoiceMockInterview项目MVP开发
java·ai
RDCJM1 小时前
Springboot的jak安装与配置教程
java·spring boot·后端