国产精品免费嫩草研究院|无遮羞动漫在线观看AV|国产麻豆精品传媒AV国产在线|村在线观看|寂寞情人1正版|韩国床震韩国床震古|精品系列专区久久

我的 Kafka 旅程 - 文件存儲機制

存儲機制Topic在每個Broker下存儲所屬的Partition,Partition下由 Index、Log 兩類文件組成 。
寫入Log 由多個Segment文件組成,每個Segment文件容量最多為1GB,接收到的新消息永遠是以追加的方式于Segment中(只追加不修改的方式減少了查詢的消耗),每個消息有自增編號 。
查詢Index 文件僅記錄固定消息量的索引編號范圍,Kafka在查詢時,先從Index中定位到小范圍的索引編號區(qū)間,再去Log中在小范圍的數(shù)據(jù)塊中查詢具體數(shù)據(jù),此索引區(qū)間的查詢方式稱為 - 稀疏索引 。
高效讀寫

  • 分布式、多分區(qū)、各線程并行處理
  • 稀疏索引 - 小范圍快速定位要消費的數(shù)據(jù)
  • 數(shù)據(jù)文件,只追加不修改的順序寫方式(利用了物理磁盤的優(yōu)勢)
  • 緩存技術 - 大量減少IO(由系統(tǒng)層面負責IO動作)
  • 零拷貝技術 - 解放CPU,大量減少數(shù)據(jù)塊的Copy,數(shù)據(jù)直接從磁盤到網卡送出(利用了操作系統(tǒng)的技術)
文件清理過期時長# 數(shù)據(jù)文件過期時長配置項,三選一log.retention.hours# 小時,默認7天log.retention.minutes# 分鐘log.retention.ms# 毫秒# 刪除的容量警戒值,默認-1無窮大log.retention.bytes# 檢查過期間隔,默認5分鐘log.retention.check.interval.ms清理方式log.cleanup.policy = delect | compactdelect1、以Segment文件最后一條消息的時間為刪除依據(jù),刪除整個Segment文件 。2、以Log文件總大小,以 log.retention.bytes 的配置為準,刪除最早的Segment文件 。
compact對于相同的key,僅保留最后一次的value,所有數(shù)據(jù)啟用壓縮策略(offset的id就不會連續(xù),后續(xù)說明) 。
【我的 Kafka 旅程 - 文件存儲機制】

    經驗總結擴展閱讀