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;
    }
}
相关推荐
计算机毕业设计杰瑞4 分钟前
【计算机毕设精品】基于SpringBoot的一体化教务与学业质量管理系统的设计与实现,附源码_增删改查_java项目_可完美运行部署_网站项目
java·spring boot·课程设计
辣知8 分钟前
辣知·化智77 三千年接力写就的一本书
学习
一木 之林14 分钟前
Dify学习笔记 01 · 平台入门与实战:部署、五类应用、RAG与MCP(第1-16集)
人工智能·笔记·学习·计算机视觉
colinu19 分钟前
C++ 异步任务与线程生命周期:`std::async`、`future`、`thread`、`jthread` 与协作式退出
java·jvm·c++
蜗牛互联网40 分钟前
Python + JSON Schema 实现工单结构化输出与本地复核
java·人工智能·后端
逐光者9331 小时前
STM32——SPI 屏 · Flash · 高速
java·前端·stm32
摸鱼 特供版1 小时前
一款边录边标注的轻量截图录屏工具
windows·学习·电脑·音视频·软件需求
wuminyu1 小时前
ForkJoinPool窃取线程在扫描其他WorkQueue时的随机采样算法与Phase线程挂起唤醒机制解析
java·linux·c语言·jvm·c++
陈年老古董1 小时前
Hive 函数学习笔记(下):窗口函数与经典案例
hive·笔记·学习
爱吃火鸡面呀1 小时前
DataX 实战:使用 HDFS Reader 读取 Hive ORC 表并输出到 Stream
hive·hadoop·hdfs