2014-01-14 66 views
0

Redis的鍵我有一個的Redis 2.8.3服務我在哪裏存儲的數據集(與SADD創建)如:如何有效地除去在飛行

Customers (set) 
.....Custname (set) 
.........application (set) 
..............time (set) 
...................detail (hash) 

一旦每個細節散列已經被處理,使用SREM刪除它,然後如果使用SCARD發現父集(時間和應用程序)爲空,則使用SREM刪除它。

雖然這是行得通的,但它似乎是爲每個刪除的項目留下密鑰。所以 是諸如'客戶:客戶名稱:應用程序:時間'之類的關鍵字。

什麼是最有效的方法來刪除集成員並同時刪除相應的密鑰?

回答

0

LUA程序的解決方案將是最好的選擇。僞代碼看起來像

if 1 == srem(key, value) then 
    if 0 == scard(key) then 
     del(key) 
    end if 
end if 
+0

感謝您的快速回復@misterion。我已經實現了這一點。 – Steve