那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Kafka框架的工作原理及工作流程

h1654155282.3538 ? 來源:加米谷大數據張衡 ? 作者:加米谷大數據張衡 ? 2021-01-15 09:49 ? 次閱讀

Kafka在大數據技術生態當中,以作為消息系統而聞名,面對活躍的流式數據,提供高吞吐量的服務,在實時大數據處理場景下,可以說是一大利器,國內外大廠都有應用。今天的大數據開發技術分享,我們就主要來講講Kafka框架的工作原理

Kafka概述

官方定義,Kakfa是一個分布式的基于發布/訂閱模式的消息隊列,主要應用于大數據的實時處理領域。

通常來說,消息隊列的模式分為兩種:

①點對點模式:消息生產者發送消息到消息隊列中,然后消息消費者從隊列中取出并且消費消息,消息被消費后,隊列中不在存儲。

②發布/訂閱模式(一對多,消費者消費數據之后不會清除消息):消息生產者將消息發布到Topic中,同時有多個消息消費者(訂閱)消費該消息。

Kafka就是典型的發布/訂閱模式,更加適用于實時大數據場景下的消息服務。

Kafka基礎架構

Kafka的基礎架構主要有Broker、生產者、消費者組構成,當前還包括ZooKeeper。

o4YBAGAA9O6ASalIAAJFNGI0lhI104.png

生產者負責發送消息,Broker負責緩沖消息,Broker中可以創建Topic,每個Topic又有Partition和Replication的概念。

消費者組負責處理消息,同一個消費者組的消費者不能消費同一個Partition中的數據。

消費者組主要是提高消費能力,比如之前是一個消費者消費100條數據,現在是2個消費者消費100條數據,可以提高消費能力。

所以消費者組的消費者的個數要小于Partition的個數,不然就會有消費者沒有Partition可以消費,造成資源的浪費。

注意:不同消費者組的消費者是可以消費相同的Partition數據。

Kakfa如果要組件集群,則只需要注冊到一個ZooKeeper中就可以了,ZooKeeper中還保留消息消費的進度或者說偏移量或者消費位置:

0.9之前的版本偏移量存儲在ZooKeeper。

0.9之后的版本偏移量存儲在Kafka中。Kafka定義了一個系統Topic,專用用來存儲偏移量的數據。這樣做主要是考慮到頻繁更改偏移量,對ZooKeeper的壓力較大,而且Kafka本身自己的處理也較復雜。

Kafka不能保證消息的全局有序,只能保證消息在Partition內有序,因為消費者消費消息是在不同的Partition中隨機的。

Kafka工作流程

Kafka中的消息是以Topic進行分類的,生產者生成消息、消費者消費消息都面向Topic。

o4YBAGAA9PWAF38tAACUS2ENJWM138.png

Topic是一個邏輯上的概念,而Partition是物理上的概念。每個Partition又有副本的概念。

每個Partition對應于一個Log文件,該Log文件中存儲的就是生產者生成的數據,生產者生成的數據會不斷的追加到該Log的文件末端。

且每條數據都有自己的Offset,消費者都會實時記錄自己消費到了那個Offset,以便出錯的時候從上次的位置繼續消費,這個Offset就保存在Index文件中。

Kafka的Offset是分區內有序的,但是在不同分區中是無順序的,Kafka不保證數據的全局有序。

關于大數據開發,Kafka工作原理入門,以上就為大家做了簡單的介紹了。Kafka在大數據技術生態當中,普及度是非常高的,尤其是擁有豐富數據資源的企業,更加青睞于使用kafka。
責任編輯人:CC

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 大數據
    +關注

    關注

    64

    文章

    8908

    瀏覽量

    137791
  • kafka
    +關注

    關注

    0

    文章

    52

    瀏覽量

    5243
收藏 人收藏

    評論

    相關推薦

    幫忙分析下這個設計的工作流程

    你好我是單片機學習的菜鳥能不能幫我分析一下一下設計的工作流程各個器件的工作原理
    發表于 12-07 11:06

    AndroidWifi工作流程

    AndroidWifi工作流程
    發表于 11-02 10:52

    AndroidWifi工作流程

    AndroidWifi工作流程
    發表于 09-25 11:17

    AndroidWifi工作流程

    AndroidWifi工作流程
    發表于 11-08 09:07

    Spark基本工作原理工作流程

    28 講、Spark 基本工作原理與 RDD
    發表于 05-08 17:07

    數字式雷達信號處理器系統工作原理是什么?基本工作流程有哪些?

    數字式雷達信號處理器系統組成及工作原理是什么?數字式雷達信號處理器的基本工作流程有哪些?
    發表于 04-21 06:36

    Simulink是什么?Simulink的工作流程是怎樣進行的?

    Simulink是什么?Simulink有哪些功能?如何去使用Simulink?Simulink的工作流程是怎樣進行的?
    發表于 07-09 06:16

    AS068工作流程是怎樣的?

    AS068工作流程是怎樣的?
    發表于 12-07 08:02

    CAN總線的基本工作原理是什么?優勢是什么?

    CAN總線的基本工作原理是什么?CAN總線工作流程是怎樣的?CAN總線的優勢是什么?如何計算CAN總線負載率?
    發表于 12-27 07:39

    財務管理工作流程

    財務管理工作流程
    發表于 03-30 20:42 ?8336次閱讀

    測試工程師工作流程有哪些

    測試工程師的工作流程,與公司的整體工作流程,項目的測試要求等因素相關。本文主要討論測試工程師的一般工作流程
    的頭像 發表于 10-03 16:56 ?7783次閱讀

    雷電的4K工作流程

    在4K的雷電工作流程
    的頭像 發表于 05-31 11:20 ?2482次閱讀

    工作流程圖怎么用?有哪些繪制工作流程圖的軟件

    工作流程圖是清晰地展示工作中各個環節的流程圖圖示,主要用于工作活動和效率的管理。工作流程圖這種圖示方法具有直觀描述性、簡潔性、可操作性和指導
    的頭像 發表于 07-28 14:22 ?3601次閱讀

    機器視覺系統的組成及工作流程

    機器視覺系統的組成及工作流程介紹。
    發表于 04-19 15:24 ?16次下載

    物聯網數據采集器的工作原理工作流程

    物聯網數據采集器的工作原理工作流程 物聯網數據采集器是物聯網系統中的關鍵組成部分,它負責收集、處理和傳輸設備所產生的數據。其工作原理工作流程如下所述。 一、物聯網數據采集器
    的頭像 發表于 02-01 10:59 ?5291次閱讀
    百家乐投注信用最好的| 察雅县| 百家乐翻天超清| TT百家乐现金网| 白凤凰博彩通| 百家乐博百家乐的玩法技巧和规则| 百家乐官网有诈吗| 网上赌场| 百家乐统计软件| 百家乐流水打法| 太阳城百家乐官网看牌| bet365注册找谁| 百家乐庄闲比| 金沙百家乐官网的玩法技巧和规则 | 百家乐官网庄闲局部失衡| 太阳城菲律宾官方网| 百家乐网站那个好| 百家乐官网开发软件| 新世纪| 百家乐筹码| 博彩百家乐心得| 百家乐官网游戏唯一官网站| 台前县| 大发888娱乐游戏下载 官方网| 百家乐现金网平台排行| 澳门百家乐官网单注下注| 百家乐官网哪条路好| 青岛棋牌英雄| 免费玩百家乐的玩法技巧和规则 | 百家乐官网免费改| 新世纪百家乐官网现金网| 博狗娱乐城注册| 百家乐筹码防伪| 百家乐书| 网上百家乐官网公司| 百家乐官网庄闲收益率| 福州市| 棋牌百家乐有稳赚的方法吗| 做生意什么花招财| 蓝盾百家乐官网打法| 百家乐官网官网下载|