Kafka 使用命令

1.创建topic

bin/kafka-topics.sh --create --zookeeperlocalhost:2181 --replication-factor 1 --partitions 1 --topic test

2.查看topic

(1)bin/kafka-topics.sh --list --zookeeperlocalhost:2181

(2)./kafka-topics.sh --describe --zookeeper localhost:2181 --topic test (查看topic为test 的信息分区,复制等)

.

leader:负责处理消息的读和写,leader是从所有节点中随机选择的.
replicas:列出了所有的副本节点,不管节点是否在服务中.
isr:是正在服务中的节点.


3.向topic 发送数据

 bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test 


4.查看consumer的信息

bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning


5.后台启动Kafka

 nohup bin/kafka-server-start.sh config/server.properties &

6.查看消费组

./kafka-consumer-groups.sh  --list --zookeeper localhost:2181

7.查看topic的最小和最大offset

./kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 -topic topic --time -2(最小)

./kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 -topic topic --time -1(最大)



Kafka 提供了一个强大的消息队列系统,但它本身并不直接支持通过命令脚本过滤字节类型的数据。通常,你在生产者或消费者端处理数据时,会先将字节数据转换成更易操作的对象,比如字符串、JSON或者其他结构化的形式。 如果你想过滤字节数据,这通常发生在应用层,例如在消费Kafka消息之后,使用编程语言如Java、Python等对接收到的字节流进行解析。你可以使用如下的步骤: 1. **序列化与反序列化**:首先,你需要将接收到的字节数据解码成某种特定的格式,比如`KafkaAvroDeserializer`用于Avro序列化,`KafkaJsonDeserializer`用于JSON。 ```java // Java示例 Deserializer<YourDataType> deserializer = new YourDeserializer(); byte[] bytes = ...; // 接收的字节数组 YourDataType data = deserializer.deserialize(topic, bytes); ``` 2. **数据过滤**:然后,根据业务需求,在`YourDataType`上编写过滤逻辑,判断是否满足条件。 ```java if (data符合条件) { System.out.println(data); // 打印符合条件的数据 } ``` 3. **重新序列化**:如果过滤成功,可以再次将数据序列化为字节,以便进一步处理或输出。 ```java Serializer<YourDataType> serializer = new YourSerializer(); byte[] filteredBytes = serializer.serialize("outputTopic", data); ``` 请注意,以上过程依赖于你如何定义数据模型以及使用的序列化框架。如果你确实需要在命令行环境中过滤,可能需要结合Kafka的插件如Kafka Connect或是外部脚本语言(如Shell、Python等),但这超出了Kafka的基本功能范围。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值