2017-03-06 67 views
-1

場景:過濾大集與Redis的

我有具有以下性質

  • 這些產品的可用性/價格(源數據)的緩存,並將由多個使用的產品的大名單客戶端。

  • 每個客戶對它們都有不同的標記規則,因此不同的最終價格。

我需要在基於價格的產品等。然而應用過濾..

,從Redis的加載它們,並重新應用規則建立過濾器,Redis的是昂貴的。

有沒有更好的方法來做到這一點?

+0

見我的回答如下。它有幫助嗎? – Sheinbergon

回答

0

這在一定程度可行通過使用sortedsets(Z *命令)詞彙順序&化合物排序集成員鍵假設:

  • 過濾標準將被分揀設定構件鍵的一部分
  • 過濾標準是有限&確定性(所有這些都每個成員的出現在列表中,或者至少它可以表示通過使用某種佔位的像關鍵字:na:其中標準是不存在這樣)
  • 濾波criter ia值本質上是標量,並不代表數據範圍。請注意,這不是強制性的,但是如果您仍然選擇代表具有很多「範圍」值鍵的數據,那麼您將得到'笛卡爾產品',導致存儲庫維護(寫入/更新)成爲一場噩夢並創建方式,你的Redis實例甚至集羣要處理的鍵太多了。

如果以上所有的應用,SCAN(或ZSCAN更具體),是你的朋友

您還可以找到更多信息here