2016-06-26 8 views
3

Redisで複数のキー/値を一度に挿入しようとしています(一部の値は一部、一部はハッシュです)。このエラーはERR CROSSSLOT Keys in request don't hash to the same slotです。Redis Cross Slotエラー

私はこれをredis-cliからやっていませんが、いくつかのGoコードから、複数のキー/値を書き換えクラスターに書き込む必要があります。私はこの方法で複数のキー値が実行されるコード内の他の場所を参照し、私がなぜ動作しないのか理解できず、エラーを持たないハッシュ要件が何であるか分かりません。クラスタ・トポロジで

答えて

4

おかげで、鍵空間は、ハッシュスロットに分割されます。異なるノードは、ハッシュ・スロットのサブセットを保持する。

複数キーの操作、トランザクション、またはLuaスクリプトは、関連するすべてのキーが同じノードに属するハッシュスロットにある場合にのみ許可されます。あなたはHash Tags

+1

感謝を使って、同じノードに属するようにキーを強制することができ

Redis Cluster implements all the single key commands available in the non-distributed version of Redis. Commands performing complex multi-key operations like Set type unions or intersections are implemented as well as long as the keys all belong to the same node.

、私は、それがコード – Thomas

+0

ハイテクの他の部分に働く理由です、{}パターンについて知りませんでした私の問題は、localthost接続を使って作業しています。そして、私は私のredisデータベースをawsのエラスティックキャッシュに入れました。私はライブredisに接続し、ジョブを実行しています。私はこのエラーReplyError:CROSSSLOT要求のキーは同じスロットにハッシュしない、plaseヘルプ –