91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis中HyperLogLog的作用是什么

發布時間:2021-08-03 14:15:06 來源:億速云 閱讀:307 作者:Leah 欄目:大數據

Redis中HyperLogLog的作用是什么,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

HyperLogLog是Redis的高級數據結構,它在做基數統計的時候非常有用,每個HyperLogLog的鍵可以計算接近264不同元素的基數,而大小只需要12KB。

 PFADD

最早可用版本:2.8.9

時間復雜度:O(1)

將參數中的元素都加入指定的HyperLogLog數據結構中,這個命令會影響基數的計算。如果執行命令之后,基數估計改變了,就返回1;否則返回0。如果指定的key不存在,那么就創建一個空的HyperLogLog數據結構。該命令也支持不指定元素而只指定鍵值,如果不存在,則會創建一個新的HyperLogLog數據結構,并且返回1;否則返回0。

    PFCOUNT

最早可用版本:2.8.9

時間復雜度:O(1),對于多個比較大的key的時間復雜度是O(N)

對于單個key,該命令返回的是指定key的近似基數,如果變量不存在,則返回0。

對于多個key,返回的是多個HyperLogLog并集的近似基數,它是通過將多個HyperLogLog合并為一個臨時的HyperLogLog,然后計算出來的。

HyperLogLog可以用很少的內存來存儲集合的唯一元素。(每個HyperLogLog只有12K加上key本身的幾個字節)

HyperLogLog的結果并不精準,錯誤率大概在0.81%。

需要注意的是:該命令會改變HyperLogLog,因此使用8個字節來存儲上一次計算的基數。所以,從技術角度來講,PFCOUNT是一個寫命令。

 
性能問題

即使理論上處理一個存儲密度大的HyperLogLog需要花費較長時間,但是當指定一個key時,PFCOUNT命令仍然具有很高的性能。這是因為PFCOUNT會緩存上一次結算的基數,而多數PFADD命令不會更新寄存器。所以才可以達到每秒上百次請求的效果。

當處理多個key時,最耗時的一步是合并操作。而通過計算出來的并集的基數是不能緩存的。所以多個key的處理速度一般在毫秒級。

 
PFMERGE

最早可用版本:2.8.9

時間復雜度:O(N),N是要合并的HyperLogLog的數量

用法:PFMERGE destkey sourcekey [sourcekey …]

合并多個HyperLogLog,合并后的基數近似于合并前的基數的并集(observed Sets)。計算完之后,將結果保存到指定的key。

除了這三個命令,我們還可以像操作String類型的數據那樣,對HyperLogLog數據使用SET和GET命令。

關于Redis中HyperLogLog的作用是什么問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

漳平市| 蚌埠市| 平泉县| 宁国市| 正阳县| 洛川县| 柘城县| 旺苍县| 贡山| 米脂县| 镇平县| 礼泉县| 金川县| 竹溪县| 德格县| 来凤县| 辛集市| 武宣县| 高尔夫| 哈尔滨市| 原阳县| 楚雄市| 基隆市| 濮阳市| 治县。| 彭阳县| 离岛区| 中阳县| 黄大仙区| 海门市| 桃园县| 包头市| 来凤县| 邢台县| 汝州市| 陆河县| 新平| 兴义市| 青冈县| 南木林县| 天峨县|