Kafka 日誌訊息儲存時間

2022-07-08 17:09:33 字數 1256 閱讀 2940

分段策略屬性

屬性名含義

預設值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 磁...