27

いくつかのプロパティ(ID、Name、Surename、Age)で構成されるオブジェクト(User)があるとします。このオブジェクトをredisに保存するのに適した方法はどれですか?

  • 各プロパティ値を専用キーに保存します。例:user:{id}:id、user:{id}:name、user:{id}:surename、user:{id}:age
  • Userオブジェクト全体を1つのキーにJSON文字列として格納します(例:user:{id}:json)(キーの値は次のようになります:{"ID":123、 "Name": "Johny"、 "Surename": 「ブラボー」、「年齢」:22})
4

3 に答える 3

21

これらの 2つのソースによると、JSONをキー値として使用するシナリオで専用キーと長い文字列を使用する場合、メモリを消費するため、おそらく最適なソリューションはハッシュを使用することです。

于 2011-03-09T23:16:46.757 に答える
1

公式Redisから

可能な場合はハッシュを使用してください

小さなハッシュは非常に小さなスペースにエンコードされます

あなたがそれに多くのフィールドを持っていないとき。

ハッシュが指定された要素数または要素サイズを超えるたびに、ハッシュは実際のハッシュテーブルに変換され、メモリの節約が失われます。

于 2014-02-11T02:03:58.533 に答える
0

ハッシュを使用した私のテストでは、必要なスペースははるかに小さくなっていますが、それが唯一の理由です。大量のデータがある場合は、ハッシュの使用を検討してください。それ以外の場合は、必要に応じてオブジェクトにシリアル化および逆シリアル化するのが簡単で、一般的に処理できるため、JSONを使用することをお勧めします。

于 2015-12-11T20:49:37.557 に答える