1
Redis-pyクライアントを介して、レディスデータベースにキーと値のペアを保存しています。すべてのキーは一意であり、重複はありません。ここに例があります:ハッシュの有無にかかわらずキー値ペアを保存する
key = 133735570
value = {"key":133735570,"value":[[141565041,1.2],[22592300,1.0],[162439394,1.0],[19397942,1.0],[79996146,1.0],[84352985,1.0],[123276403,1.0],[18356816,1.0],[113839687,1.0],[16235789,1.0],[144779115,1.0],[94628304,1.0],[134973120,1.0],[138501363,1.0],[34351681,1.0],[80202522,1.0],[81561595,1.0],[18913677,1.0],[130488590,1.0],[128208311,1.0],[93912155,0.5]]}
パフォーマンスを向上させるには、ハッシュ(キー名と同じ)を追加しますか?たとえば、
key = 133735570
hash = 133735570
value = {"key":133735570,"value":[[141565041,1.2],[22592300,1.0],[162439394,1.0],[19397942,1.0],[79996146,1.0],[84352985,1.0],[123276403,1.0],[18356816,1.0],[113839687,1.0],[16235789,1.0],[144779115,1.0],[94628304,1.0],[134973120,1.0],[138501363,1.0],[34351681,1.0],[80202522,1.0],[81561595,1.0],[18913677,1.0],[130488590,1.0],[128208311,1.0],[93912155,0.5]]}
私の要件は、キーを検索して対応する値を取得することです。
したがって、現在のredisObject.hset(key、key、value)ではなくredisObject.hmset(key、value)を実行する必要がありますか?注:* NO *重複キーがあります。それでもメモリの効率化に役立つでしょうか? – Dexter
ああ、すでにハッシュを使用していますか? HMSETでは、1回の操作で複数のフィールド/値ペアをハッシュに設定できます。記事によると、それはメモリ効率的でなければならないが、確実に一つの方法しかないので、おそらくそれを試してみる必要があります。 – yojimbo87