Kafka自定义分区器编写教程

1.创建java类MyPartitioner并实现Partitioner接口

点击灯泡选择实现方法,导入需要实现的抽象方法

2.实现方法

3.自定义分区器的使用

在自定义生产者消息发送时,属性配置上加入自定义分区器

properties.put(ProducerConfig.PARTITIONER_CLASS_CONFIG,"com.ljr.kafka.producer.MyPartitioner");

4.运行

可以看到数据按照分区器的设定进入指定的分区

5.完整代码
java 复制代码
package com.ljr.kafka.producer;

import org.apache.kafka.clients.producer.Partitioner;
import org.apache.kafka.common.Cluster;

import java.util.Map;

public class MyPartitioner implements Partitioner {

    @Override
    public int partition(String topic, Object key, byte[] keyBytes, Object value, byte[] valueBytes, Cluster cluster) {
        
		//获取数据
        String data = value.toString();
        
		//定义分区
        int partition;
        
        if(data.contains("kafka")){
            partition = 0;
        }else{
            partition = 1;
        }
        
        return partition;
    }

    @Override
    public void close() {

    }

    @Override
    public void configure(Map<String, ?> configs) {

    }
}
相关推荐
涤生大数据16 分钟前
放弃Canal后,我们用Flink CDC实现了99.99%的数据一致性
大数据·数据仓库·flink·大数据开发·flink cdc·数据开发·实时数据
云和数据.ChenGuang22 分钟前
openEuler安装elasticSearch
大数据·elasticsearch·搜索引擎·全文检索·jenkins
Herlie24 分钟前
AI 创业这三年:我的三次认知迭代与自我修正
大数据·人工智能
PNP Robotics1 小时前
聚焦具身智能,PNP机器人展出力反馈遥操作,VR动作捕捉等方案,获得中国科研贡献奖
大数据·人工智能·python·学习·机器人
木易 士心1 小时前
数字身份的通行证:深入解析单点登录(SSO)的架构与艺术
java·大数据·架构
2401_878820471 小时前
ES知识点二
大数据·elasticsearch·搜索引擎
Jackyzhe1 小时前
Flink源码阅读:Checkpoint机制(下)
大数据·flink
科创致远1 小时前
esop系统可量化 ROI 投资回报率客户案例故事-案例1:宁波某精密制造企业
大数据·人工智能·制造·精益工程
旺仔Sec10 小时前
2025年安徽省职业院校技能大赛(中职组)大数据应用与服务赛项样题
大数据
ctrigger11 小时前
中级统计师《统计基础理论及相关》考试大纲
大数据