Kafka重点笔记

embedded/2024/9/22 17:30:25/

Kafka重点笔记

默认端口号 9092

kafka_3">一、kafka将数据保存在哪里?

kafka是将数据保存在磁盘。

二、离线计算、实时计算

离线计算:T+1模式。处理的数据是静态数据,有界限,知道什么时候开始也知道什么时候结束。

实时计算:以事件为驱动,低延迟,高效率。没有界限,知道什么时候开始,但是不知道什么时候结束。

kafka_13">三、kafka分区角色

kafka当中,分区角色一共分为两类:一类是leader;一类是follower。

无论你是生产者还是消费者,只跟分区leader进行通信。

四、follower当中的数据从哪来?

kafka当中,无论是生产者还是消费者,只和分区leader进行通信,也就是生产者生产数据只进入到分区leader当中,分区follower当中的数据是去分区leader当中进行同步;同理,消费者消费消息也只去leader进行消费。

五、生产者生产数据和消费者消费数据

生产者生产数据还是消费者消费数据,都要以某一个主题为聚类,也就是主题必不可少。

六、ISR列表

kafka当中,有一个isr列表,这个列表维护所有分区的副本,当某一时刻,分区leader宕机了,isr列表就会从自身维护的副本当中选择一个最适合上位的副本上位成为leader,继续和producer和consumer进行通信。

kafkatopic_31">七、kafka当中topic主题的分区命名规则

分区的命名:主题的名称-(分区编号(从0开始,到numPartitions-1))

假如有个主题叫user,这个主题有3个分区,那么分区的命名:user-0,user-1,user-2

八、消费者组

任何一个消费者,都隶属于一个消费者组。

九、消费者组消费分区当中的数据

假如主题有3个分区,消费者组里只有一个消费者,那么一个消费者就会开启3个线程去消费3个分区当中的数据;加入有2个消费者,其中一个消费者开启1个线程消费1个分区的数据,另一个消费者就会开始2个线程去消费另外2个分区的数据;假如有3个消费者,每个消费者消费一个分区当中的数据;假如有超过分区数的消费者:

同一时刻,最多只能有对应分区数的消费者去消费数据,多余的消费者处于等待状态。

十、消费数据的原理

同一时刻,一个分区当中的数据,只能被一个消费者组当中的一个消费者所消费。

十一、offset(偏移量)

kafka当中,每个分区都维护者独属于自己这个分区一份偏移量,分区当中,每条数据都有一个独有且唯一的偏移量,用来标记消息,将来如果这条消息被消费,就会进行记录偏移量,再来消费就会从上次消费的偏移量继续往后开始消费。

独有且唯一:分区数据被删除,但是偏移量长存,再来的数据只能用新的偏移量记录,不会占用之前的偏移量

十二、创建主题注意事项

kafka在创建主题时:1、副本数不能超过broker数;2、分区数只能增加,不能缩减。

kafka_61">十三、kafka粘性分区

kafka2.4及以后版本,采用粘性分区,一批数据优先使用一个分区。

kafka_65">十四、kafka数据一致性

如果将数据生产到多个分区当中,只能保证分区之内有序,全局不一定有序;要想做到全局有序,只需要将所有的数据发送到一个分区当中。

十五、分区数是不是越多越好?

资源有限。

十六、副本数是不是越多越好?

副本数越多,造成数据冗余,占用大量的资源。

kafka_77">十七、kafka当中数据样子

kafka当中数据是key,value对类型,但是可以不指定key,如果不指定key,key默认值就是null。

kafka_81">十八、kafka生产数据的形式

指定topic+value:数据采用粘性分区,不一定发送到那个分区,相当于轮询模式。

指定topic+key(固定死)+value:按照key的hash然后模上分区数,将数据保存到指定分区。

指定topic+key(活跃)+value:按照key的hash然后模上分区数,将数据保存到指定分区。

指定topic+partiionNumber+key(无论固定还是活跃)+value:数据全部发送到指定分区当中。


http://www.ppmy.cn/embedded/22879.html

相关文章

机器人系统开发ros2-基础实践01-学会自定义一个机器人动作aciton实体类

您之前在了解操作教程中了解了action 。与其他通信类型及其各自的接口(主题/消息和服务/srv)一样,您也可以在包中自定义操作。本教程向您展示如何定义和构建可与您将在下一个教程中编写的action服务器和action 客户端一起使用的操作。 需要理…

达梦(DM) SQL聚集函数及日期运算操作

达梦DM SQL聚集函数及日期运算操作 聚集函数MAX、MIN、SUM、AVG、COUNT使用分析函数 sum (…) over (order by…) 可以生成累计和更改累计和的值计算出现次数最多的值 日期运算加减日、月、年加减时、分、秒日期间隔之时、分、秒日期间隔之日、月、年求两个日期间的工作天数确定…

HCIP-Datacom-ARST必选题库_网络协议【道题】

一、单选 1.能够生成组播分发树的组播协议是: OSPF PIMv2 BGP IGMPv2 二、多选 1.以以下哪些属于多通道协议? Te1net P FTP H.323 SMTP LE 2.以下哪些协议属于多通道协议? SMTP Telnet H.323 FTP 三、简答 1.请将以下组网可靠性的备份技术与其相应特性进…

python常用库函数

Python标准库 0内置函数模块 一部分常用的的内置函数。 函数说明abs返回一个数的绝对值,例如:abs(-1.3)会返回1.3。bin把一个整数转换成以0b开头的二进制字符串,例如:bin(123)会返回0b1111011。chr将Unicode编码转换成对应的字…

NLP transformers - 文本分类

Text classification 文章目录 Text classification加载 IMDb 数据集Preprocess 预处理EvaluateTrainInference 本文翻译自:Text classification https://huggingface.co/docs/transformers/tasks/sequence_classification notebook : https://colab.research.googl…

【分布式通信】NPKit,NCCL的Profiling工具

NPKit介绍 NPKit (Networking Profiling Kit) is a profiling framework designed for popular collective communication libraries (CCLs), including Microsoft MSCCL, NVIDIA NCCL and AMD RCCL. It enables users to insert customized profiling events into different C…

无人机+集群组网+单兵图传:空地一体化组网技术详解

空地一体化组网技术是一种结合了无人机、集群自组网和单兵图传等多种技术的先进通信解决方案。这种技术方案的主要目的是在前线事故现场和后方指挥中心之间建立一个高效、稳定的通信链路,以确保信息的实时传输和指挥的顺畅进行。 首先,前端视频采集部分&…

MOS(My Oracle Support)怎么用?Oracle DBA必备技能!

MOS简介 老Oracle DBAer都知道MOS的前身是Metalink,2012年MOS替换掉原有的Metalink平台;MOS是Oracle提供的新一代在线支持平台,MOS平台整合了以前的Metalink功能,并提供了更强大的功能和用户体验。它允许客户提交和跟踪技术支持…