2015-12-22 81 views
2

假設我想存儲hash包含array哈希與Redis的Arrrays

{:foo=>[:bar, :baz], :quack => 'duck'} 

乍一看,我有2種選擇。

  1. 序列化:foo的值並將其存儲爲string
  2. 值轉換爲一個set,存儲與setkey一個hash,並重建我的數據結構與2個查詢,爲set和分別hash

第二種方法凌亂的感覺對我來說,尤其是考慮hash或多個hash「ES的可能性被嵌套在array工作涉案內檢索時重建的那些結構。

redis存儲複雜數據結構的最佳方法是什麼?

是否有更好的選擇,然後我列出的選項可以讓我利用redis數據類型?

+1

我不能告訴你最好的方法。我可以告訴你,我總是將我的數據序列化爲json,並將其作爲字符串存儲在redis中。對於這個問題,不,redis是數據類型有限的簡單鍵值。選項1 imho – ptierno

回答

1

如果您不與其他對象共享數據,則應該繼續並將它們序列化。

...只要他們在512MB以下