大数据-62 Kafka 高级特性 主题 kafka-topics相关操作参数 KafkaAdminClient 偏移量管理

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 大数据-62 Kafka 高级特性 主题 kafka-topics相关操作参数 KafkaAdminClient 偏移量管理

点一下关注吧!!!非常感谢!!持续更新!!!

目前已经更新到了:

Hadoop(已更完)

HDFS(已更完)

MapReduce(已更完)

Hive(已更完)

Flume(已更完)

Sqoop(已更完)

Zookeeper(已更完)

HBase(已更完)

Redis (已更完)

Kafka(正在更新…)

章节内容

上节我们完成了如下的内容,基本都是特性概念相关的:


Kafka 主题与分区

Kafka 自定义反序列化

Kafka 拦截器

Kafka 位移提交

Kafka 位移管理

Kafka 重平衡

0a9bd75aba4d70d89cf8b3317156e292_bb2385e5a8514873b196b0bb7efa6f4b.png

kafka-topics

相关参数

e102263404746513c2dc2aada2ae7149_f49cc5482e7c45d2aa6b8a971f32d69b.png

创建主题

kafka-topics.sh --zookeeper h121.wzk.icu:2181 --create --topic topic_test_1 --partitions 1 --replication-factor 1

查看主题

kafka-topics.sh --zookeeper h121.wzk.icu:2181 --list
kafak-topics.sh --zookeeper h121.wzk.icu:2181 --describe --topic topic_test_1
• 1

修改主题

kafka-topics.sh --zookeeper h121.wzk.icu:2181 --create --topic topic_test_1 --partitions 2 --

删除主题

kafka-topics.sh --zookeeper h121.wzk.icu:2181 --delete --topic topic_test_1

增加分区

通过命令行工具操作,只能够增加,不能够减少。

kafka-topics.sh --zookeeper h121.wzk.icu:2181 --create --topic topic_test_1 --partitions 1 --replication-factor 1
kafka-topics.sh --zookeeper h121.wzk.icu:2181 --alter --topic topic_test_2 --partions 2

分区副本

副本分配的三个目标:


均衡的将副本分散到各个Broker上

对于某个Broker上分配的分区,它的其他副本在其他Broker上

如果所有的Broker都有机架信息,尽量将分区的各个副本分配到不同机架上的Broker

在不考虑机架信息的情况下:


第一个副本分区通过轮询的方式挑选一个Broker,进行分配。该轮询从Broker列表的随机位置进行轮询。

其余副本通过增加偏移量进行分配

必要参数

KafkaAdminClient

除了使用Kafka的Bin目录下的脚本来管理Kafka,还可以使用管理Kafka的API将某些管理查看的功能集成到系统中。

在Kafka 0.11 版本之前,可以通过kafka-core包(Kafka服务端,Scala)中的AdminClient和AdminUtils来实现部分集群管理操作。

在Kafka 0.11之后,多了一个AdminClient,在kakfa-client包下,一个抽象类:KafkaAdminClient。


基本介绍

基本功能包含如下:


创建主题:createTopics

删除主题:deleteTopics

列出所有主题:listTopics

查询主题:describeTopics

查询集群:describeCluster

查询配置:describeConfigs

修改配置:alterConfigs

修改副本的日志目录:alterReplicaLogDirs

查询节点的日志目录信息:describeLogDirs

查询副本的日志目录信息:describedReplicaLogDirs

增加分区:createPartitions

操作步骤

客户端根据方法的调用,创建出相应的协议请求,比如创建:Topic的createTopics方法,其内部就是发送CreateTopicRequest请求。

客户端发送请求到KafkaBroker

KafkaBroker处理相应的请求并回执,CreateTopicResponse,客户端接受并解析处理。

如果要自己实现一个功能,需要:


自定义XXOptions

自定义XXResult返回值

自定义Call,挑选合适的XXRequest和XXResponse

偏移量管理

在Kafka 1.0.2版本,在 __consumer_offsets 主题中保存各个消费组的偏移量。

早期是子啊ZooKeeper中管理消费偏移量。


脚本参数

脚本名称为:bin/kafka-consumer-groups.sh

9353affdb38d2da54b575bde0fc471cc_776f6c82d4274f29b86ad3637edf9784.png 查看GroupID消费

查看当前有哪些GroupID正在进行消费,这里没有指定Topic,查看的是所有Topic消费的GroupId的列表。


kafka-consumer-groups.sh --bootstrap-server h121.wzk.icu:9092 --list

查看指定ID消费

kafka-consumer-groups.sh --bootstrap-server h121.wzk.icu:9092 --describe --group group

设置偏移量为最早

kafka-consumer-groups.sh --bootstrap-server h121.wzk.icu:9092 --reset-offsets --group group --to

设置偏移量为最新

kafka-consumer-groups.sh --bootstrap-server h121.wzk.icu:9092  --reset-offsets --group group
目录
相关文章
|
3月前
|
SQL 大数据 API
大数据-118 - Flink DataSet 基本介绍 核心特性 创建、转换、输出等
大数据-118 - Flink DataSet 基本介绍 核心特性 创建、转换、输出等
81 0
|
3月前
|
消息中间件 关系型数据库 MySQL
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
大数据-117 - Flink DataStream Sink 案例:写出到MySQL、写出到Kafka
249 0
|
3月前
|
消息中间件 分布式计算 NoSQL
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
56 0
|
3月前
|
消息中间件 存储 分布式计算
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
114 0
|
14天前
|
消息中间件 运维 大数据
道旅科技借助云消息队列 Kafka 版加速旅游大数据创新发展
阿里云云消息队列 Kafka 版 Serverless 系列凭借其卓越的弹性能力,为道旅科技提供了灵活高效的数据流处理解决方案。无论是应对突发流量还是规划长期资源需求,该方案均能帮助企业实现资源动态调整和成本优化,同时保障业务的高可用性和连续性。
|
3月前
|
消息中间件 存储 druid
大数据-156 Apache Druid 案例实战 Scala Kafka 订单统计
大数据-156 Apache Druid 案例实战 Scala Kafka 订单统计
60 3
|
3月前
|
消息中间件 druid 大数据
大数据-153 Apache Druid 案例 从 Kafka 中加载数据并分析(二)
大数据-153 Apache Druid 案例 从 Kafka 中加载数据并分析(二)
53 2
|
3月前
|
消息中间件 分布式计算 druid
大数据-153 Apache Druid 案例 从 Kafka 中加载数据并分析(一)
大数据-153 Apache Druid 案例 从 Kafka 中加载数据并分析(一)
70 1
|
3月前
|
消息中间件 NoSQL Kafka
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
222 0
|
3月前
|
消息中间件 资源调度 大数据
大数据-112 Flink DataStreamAPI 程序输入源 DataSource 基于文件、集合、Kafka连接器
大数据-112 Flink DataStreamAPI 程序输入源 DataSource 基于文件、集合、Kafka连接器
65 0
下一篇
开通oss服务