1. 程式人生 > 其它 >Rediss高階資料結構

Rediss高階資料結構

一、點陣圖

1.使用場景

儲存bool型資料,例如使用者一年的簽到記錄。
最小單位是bit, 取值只能是0或1.

  • 各種實時分析.
  • 儲存與物件ID關聯的節省空間並且高效能的布林資訊.

2.統計與查詢

統計指令:bitcount;統計指定範圍內1的個數
查詢指令:bitpos;查詢指定範圍內出現的第一個0或1

二、HyperLogLog

海量資料的去重統計方案

1.使用場景

用於統計功能,估算,標準誤差0.81%
例如:統計網頁的訪問UV

2.常用指令

pfadd
pfcount
pfmerge

為什麼指令要以pf為字首,因為這個資料結構的發明人Philippe Flajolet, pf是縮寫

三、布隆過濾器(Bloom Filter)

1.是什麼

可理解為:不怎麼精確的Set結構
用途:用於檢索一個元素是否在一個集合中。

2.使用場景

新聞客戶端推薦系統實現推送去重

3.常用指令

bf.add
bf.exists

四、GeoHash

1.用途

GeoHash演算法用於地理位置距離排序(附近的人)

2。原理

內部結構是zset(skiplist)

3. 常用指令

geoadd
geodist
geopos

4.注意

若要使用該演算法,最好單獨一個redis服務執行,不要叢集