19-Kafka02

1.核心概念

broker: 進(jìn)程

producer: 生產(chǎn)者

consumer: 消費(fèi)者

topic: 主題

partitions: 分區(qū)? (副本數(shù))

consumergroup:

1.容錯(cuò)性的消費(fèi)機(jī)制

2.一個(gè)組內(nèi),共享一個(gè)公共的ID groupid

3.組內(nèi)的所有消費(fèi)者協(xié)調(diào)在一起,

去消費(fèi)topic的所有的分區(qū)

4.每個(gè)分區(qū)只能由同一個(gè)消費(fèi)組的一個(gè)消費(fèi)者來消費(fèi)

123--> 1:0分區(qū)? 0分區(qū)還坐落在2,3機(jī)器上面? ?

offset: 每個(gè)partition的數(shù)據(jù)的id

00000000000000000000.index

00000000000000000000.log

00000000000000002000.index?

00000000000000002000.log

a1? ? 00000000000000000001

a2? ? 00000000000000000002

a3

...

a2000

00000000000000000000.index

1,0? ? ? 1代表第一條消息 offset ,偏移量

4,55? ?

10,77

....

....

稀疏表 隔幾條記錄一次

拋出問題:

1.消費(fèi)offset 4

2.消費(fèi)offset 7 -->4 按順序往后讀

3.offset 2700

00000000000000002000.index?

00000000000000002000.log

2001? ? 00000000000000002001

2002

segment:

1.log和index文件

2.

log.segment.bytes

log.roll.hours

3.命名規(guī)則: 上一個(gè)segment分組log文件的最大offset

2.消費(fèi)語義

at most once: 最多消費(fèi)一次? 消費(fèi)可能丟失? 但是不會(huì)重復(fù)消費(fèi) ?--》log

at least once: 至少消費(fèi)一次? 消費(fèi)不可能丟失 但是會(huì)重復(fù)消費(fèi) ?--》我司

exactly once: 正好一次 消息不會(huì)丟失 也不會(huì)重復(fù)(這才是我們想要的)

? ? ? 0.10.0.1 不支持不能實(shí)現(xiàn) 0.11官方已支持

1.log允許丟? at most once

2.log不允許丟 at least once+ 去重 redis

3.MySQL SQL語句 at least once

insert into jepson1 12;? -->hbase ok? 重復(fù)了

insert into jepson2 13;? 掛了

insert into jepson3 14;?

選擇HBase? put: update insert

consumer offset:

1,2,3,4,5

1,2,3

offset沒有維護(hù) consumer掛了 是不是從上一次的更新的offset的位置去消費(fèi)

斷點(diǎn)還原

kafka自己本身

topic: test

內(nèi)嵌一個(gè)topic _consumer....

3.Flume-->Kafka-->Spark streaming 經(jīng)典案例

auto.offset.reset:

latest:

earliest:

none

enable.auto.commit: true

auto.commit.interval.ms:5000

1.....9 掛

offset....15

ConsumerRecord

(

topic = onlinelogs, partition = 0, offset = 2667075,

CreateTime = -1, checksum = 2396351077, serialized key size = -1,

serialized value size = 234,

key = null,

value =

{"hostname":"yws76","servicename":"namenode",

"time":"2018-03-19 15:23:30,028",

"logtype":"INFO",

"loginfo":"org.apache.hadoop.hdfs.server.namenode.FSEditLog:

logSyncAll toSyncToTxId=1377149 lastSyncedTxid=1377148 mostRecentTxid=1377149"}

)

生產(chǎn):斷批還原 +put 保證數(shù)據(jù)零丟失

批次10000? 2000

4.監(jiān)控 & 心得

1.Kafka

CDH TSQL

SELECT total_kafka_bytes_received_rate_across_kafka_broker_topics ,total_kafka_bytes_fetched_rate_across_kafka_broker_topics

WHERE entityName = "kafka:onlinelogs" AND category = KAFKA_TOPIC

SELECT total_kafka_bytes_fetched_rate_across_kafka_broker_topics

WHERE entityName = "kafka:onlinelogs" AND category = KAFKA_TOPIC

exec source

kafka sink

圖:

1.生產(chǎn)者和消費(fèi)者的速度是一樣嘛?

由于趨勢(shì)度吻合,所以速度一樣的

2.為什么消費(fèi)者的曲線和生產(chǎn)者的曲線趨勢(shì)度 吻合?

及時(shí)消費(fèi)

么有壓力

3.為什么消費(fèi)者的曲線和生產(chǎn)者的曲線要高?

生產(chǎn): value

消費(fèi):

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 姓名:周小蓬 16019110037 轉(zhuǎn)載自:http://blog.csdn.net/YChenFeng/art...
    aeytifiw閱讀 34,918評(píng)論 13 425
  • Kafka簡(jiǎn)介 Kafka是一種分布式的,基于發(fā)布/訂閱的消息系統(tǒng)。主要設(shè)計(jì)目標(biāo)如下: 以時(shí)間復(fù)雜度為O(1)的方...
    Alukar閱讀 3,159評(píng)論 0 43
  • 本文轉(zhuǎn)載自http://dataunion.org/?p=9307 背景介紹Kafka簡(jiǎn)介Kafka是一種分布式的...
    Bottle丶Fish閱讀 5,592評(píng)論 0 34
  • 大致可以通過上述情況進(jìn)行排除 1.kafka服務(wù)器問題 查看日志是否有報(bào)錯(cuò),網(wǎng)絡(luò)訪問問題等。 2. kafka p...
    生活的探路者閱讀 7,746評(píng)論 0 10
  • 今天因?yàn)橐乙槐疽郧暗男∪沼洷荆瑓s剛好先翻出了初中的同學(xué)錄。原本不想翻開,想直接放回去的,最終還是打開了。一頁頁翻...
    壹月姑娘閱讀 575評(píng)論 0 0

友情鏈接更多精彩內(nèi)容