首页 > 其他分享 >什么是kafka中topic、分区、副本、偏移量、消息保留策略

什么是kafka中topic、分区、副本、偏移量、消息保留策略

时间:2023-11-28 10:45:35浏览次数:29  
标签:Topic 副本 分区 偏移量 kafka topic 消息 Kafka


Kafka是一个开源的分布式流式数据平台,也成为分布式消息队列。

用于高吞吐量、低延迟的数据发布和订阅。

 

1、什么是topic (主题) ?

 

在Kafka中,Topic(主题)是数据发布和订阅的基本单位,它代表了相同类型的消息流

 

一个Topic可以看作是一个逻辑上的数据流管道,消息的生产者(Producer)将消息发布到Topic中,而消息的消费者(Consumer)从Topic中订阅并接收消息。

 

Topic将消息按照一定的规则进行分区(Partition),每个分区包含了有序的消息序列。

 

 

以下是一些关于Kafka Topic的概念:

 

名称:每个Topic都有一个唯一的名称,用于标识和区分不同的主题。

 

2、什么是分区(partition) ?

 

分区:Topic可以被分为一个或多个分区,每个分区是一个有序的消息队列。

 

为什么要设置分区?

 

在Kafka中,对Topic进行分区的主要目的是:

实现数据的并行处理、提高系统的吞吐量和可伸缩性。

 

  • 并行处理:通过将Topic划分为多个分区,Kafka可以实现消息的并行处理。每个分区都是一个有序的消息队列,可以独立地进行读取和写入操作。这样可以将消息的处理负载均衡到多个消费者上,提高整个系统的并发处理能力。

 

  • 水平扩展:分区机制使得Kafka可以通过增加分区来水平扩展系统的吞吐量和容量。当系统的负载增加时,可以通过增加分区数量来分摊负载,使得每个分区上的消息处理压力减轻,从而提高整体的处理能力。

 

3、什么是副本(replica)?

 

 

 

副本:每个分区可以配置多个副本(Replica).

 

为什么要设置副本?

 

副本用于提供数据冗余和高可用性。Kafka使用分布式的副本机制来保证数据的可靠性和容错性。

 

4、什么是偏移量(offset)?

 

偏移量(Offset):每个消息在分区中都有一个唯一的偏移量,用于标识消息在分区中的位置。

消费者可以根据偏移量来定位和消费消息。

 

5、什么是消息保留策略?

 

保留策略:Topic可以配置一个保留策略(Retention Policy),用于控制消息在Topic中的保留时间。

 

根据保留策略,可以设置消息在Topic中的最大保留时间或者保留的消息数量。

标签:Topic,副本,分区,偏移量,kafka,topic,消息,Kafka
From: https://www.cnblogs.com/chuanzhang053/p/17861329.html

相关文章

  • Kafka 如何保证消息消费的全局顺序性
    哈喽大家好,我是咸鱼今天我们继续来讲一讲Kafka当有消息被生产出来的时候,如果没有指定分区或者指定key,那么消费会按照【轮询】的方式均匀地分配到所有可用分区中,但不一定按照分区顺序来分配我们知道,在Kafka中消费者可以订阅一个或多个主题,并被分配一个或多个分区如果一......
  • Kafka3.6.0 linux 安装,非zookeeper模式
    参考:安装Kafka3.3.1及kraft运行,告别zookeeper_kafka3.3.1jdk无需zookeeper,kafka3.0版本集群安装实战 操作系统:ubutun18.04LTS1.下载到kafka官网下载2.上传到服务器指定位置3.解压到指定目录,这里我放到/opt下tar-xzvfkafka_2.13-3.6.0.tgz-C/opt/4.修改配置:因为......
  • 性能测试复习准备——linux环境下安装kafka_2.13-3.2.3.tgz
    参考:https://www.bilibili.com/video/BV1Xy4y1G7zA?p=6&vd_source=79bbd5b76bfd74c2ef1501653cee29d6      解压到目录路径下:  启动kafka之前,首先启动zk:       修改配置文件:        启动kafka和查看:       ......
  • kafka入门(二): 位移提交
    位移提交:Kafka的每条消息都有唯一的offset,用来表示消息在分区中对应的位置。有的也称之为"偏移量"。消费者每次在poll()拉取消息,它要返回的是还没有消费过的消息集,因此,需要记录上一次消费时的消费位移,并且持久化。消费者在消费完消息之后,需要执行消费位移的提交。自动位......
  • Kafka生产和消费
    生产,私有topic:[root@gbxhfbin]#exportPATH=$PATH:/data/kafka_2.12-2.8.2/bin;cd/data/kafka_2.12-2.8.2/bin[root@gbxhfbin]#kafka-console-producer.sh--bootstrap-server192.168.1.200:8423,192.168.1.201:8423--topic"RDSP-IPCM-NOTICE"--producer.c......
  • Introducing the kafka producer
    IntroductionAswesawintheprevioussections,Ithinkwehavesomebasicinformationaboutthekafkaproducers,today,letmediginthisconcept. Kafkaproducersaregoingtowritedatatotopicsaremadeofpartitions,nowtheproducersinkafkawil......
  • Linux下利用Docker快速部署Kafka
    1.摘要Kafka是由Apache软件基金会开发一个开源流处理平台,使用Scala和Java编写,该项目的目标是为处理实时数据提供一个统一、高吞吐、低延迟的平台。其持久化层本质上是一个按照分布式事务日志架构的大规模发布/订阅消息队列。这种工作方式使它为企业级基础设施来处理流失数据非常......
  • 全网最全图解Kafka适用场景
    消息系统消息系统被用于各种场景,如解耦数据生产者,缓存未处理的消息。Kafka可作为传统的消息系统的替代者,与传统消息系统相比,kafka有更好的吞吐量、更好的可用性,这有利于处理大规模的消息。根据经验,通常消息传递对吞吐量要求较低,但可能要求较低的端到端延迟,并经常依赖kafka可靠......
  • 全网最全图解Kafka适用场景
    消息系统消息系统被用于各种场景,如解耦数据生产者,缓存未处理的消息。Kafka可作为传统的消息系统的替代者,与传统消息系统相比,kafka有更好的吞吐量、更好的可用性,这有利于处理大规模的消息。根据经验,通常消息传递对吞吐量要求较低,但可能要求较低的端到端延迟,并经常依赖kafka可靠的......
  • Kafka-合理设置broker、partition、consumer数量
     1.broker的数量最好大于等于partition数量一个partition最好对应一个硬盘,这样能最大限度发挥顺序写的优势。一个broker如果对应多个partition,需要随机分发,顺序IO会退化成随机IO。实验条件:3个Broker,1个Topic,无Replication,异步模式,3个Producer,消息Payload为100字节:场景1:p......