在雲原生記憶體資料庫Tair中,訪問頻率高的Key稱為熱點Key,如果處理不當容易引起Redis進程阻塞,影響正常服務。藉助審計日誌您可以查詢熱點Key的記錄,協助您回溯複盤,為進一步的最佳化提供資料支援。
前提條件
背景資訊
Tair與Redis以最近最少使用演算法LFU(Least Frequently Used)為基礎,經過高效的排序以及統計演算法識別出當前執行個體的熱點Key。在Redis社區版7.0.18、6.0.2.9、5.5.2.9或Tair記憶體型5.0.50版本及以上中,查詢熱點Key功能將採用更直接和準確的統計演算法,提供更準確的QPS。
當某個Key的QPS大於5,000時會被記錄為熱點Key(在上述版本之前,當Key的QPS大於3,000時即會被記錄為熱點Key)。
本文通過審計日誌查詢熱點Key的記錄,如需即時顯示熱點Key資訊,請參見即時Top Key統計。
操作步驟
訪問Tair執行個體列表,在上方選擇地區,然後單擊目標執行個體ID。
在左側導覽列,單擊 。
在审计日志頁面的右側,單擊時間選擇,然後在彈出的對話方塊中選取查詢的時間段,本案例選擇為1周(即最近一周)。
清空關鍵字文字框中的預設過濾條件,輸入type:7(即查詢熱點key資訊)並按斷行符號鍵確認。
在審計日誌詳情地區框,查看歷史熱點Key資訊。
說明用戶端IP列顯示的127.0.0.1為執行個體的本機伺服器地址,即localhost。
在執行命令列可查看熱點Key的詳細資料,命令中的各欄位說明如下:
欄位
樣本
說明
dbid
"dbid":0
熱點Key所在的資料庫。
type
"type":"string"
熱點Key的資料結構類型。
lfu
"lfu":241
熱點Key的LFU值。
說明在社區版7.0.18、6.0.2.9、5.5.2.9或Tair記憶體型5.0.50版本及以上時,該值將不再被使用,始終為0。
qps
"qps":"6000"
在社區版7.0.18、6.0.2.9、5.5.2.9或Tair記憶體型5.0.50版本及以上時,該值表示熱點Key的精確QPS。
在上述版本之前,僅支援在熱點Key的QPS小於6000時展示大致的QPS範圍,例如
"qps":"4500-5000"
,可展示的最大值為6000。
key
"key":"key:000000000008"
熱點Key。