分段策略屬性
屬性名含義
預設值log.roll.
日誌滾動的週期時間,到達指定週期時間時,強制生成乙個新的segment
168(7day)
log.segment.bytes
每個segment的最大容量。到達指定容量時,將強制生成乙個新的segment
1g(-1為不限制)
log.retention.check.interval.ms
日誌片段檔案檢查的週期時間
60000
日誌重新整理策略
kafka的日誌實際上是開始是在快取中的,然後根據策略定期一批一批寫入到日誌檔案中去,以提高吞吐率。
屬性名含義
預設值log.flush.interval.messages
訊息達到多少條時將資料寫入到日誌檔案
10000
log.flush.interval.ms
當達到該時間時,強制執行一次flush
null
log.flush.scheduler.interval.ms
週期性檢查,是否需要將資訊flush
很大的值
日誌儲存清理策略
屬性名含義
預設值log.cleanup.polict
日誌清理儲存的策略只有delete和compact兩種
delete
log.retention.hours
日誌儲存的時間,可以選擇hours,minutes和ms
168(7day)
log.retention.bytes
刪除前日誌檔案允許儲存的最大值
-1log.segment.delete.delay.ms
日誌檔案被真正刪除前的保留時間
60000
log.cleanup.interval.mins
每隔一段時間多久呼叫一次清理的步驟
10log.retention.check.interval.ms
週期性檢查是否有日誌符合刪除的條件(新版本使用)
300000
這裡特別說明一下,日誌的真正清楚時間。當刪除的條件滿足以後,日誌將被「刪除」,但是這裡的刪除其實只是將該日誌進行了「delete」標註,檔案只是無法被索引到了而已。但是檔案本身,仍然是存在的,只有當過了log.segment.delete.delay.ms 這個時間以後,檔案才會被真正的從檔案系統中刪除。
參考文件:
Kafka訊息儲存概覽
kafka作為乙個訊息中介軟體系統,面臨的首要問題就是訊息如何持久化,如何方便地進行讀寫和解析。本文將就kafka的訊息儲存問題開乙個頭,後續將會對重要的 部分一一講解。kafka的訊息概念,首先我們在此談論的不是網路傳遞中的訊息,而更多偏向於記錄的意思,也就是消費者和生產者所在意的實際物件。訊息是...
Kafka 日誌儲存原理
segment 檔案命名規則 partition 全域性的第乙個 segment從 0 開始,後續每個 segment 檔名為上乙個 segment檔案最後一條訊息的 offset 值進行遞增。數值最大為 64 位long 大小,20 位數字字元長度,沒有數字用 0 填充。如 第乙個 log 檔案的...
kafka 訊息的儲存分析
為了規避隨機讀寫帶來的時間消耗,kafka採用順序寫的方式儲存資料。即使是這樣,但是i o操作仍然會造成磁碟的效能瓶頸,所以kafka還有乙個效能策略。一般應用程式有乙個buffer空間在使用者空間中,來自於網路或者磁碟,無論來自網路或者磁碟,都需要通過核心,也就是說核心中也要有buffer。1 磁...