kafka 基础概念、命令行操作(查看所有topic、创建topic、删除topic、查看某个Topic的详情、修改分区数、发送消息、消费消息、 查看消费者组 、更新消费者的偏移位置)
文章目录
- 前言
- 1. 基础概念
- Broker
- Producer
- Consumer
- Consumer Group
- Topic
- Partition
- Replica
- 2. 命令行操作
- 2.1 查看所有topic
- 2.2 创建topic
- 2.3 删除topic
- 2.4 查看某个Topic的详情
- 2.5 修改分区数
- 2.6 发送消息
- 2.7 消费消息
- 2.8 查看消费者组
- 2.9 更新消费者的偏移位置
前言
kafka官网
1. 基础概念
Broker
一台kafka服务器就是一个broker,可容纳多个topic。一个集群由多个broker组成;
Producer
生产者,即向kafka的broker-list发送消息的客户端;
Consumer
消费者,即向kafka的broker-list订阅消息的客户端;
Consumer Group
消费者组是逻辑上的一个订阅者
,由多个consumer组成。消费者组内每个消费者负责消费不同分区的数据,一个分区只能由一个组内消费者消费
;所有的消费者都属于某个消费者组,消费者组之间互不影响;
Topic
可理解为一个队列,生产者和消费者均面向一个topic;
Partition
一个topic可以分为多个partition,每个partition是一个有序的队列
;这使得一个topic可分布到多个broker(即服务器)上,
Replica
副本,kafka提供了副本机制,一个topic的每个分区都有若干个副本,即一个leader和若干个follower,从而保证集群单点故障时节点上的partition数据不丢失
leader:每个分区多个副本的主
,生产者发送数据的对象,以及消费者消费数据的对象都是leader
follower:从
,实时从leader中同步数据,保持和leader数据的同步
。leader发生故障时,某个follower会成为新的leader
2. 命令行操作
2.1 查看所有topic
./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --list
2.2 创建topic
./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.110:29092 --create --replication-factor 3 --partitions 3 --topic
charges
--topic
定义topic名
--replication-factor
定义副本数
--partitions
定义分区数
2.3 删除topic
./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --delete --topic charges
2.4 查看某个Topic的详情
./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --describe --topic charges
2.5 修改分区数
./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --alter --partitions 6 --topic charges
2.6 发送消息
./kafka-console-producer.sh --broker-list 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --topic charges
2.7 消费消息
./kafka-console-consumer.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --from-beginning --topic charges --group htsc
--from-beginning
:若消费者没有offset,则从 the earliest message present in the log
而非默认的 the latest message
--group
: 指定消费者所属的消费者组
注:默认情况下,若zookeeper或__consumer_offsets
中有offset记录,则Kafka消费者从最后一次提交的偏移量位置(offset)开始消费消息
。若之前没有提交过偏移量,则消费消息开始位置取决于Topic的配置属性auto.offset.reset
的设置,默认为最新(latest 仅消费新消息
)
2.8 查看消费者组
./kafka-consumer-groups.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --list
./kafka-consumer-groups.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --describe --group htsc
注: 通过查看消费者组,可查看到topic所有分区当前的偏移量以及LOG-END-OFFSET(最后的偏移量)
,即消费消息的现状
2.9 更新消费者的偏移位置
将topic charges对应的消费组htsc 的分区编号0的偏移量设置为最早
./kafka-consumer-groups.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --topic charges:0 --group htsc --reset-offsets --to-earliest --execute
--reset-offsets
Reset offsets of consumer group
--to-earliest
Reset offsets to earliest offset
--to-latest
Reset offsets to latest offset.
--to-offset <Long: offset>
Reset offsets to a specific offset
kafka 基础概念、命令行操作(查看所有topic、创建topic、删除topic、查看某个Topic的详情、修改分区数、发送消息、消费消息、 查看消费者组 、更新消费者的偏移位置)相关推荐
- kafka _命令行操作
kafka _命令行操作 #启动zk zkServer.start #启动kafka kafka-server-start.sh -daemon /opt/kafka/config/server.pr ...
- Kafka 生产者、消费者命令行操作
Kafka 生产者.消费者命令行操作 1.查看操作生产者命令参数 bin/kafka-console-producer.sh 参数 --bootstrap-server <String: ser ...
- 【kafka】三、kafka命令行操作
kafka命令行操作 kafka的相关操作命令脚本文件在bin目录下 查看所有的topic kafka-topics.sh --zookeeper hll1:2181 --list 或 kafka-t ...
- 简单的kafka命令行操作
目录 一.主题topic命令行操作 1.查看操作主题的命令参数 2.连接kafka地址,创建名为kaf的主题,指定分区和副本数量 3.查看所有主题的名称 4.查看主题的详细信息 5.修改主题(修改分区 ...
- 数据仓库 — 07_Kafka的安装与部署(Kafka命令行操作指令、Kafka集群群起脚本、压力测试、节点数量计算、hadoop_zookeeper_flume_kafka群起脚本、默认端口总结)
文章目录 1 Kafka的安装与配置 2 Kafka命令行操作 2.1 查看当前服务器中的所有topic 2.2 创建topic 2.3 删除topic 2.4 发送消息 2.5 消费消息 2.6 查 ...
- linux基础命令行操作【1】
目录 1.基本命令 2.文件相关知识 3.文本相关操作 4.文件解压.压缩.打包命令 1.基本命令 Ctrl+A/t+Fn+F6:管理Linux(Fn+数字) Linux:输入密码是不显示 Alt+F ...
- kafka 命令行操作大全
kafka 命令行操作大全 一.集群相关常用命令 二.topic相关常用命令 2.1 脚本&参数简介 2.2 举例 三.生产者命令行常用操作 3.1 脚本&参数简介 3.2 举例发送消 ...
- 命令行操作MySQL - 《表索引》汇总
这是命令行操作MySQL数据库系列博客的第十二篇,今天这篇博客记录<表索引>如何进行操作.(普通索引.唯一索引.全文索引.多列索引.隐藏索引.删除索引和修改索引) 目录 索引概述 创建和查 ...
- 大数据6_03_Kafka命令行操作
3 Kafka命令行操作 总结: # 和topic有关的命令:都使用 kafka-topics-sh --zookeeper hadoop102:2181 + 操作 # 和生产消息有关的:使用brok ...
最新文章
- Cascade RPN,结构的艺术带来极致提升 | NeurIPS 2019
- Android init.rc文件格式解析
- 一份平民化的应用性能优化检查列表(完整篇)--转
- 服务器之select
- java中间件是什么意思_数据库中间件漫谈
- 002 ceph的deploy部署
- xcode5切换IOS7,IOS6,IOS5模拟器
- 能自动更新的万能周报模板,有手就会用!
- 跨境电商erp系统一套多少钱,电商erp系统多少钱一年
- 计算机网络第七版 第四章课后答案
- 移动端日历插件_“滴答清单”移动端产品分析报告
- java 泛型 参数传递子类_超类的Java泛型,但并非所有子类都想定义类型参数
- 单峰排列 Codeforces C. Cyclic Permutations
- ie8 ajax 缓存问题,IE8/IE9下Ajax缓存问题
- Android WebService(基于SOAP协议)个人记录总结
- Linux 命令小记
- 爱无尽头,爱无尽头在线观看,免费在线看
- 微机原理复试面试(一)
- 日均调用量超13亿次,阿里达摩院研发全球首个实时翻译直播-1
- Python爬虫从入门到精通─第2课 Requests库讲解
热门文章
- 连接手表_小米手表连接苹果手机即将支持读取天气数据
- 辐射3游戏登录是提示计算机丢失xlive.dll文件,玩辐射3提示丢失xlive.dll怎么办 辐射3丢失xlive.dll的解决方法...
- Eclipse 安装Server-Apache Tomcat
- 高通平台手机开发之充电
- 给自己的软件添加参数配置文件*.ini
- go语言gob序列化指针无法寻址报错
- 百度知道问答推广秘笈.doc
- 数据透视表里填充重复项_数据透视表填充颜色消失
- 黑猫带你学eMMC协议第8篇:eMMC供电情况详解(power)
- 云渲染是什么?云渲染对于物理渲染有什么好处?