私はRedisには新しく、ペア文字列を格納する最良の方法は文字列[]だけです。キー検索可能な赤目リストに配列を格納
アイデアは、このような構造では、文字列のキーを検索できるようになります:
set:{
"one":["a","b],
"two":["c","d]
}
文字列キーの見た目のであれば病気の配列を取得します。
私はRedisには新しく、ペア文字列を格納する最良の方法は文字列[]だけです。キー検索可能な赤目リストに配列を格納
アイデアは、このような構造では、文字列のキーを検索できるようになります:
set:{
"one":["a","b],
"two":["c","d]
}
文字列キーの見た目のであれば病気の配列を取得します。
文字列の配列をシリアル化して文字列にし、新しい文字列を元のキーの値として使用できます。そして、あなたは、例えば、Redisのにこれらのキーと値のペアを設定することができます
key: "one", value: "a:b"
key: "two", value: "c:d"
:私は:
で要素を結合することにより、配列をシリアライズ場合
あなたたとえば、あなたは文字列の2ペアを持つことができますSET one a:b
。
Redisから値を取得するとき、値を逆シリアル化して配列を取得します。
それは私が欲しいものではありません。私は同じセットで1と2をしたいです – Xhark
あなたはそれを行うことはできません。ただし、 'SET'ではなく、同じ* container *でそれらが必要な場合は、両方のキーと値のペアを' HASH'に保存することができます: 'HSET container one a:b'、' HSET container two c:d ' –
私は@ for_stackのアプローチに同意します。ハッシュを使用して、各フィールドはあなたの "キー"です。私はMessagePack(またはJSON)を使用して配列をシリアル化し、値として格納します。 –
インデックスとして使用したいのでそして、私はすでにそのように2つを作りました。私はzrank set oneのようなことをしたい、そしてそのポジションで配列を得る。不可能である? – Xhark