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) {

    }
}
相关推荐
进度猫2 分钟前
5个甘特图高阶用法,不止简单排工期
大数据·人工智能·产品经理·甘特图·项目管理软件
zww89491111 小时前
AI智能商城APP定制开发实战:从需求到上线完整指南
大数据·人工智能
招财小梗2 小时前
沈阳商贸公司AI企业服务优势几何?
大数据·人工智能·python
董可伦2 小时前
Spark 数据倾斜:原因、定位与处理方法
大数据·分布式·spark
ZKKLLY2 小时前
生成式引擎优化赛道崛起,优质GEO服务商该如何筛选评估
大数据·人工智能
IT古董2 小时前
FDE(Forward Deployed Engineer)详解:AI时代正在崛起的新型工程师
大数据·人工智能·数据挖掘
大大大大晴天4 小时前
大数据K8S基础:从 Pod 到 Service,看懂数据负载如何在云原生上运行
大数据·kubernetes
whcyhhh4 小时前
头歌实践教学平台:数据科学与大数据技术导论(七上)
大数据·数据库·python
东方护航数据恢复(深圳)4 小时前
国产信创数据库(达梦DM8/人大金仓)损坏恢复技术:从DMF文件解析到数据字典重建
大数据·数据库
starzy19905 小时前
SparkStreaming 之 foreachRDD 算子详解及代码实现
大数据·spark