日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

kafka的简单概述及基本命令

發布時間:2023/12/19 编程问答 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 kafka的简单概述及基本命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、Kafka簡介,什么是kafka

Kafka:消息隊列,緩存數據

kafka是一個分布式消息隊列,流式計算中,一般用來緩存數據

在流式計算中,Kafka一般用來緩存數據,SparkStream/Flink/Storm通過消費Kafka的數據進行計算。

1)Apache Kafka是一個開源消息系統,由Scala寫成。是由Apache軟件基金會開發的一個開源消息系統項目。

2)Kafka最初是由LinkedIn開發,并于2011年初開源。2012年10月從Apache Incubator畢業。該項目的目標是為處理實時數據提供一個統一、高通量、低等待的平臺。

3)Kafka是一個分布式消息隊列。Kafka對消息保存時根據Topic進行歸類,發送消息者稱為Producer,消息接受者稱為Consumer,此外kafka集群有多個kafka實例組成,每個實例(server)成為broker。

4)無論是kafka集群,還是producer和consumer都依賴于zookeeper集群保存一些meta信息,來保證系統可用性。

二、傳統的消息隊列

點對點:生產者推送隊列 ?消費者拉取消息 發送反饋 消息被刪除

發布訂閱:生產者推送隊列 ?隊列將消息推送給訂閱的消費者 消息不會被刪除

Kafka:基于訂閱發布 ?生產者推送隊列 消費者主動拉取

三、kafka組件

生產者 producer

消費者 consumer

Broker 每臺kafka相當于broker

Topic 就是一個隊列

partition 分區

replication副本

四、kafka寫入數據流程

1.?從zookeeper找到leader

2.?將數據返回leader

3.?Leader 將數據寫入到本地 發送ack

4.?Follower 同步數據 發送ack

五、分區規則:

1.?指定了partition,則直接使用

2.?未指定partition 但指定key,通過對key的vlaue進行hash出一個partition

3.?Partition 和 key 都未指定,使用輪詢選出一個partition

未指定分區

Key 不為 null ?abs取絕對值

Math.abs(key.hashcode)%numberpartitions

指定分區

? 向指定分區寫入數據

六、自定義分區器

七、數據保存

數據保存到topic中的分區中 ?(物理上是一個目錄)

順序寫入磁盤

Index 文件

Log文件

八、數據存儲策略

基于時間 :周期性的從文件末尾刪除過期的數據(默認一周)7天

基于大小 : 周期性的將超過最大值的 (默認1G)數據文件重命名 生成新的文件,刪除舊的文件

?

九:kafka命令

控制臺生產者: kafka-console-producer.sh --topic test --broker-list hadoop:9092控制臺消費者: kafka-console-consumer.sh --topic test --bootstrap-server hadoop:9092 --from-beginning主題:(topic) 創建主題 kafka-topics.sh --create --topic test --zookeeper hadoop:2181 --partitions 3 --replication-factor 3查看主題 kafka-topics.sh --describe --topic test --zookeeper hadoop:2181查看主題列表 kafka-topics.sh --list --topic test --zookeeper hadoop:2181 kafka-topics.sh --list --zookeeper hadoop:2181刪除主題 kafka-topics.sh --delete --zookeeper hadoop:2181 --topic first

?

需要知識文檔的博友請在下方留言評論......

總結

以上是生活随笔為你收集整理的kafka的简单概述及基本命令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。