クラスタアーキテクチャまたは読み書き分離アーキテクチャで実行されている Tair (Redis OSS-compatible) インスタンスには、標準アーキテクチャのインスタンスとは異なる一連のコマンド制限があります。一部のコマンドは無効になっており、複数キーコマンドは異なるスロットのキーにアクセスできません。ワークロードの移行やアプリケーションコードの作成を行う前に、これらの制限事項を確認してください。
クラスターアーキテクチャのコマンド制限
クラスターインスタンスは複数の Redis バージョンと互換性があります。バージョンごとのコマンドサポートについては、「Community Edition のコマンドサポート」および「Tair (Enterprise Edition) のコマンドサポートと制限事項」をご参照ください。
クラスターアーキテクチャは、直接接続モードとプロキシモードの 2 つの接続モードをサポートしています。制限は両者で異なります。
直接接続モード
SELECT:サポートされていますが、クラスターの初期化時にのみ使用できます。ご利用のクライアントがクラスターの初期化中に SELECT をサポートしていない場合、このコマンドは利用できません。
SWAPDB:Redis 7.0 と互換性のあるインスタンスでのみサポートされています。
複数キーコマンド:すべてのキーが同じスロットにある必要があります。ハッシュタグを使用して、キーを同じスロットにグループ化します。
トランザクション:オープンソースの Redis クラスターの動作と同様に、トランザクション内のすべてのキーは同じスロットにある必要があります。
プロキシモード
プロキシモードは、クラスターのトポロジーを隠す中間レイヤーを追加することで、クライアントの互換性を向上させます。直接接続モードのすべての制限を継承し、さらに以下の制限が追加されます。
CLIENT INFO および CLIENT ID リクエストは、Redis のバージョンに関係なく、プロキシによって直接処理および返されます。
CLIENT KILL は、CLIENT KILL <ip:port> と CLIENT KILL ADDR <ip:port> の 2 つのフォーマットをサポートしています。
DEL および EXISTS は、スロットをまたいだ複数キー操作をサポートしています。
SCAN 0 は、最初のデータシャードから開始し、現在のシャードが完全にスキャンされた後にのみ次のシャードに移動し、各シャードを順次走査します。特定のシャードをスキャンするには、ISCAN コマンドを使用します。
プロキシモードのクラスターインスタンスは、管理および操作のために Alibaba Cloud 独自開発のプロキシコマンドをサポートしています。詳細については、「Alibaba Cloud 独自開発のプロキシコマンド」をご参照ください。
CLIENT LIST の出力の違い
CLIENT LIST を実行すると、プロキシはプロキシノードへのすべての接続に関する接続情報を返します。出力は、ネイティブ Redis とは次のように異なります。
| フィールド | 動作 |
|---|
id、age、idle、addr、fd、name、db、multi、omem、cmd | ネイティブ Redis と同じ意味 |
sub、psub | プロキシノードでは区別されません。両方とも 1 または 0 |
qbuf、qbuf-free、obl、oll | 特定の意味はありません |
プロキシモードでのトランザクションの動作
トランザクションの動作は、対象となるキーのスロットへの分散状況によって異なります。
| シナリオ | 結果 |
|---|
| すべてのキーが同じスロットにある | トランザクションは正常に実行されます。完全なトランザクションセマンティクスが適用されます |
| キーは異なるスロットにあるが、個々のコマンドのキーは同じスロットにある | トランザクションは正常に実行されます。セマンティクスはコマンドごとに保証されますが、異なるスロットにキーを持つコマンド間では保証されません |
| 異なるスロットにキーを持つ単一のコマンド | コマンドは実行できません |
| キーなしコマンド | 一部はトランザクション内でサポートされていません。以下のコマンドサポート表をご参照ください |
さらに、Redis クラスターには Lua スクリプトの使用に関するいくつかの制限があります。Tair (Redis OSS-compatible) のクラスターアーキテクチャには追加の制限があります。詳細については、「クラスターアーキテクチャの特別な制限事項」をご参照ください。
プロキシモードのコマンドサポート表
以下の表は、プロキシモードのクラスターアーキテクチャと読み書き分離アーキテクチャの両方に適用されます。
凡例:
| 記号 | 意味 |
|---|
| ✔️ | サポートされています。複数キーコマンドの場合、スロットをまたいだ操作が許可されます。 |
| ⭕️ | 制限付きでサポートされています。すべてのキーは同じスロットにある必要があります (ハッシュタグを使用)。 |
| ❌ | サポートされていません。 |
| 注 ① | OK または空の結果のみを返します。実際には実行されません。一部のクライアントフレームワークとの互換性のために含まれています。 |
| 注 ② | Redis のバージョンに関係なく、プロキシによって直接処理および返されます。 |
ビットマップ
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| BITCOUNT | ✔️ | ✔️ | ✔️ | ✔️ |
| BITFIELD | ✔️ | ✔️ | ✔️ | ✔️ |
| BITFIELD_RO | ❌ | ❌ | ❌ | ❌ |
| BITOP | ⭕️ | ⭕️ | ✔️ | ✔️ |
| BITPOS | ✔️ | ✔️ | ✔️ | ✔️ |
| GETBIT | ✔️ | ✔️ | ✔️ | ✔️ |
| SETBIT | ✔️ | ✔️ | ✔️ | ✔️ |
クラスター管理
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| CLUSTER ADDSLOTS ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER ADDSLOTSRANGE | ❌ | ❌ | ❌ | ❌ |
| CLUSTER BUMPEPOCH | ❌ | ❌ | ❌ | ❌ |
| CLUSTER COUNT-FAILURE-REPORTS ② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER COUNTKEYSINSLOT ② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER DELSLOTS ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER DELSLOTSRANGE | ❌ | ❌ | ❌ | ❌ |
| CLUSTER FAILOVER ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER FLUSHSLOTS | ❌ | ❌ | ❌ | ❌ |
| CLUSTER FORGET ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER GETKEYSINSLOT ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER INFO ② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER KEYSLOT ② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER LINKS | ❌ | ❌ | ❌ | ❌ |
| CLUSTER MEET ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER MYID | ❌ | ❌ | ❌ | ❌ |
| CLUSTER NODES ② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER REPLICAS | ❌ | ❌ | ❌ | ❌ |
| CLUSTER REPLICATE ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER RESET ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER SAVECONFIG ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER SET-CONFIG-EPOCH ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER SETSLOT ①② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER SHARDS ② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER MYSHARDID ② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER SLAVES ② | ✔️ | ❌ | ✔️ | ❌ |
| CLUSTER SLOTS ② | ✔️ | ❌ | ✔️ | ❌ |
| READONLY ①② | ✔️ | ❌ | ✔️ | ❌ |
| READWRITE ①② | ✔️ | ❌ | ✔️ | ❌ |
接続管理
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| AUTH | ✔️ | ❌ | ✔️ | ✔️ |
| CLIENT CACHING | ❌ | ❌ | ❌ | ❌ |
| CLIENT GETNAME ② | ✔️ | ❌ | ✔️ | ❌ |
| CLIENT GETREDIR | ❌ | ❌ | ❌ | ❌ |
| CLIENT ID ② | ✔️ | ❌ | ✔️ | ❌ |
| CLIENT INFO ② | ✔️ | ❌ | ✔️ | ❌ |
| CLIENT KILL ② | ✔️ | ❌ | ✔️ | ❌ |
| CLIENT LIST ② | ✔️ | ❌ | ✔️ | ❌ |
| CLIENT NO-EVICT | ❌ | ❌ | ❌ | ❌ |
| CLIENT PAUSE | ❌ | ❌ | ❌ | ❌ |
| CLIENT REPLY | ❌ | ❌ | ❌ | ❌ |
| CLIENT SETNAME ② | ✔️ | ❌ | ✔️ | ❌ |
| CLIENT SETINFO ② | ✔️ | ❌ | ✔️ | ❌ |
| CLIENT TRACKING | ❌ | ❌ | ❌ | ❌ |
| CLIENT TRACKINGINFO | ❌ | ❌ | ❌ | ❌ |
| CLIENT UNBLOCK | ❌ | ❌ | ❌ | ❌ |
| CLIENT UNPAUSE | ❌ | ❌ | ❌ | ❌ |
| ECHO | ✔️ | ❌ | ✔️ | ✔️ |
| HELLO | ✔️ (制限付き) | ✔️ (制限付き) | ✔️ (制限付き) | ✔️ (制限付き) |
| PING ② | ✔️ | ❌ | ✔️ | ✔️ |
| QUIT ② | ✔️ | ✔️ | ✔️ | ✔️ |
| RESET | ❌ | ❌ | ❌ | ❌ |
| SELECT | ✔️ | ✔️ | ✔️ | ✔️ |
HELLO はデフォルトでは無効になっています。有効にするには、プロキシのマイナーバージョンをアップグレードして 7.0.9 以降にし、有効にして [hello_enabled] パラメーターを有効にします。
汎用
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| COPY | ⭕️ | ⭕️ | ✔️ | ✔️ |
| DEL | ✔️ | ⭕️ | ✔️ | ✔️ |
| DUMP | ✔️ | ✔️ | ✔️ | ✔️ |
| EXISTS | ✔️ | ⭕️ | ✔️ | ✔️ |
| EXPIRE | ✔️ | ✔️ | ✔️ | ✔️ |
| EXPIREAT | ✔️ | ✔️ | ✔️ | ✔️ |
| EXPIRETIME | ✔️ | ✔️ | ✔️ | ✔️ |
| KEYS | ✔️ | ❌ | ✔️ | ✔️ |
| MIGRATE | ❌ | ❌ | ❌ | ❌ |
| MOVE | ✔️ | ✔️ | ✔️ | ✔️ |
| OBJECT | ✔️ | ✔️ | ✔️ | ✔️ |
| OBJECT HELP | ✔️ | ✔️ | ✔️ | ✔️ |
| PERSIST | ✔️ | ✔️ | ✔️ | ✔️ |
| PEXPIRE | ✔️ | ✔️ | ✔️ | ✔️ |
| PEXPIREAT | ✔️ | ✔️ | ✔️ | ✔️ |
| PEXPIRETIME | ✔️ | ✔️ | ✔️ | ✔️ |
| PTTL | ✔️ | ✔️ | ✔️ | ✔️ |
| RANDOMKEY | ✔️ | ❌ | ✔️ | ✔️ |
| RENAME | ⭕️ | ⭕️ | ✔️ | ✔️ |
| RENAMENX | ⭕️ | ⭕️ | ✔️ | ✔️ |
| RESTORE | ✔️ | ✔️ | ✔️ | ✔️ |
| SCAN | ✔️ | ❌ | ✔️ | ✔️ |
| SORT | ⭕️ | ⭕️ | ✔️ | ✔️ |
| SORT_RO | ⭕️ | ⭕️ | ✔️ | ✔️ |
| TOUCH | ✔️ | ⭕️ | ✔️ | ✔️ |
| TTL | ✔️ | ✔️ | ✔️ | ✔️ |
| TYPE | ✔️ | ✔️ | ✔️ | ✔️ |
| UNLINK | ✔️ | ⭕️ | ✔️ | ✔️ |
| WAIT | ✔️ | ❌ | ✔️ | ✔️ |
| WAITAOF | ✔️ | ❌ | ✔️ | ✔️ |
地理空間インデックス
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| GEOADD | ✔️ | ✔️ | ✔️ | ✔️ |
| GEODIST | ✔️ | ✔️ | ✔️ | ✔️ |
| GEOHASH | ✔️ | ✔️ | ✔️ | ✔️ |
| GEOPOS | ✔️ | ✔️ | ✔️ | ✔️ |
| GEORADIUS | ⭕️ | ⭕️ | ✔️ | ✔️ |
| GEORADIUSBYMEMBER | ⭕️ | ⭕️ | ✔️ | ✔️ |
| GEOSEARCH | ✔️ | ✔️ | ✔️ | ✔️ |
| GEOSEARCHSTORE | ⭕️ | ⭕️ | ✔️ | ✔️ |
ハッシュ
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| HDEL | ✔️ | ✔️ | ✔️ | ✔️ |
| HEXISTS | ✔️ | ✔️ | ✔️ | ✔️ |
| HGET | ✔️ | ✔️ | ✔️ | ✔️ |
| HGETALL | ✔️ | ✔️ | ✔️ | ✔️ |
| HINCRBY | ✔️ | ✔️ | ✔️ | ✔️ |
| HINCRBYFLOAT | ✔️ | ✔️ | ✔️ | ✔️ |
| HKEYS | ✔️ | ✔️ | ✔️ | ✔️ |
| HLEN | ✔️ | ✔️ | ✔️ | ✔️ |
| HMGET | ✔️ | ✔️ | ✔️ | ✔️ |
| HMSET | ✔️ | ✔️ | ✔️ | ✔️ |
| HRANDFIELD | ✔️ | ✔️ | ✔️ | ✔️ |
| HSCAN | ✔️ | ✔️ | ✔️ | ✔️ |
| HSET | ✔️ | ✔️ | ✔️ | ✔️ |
| HSETNX | ✔️ | ✔️ | ✔️ | ✔️ |
| HSTRLEN | ✔️ | ✔️ | ✔️ | ✔️ |
| HVALS | ✔️ | ✔️ | ✔️ | ✔️ |
HyperLogLog
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| PFADD | ✔️ | ✔️ | ✔️ | ✔️ |
| PFCOUNT | ⭕️ | ⭕️ | ✔️ | ✔️ |
| PFMERGE | ⭕️ | ⭕️ | ✔️ | ✔️ |
リスト
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| BLPOP | ⭕️ | ⭕️ | ✔️ | ✔️ |
| BLMOVE | ⭕️ | ⭕️ | ✔️ | ✔️ |
| BLMPOP | ⭕️ | ⭕️ | ✔️ | ✔️ |
| BRPOP | ⭕️ | ⭕️ | ✔️ | ✔️ |
| BRPOPLPUSH | ⭕️ | ⭕️ | ✔️ | ✔️ |
| LINDEX | ✔️ | ✔️ | ✔️ | ✔️ |
| LINSERT | ✔️ | ✔️ | ✔️ | ✔️ |
| LLEN | ✔️ | ✔️ | ✔️ | ✔️ |
| LMOVE | ⭕️ | ⭕️ | ✔️ | ✔️ |
| LMPOP | ⭕️ | ⭕️ | ✔️ | ✔️ |
| LPOP | ✔️ | ✔️ | ✔️ | ✔️ |
| LPUSH | ✔️ | ✔️ | ✔️ | ✔️ |
| LPUSHX | ✔️ | ✔️ | ✔️ | ✔️ |
| LRANGE | ✔️ | ✔️ | ✔️ | ✔️ |
| LREM | ✔️ | ✔️ | ✔️ | ✔️ |
| LSET | ✔️ | ✔️ | ✔️ | ✔️ |
| LTRIM | ✔️ | ✔️ | ✔️ | ✔️ |
| RPOP | ✔️ | ✔️ | ✔️ | ✔️ |
| RPOPLPUSH | ⭕️ | ⭕️ | ✔️ | ✔️ |
| RPUSH | ✔️ | ✔️ | ✔️ | ✔️ |
| RPUSHX | ✔️ | ✔️ | ✔️ | ✔️ |
Pub/Sub
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| PSUBSCRIBE | ✔️ | ❌ | ✔️ | ❌ |
| PUBLISH | ✔️ | ✔️ | ✔️ | ✔️ |
| PUBSUB | ✔️ | ❌ | ✔️ | ✔️ |
| PUBSUB HELP | ❌ | ❌ | ❌ | ❌ |
| PUBSUB SHARDCHANNELS | ✔️ | ❌ | ✔️ | ✔️ |
| PUBSUB SHARDNUMSUB | ✔️ | ❌ | ✔️ | ✔️ |
| PUNSUBSCRIBE | ✔️ | ❌ | ✔️ | ❌ |
| SPUBLISH | ✔️ | ✔️ | ✔️ | ✔️ |
| SUBSCRIBE | ✔️ | ❌ | ✔️ | ❌ |
| SSUBSCRIBE | ✔️ | ❌ | ✔️ | ❌ |
| SUNSUBSCRIBE | ✔️ | ❌ | ✔️ | ❌ |
| UNSUBSCRIBE | ✔️ | ❌ | ✔️ | ❌ |
スクリプトと関数
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| EVAL | ⭕️ | ❌ | ✔️ | ✔️ |
| EVAL_RO | ⭕️ | ❌ | ✔️ | ✔️ |
| EVALSHA | ⭕️ | ❌ | ✔️ | ✔️ |
| EVALSHA_RO | ⭕️ | ❌ | ✔️ | ✔️ |
| FCALL | ⭕️ | ❌ | ✔️ | ✔️ |
| FCALL_RO | ⭕️ | ❌ | ✔️ | ✔️ |
| FUNCTION DELETE | ✔️ | ❌ | ✔️ | ❌ |
| FUNCTION DUMP | ✔️ | ❌ | ✔️ | ❌ |
| FUNCTION FLUSH | ✔️ | ❌ | ✔️ | ❌ |
| FUNCTION HELP | ✔️ | ❌ | ✔️ | ❌ |
| FUNCTION KILL | ✔️ | ❌ | ✔️ | ❌ |
| FUNCTION LIST | ✔️ | ❌ | ✔️ | ❌ |
| FUNCTION LOAD | ✔️ | ❌ | ✔️ | ❌ |
| FUNCTION RESTORE | ✔️ | ❌ | ✔️ | ❌ |
| FUNCTION STATS | ✔️ | ❌ | ✔️ | ❌ |
| SCRIPT DEBUG | ❌ | ❌ | ❌ | ❌ |
| SCRIPT EXISTS | ✔️ | ❌ | ✔️ | ❌ |
| SCRIPT FLUSH | ✔️ | ❌ | ✔️ | ❌ |
| SCRIPT KILL | ✔️ | ❌ | ✔️ | ❌ |
| SCRIPT LOAD | ✔️ | ❌ | ✔️ | ❌ |
サーバー管理
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| ACL CAT | ❌ | ❌ | ❌ | ❌ |
| ACL DELUSER | ❌ | ❌ | ❌ | ❌ |
| ACL DRYRUN | ❌ | ❌ | ❌ | ➖ |
| ACL GENPASS | ❌ | ❌ | ❌ | ❌ |
| ACL GETUSER | ❌ | ❌ | ❌ | ❌ |
| ACL HELP | ❌ | ❌ | ❌ | ❌ |
| ACL LIST | ❌ | ❌ | ❌ | ❌ |
| ACL LOAD | ❌ | ❌ | ❌ | ❌ |
| ACL LOG | ❌ | ❌ | ❌ | ❌ |
| ACL SAVE | ❌ | ❌ | ❌ | ❌ |
| ACL SETUSER | ❌ | ❌ | ❌ | ❌ |
| ACL USERS | ❌ | ❌ | ❌ | ❌ |
| ACL WHOAMI | ❌ | ❌ | ❌ | ❌ |
| BGREWRITEAOF | ❌ | ❌ | ❌ | ❌ |
| BGSAVE | ❌ | ❌ | ❌ | ❌ |
| COMMAND | ✔️ | ❌ | ✔️ | ✔️ |
| COMMAND COUNT | ✔️ | ❌ | ✔️ | ✔️ |
| COMMAND DOCS | ✔️ | ❌ | ✔️ | ✔️ |
| COMMAND GETKEYS | ✔️ | ❌ | ✔️ | ✔️ |
| COMMAND GETKEYSANDFLAGS | ✔️ | ❌ | ✔️ | ✔️ |
| COMMAND INFO | ✔️ | ❌ | ✔️ | ✔️ |
| COMMAND LIST | ✔️ | ❌ | ✔️ | ✔️ |
| CONFIG GET | ✔️ | ❌ | ✔️ | ✔️ |
| CONFIG HELP | ❌ | ❌ | ❌ | ❌ |
| CONFIG RESETSTAT | ❌ | ❌ | ❌ | ❌ |
| CONFIG REWRITE | ❌ | ❌ | ❌ | ❌ |
| CONFIG SET ①② | ✔️ | ❌ | ✔️ | ✔️ |
| DBSIZE | ✔️ | ❌ | ✔️ | ✔️ |
| DEBUG OBJECT | ❌ | ❌ | ❌ | ❌ |
| DEBUG SEGFAULT | ❌ | ❌ | ❌ | ❌ |
| FAILOVER | ❌ | ❌ | ❌ | ❌ |
| FLUSHALL | ✔️ | ❌ | ✔️ | ✔️ |
| FLUSHDB | ✔️ | ❌ | ✔️ | ✔️ |
| INFO | ✔️ | ❌ | ✔️ | ✔️ |
| LASTSAVE | ❌ | ❌ | ❌ | ❌ |
| LATENCY DOCTOR | ❌ | ❌ | ❌ | ❌ |
| LATENCY GRAPH | ❌ | ❌ | ❌ | ❌ |
| LATENCY HELP | ❌ | ❌ | ❌ | ❌ |
| LATENCY HISTOGRAM | ❌ | ❌ | ❌ | ❌ |
| LATENCY HISTORY | ❌ | ❌ | ❌ | ❌ |
| LATENCY LATEST | ❌ | ❌ | ❌ | ❌ |
| LATENCY RESET | ❌ | ❌ | ❌ | ❌ |
| LOLWUT | ✔️ | ❌ | ✔️ | ✔️ |
| MEMORY DOCTOR | ✔️ | ❌ | ✔️ | ❌ |
| MEMORY HELP | ✔️ | ❌ | ✔️ | ❌ |
| MEMORY MALLOC-STATS | ✔️ | ❌ | ✔️ | ❌ |
| MEMORY PURGE | ✔️ | ❌ | ✔️ | ❌ |
| MEMORY STATS | ✔️ | ❌ | ✔️ | ❌ |
| MEMORY USAGE | ✔️ | ❌ | ✔️ | ❌ |
| MODULE LIST | ❌ | ❌ | ❌ | ❌ |
| MODULE LOAD | ❌ | ❌ | ❌ | ❌ |
| MODULE LOADEX | ❌ | ❌ | ❌ | ❌ |
| MODULE UNLOAD | ❌ | ❌ | ❌ | ❌ |
| MONITOR | ✔️ | ❌ | ✔️ | ❌ |
| PSYNC | ❌ | ❌ | ❌ | ❌ |
| REPLICAOF | ❌ | ❌ | ❌ | ❌ |
| ROLE ② | ✔️ | ❌ | ✔️ | ❌ |
| SAVE | ❌ | ❌ | ❌ | ❌ |
| SHUTDOWN | ❌ | ❌ | ❌ | ❌ |
| SLAVEOF | ❌ | ❌ | ❌ | ❌ |
| SLOWLOG | ✔️ | ❌ | ✔️ | ✔️ |
| SLOWLOG HELP | ✔️ | ❌ | ✔️ | ✔️ |
| SLOWLOG RESET | ✔️ | ❌ | ✔️ | ✔️ |
| SWAPDB | ✔️ | ❌ | ✔️ | ✔️ |
| SYNC | ❌ | ❌ | ❌ | ❌ |
| TIME | ✔️ | ❌ | ✔️ | ✔️ |
Sentinel
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| SENTINEL sentinels ② | ✔️ | ❌ | ✔️ | ❌ |
| SENTINEL get-master-addr-by-name ② | ✔️ | ❌ | ✔️ | ❌ |
セット
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| SADD | ✔️ | ✔️ | ✔️ | ✔️ |
| SCARD | ✔️ | ✔️ | ✔️ | ✔️ |
| SDIFF | ✔️ | ⭕️ | ✔️ | ✔️ |
| SDIFFSTORE | ✔️ | ⭕️ | ✔️ | ✔️ |
| SINTER | ✔️ | ⭕️ | ✔️ | ✔️ |
| SINTERCARD | ✔️ | ⭕️ | ✔️ | ✔️ |
| SINTERSTORE | ✔️ | ⭕️ | ✔️ | ✔️ |
| SISMEMBER | ✔️ | ✔️ | ✔️ | ✔️ |
| SMEMBERS | ✔️ | ✔️ | ✔️ | ✔️ |
| SMISMEMBER | ✔️ | ✔️ | ✔️ | ✔️ |
| SMOVE | ✔️ | ⭕️ | ✔️ | ✔️ |
| SPOP | ✔️ | ✔️ | ✔️ | ✔️ |
| SRANDMEMBER | ✔️ | ✔️ | ✔️ | ✔️ |
| SREM | ✔️ | ✔️ | ✔️ | ✔️ |
| SSCAN | ✔️ | ✔️ | ✔️ | ✔️ |
| SUNION | ✔️ | ⭕️ | ✔️ | ✔️ |
| SUNIONSTORE | ✔️ | ⭕️ | ✔️ | ✔️ |
ソート済みセット
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| BZMPOP | ⭕️ | ⭕️ | ✔️ | ✔️ |
| BZPOPMAX | ⭕️ | ⭕️ | ✔️ | ✔️ |
| BZPOPMIN | ⭕️ | ⭕️ | ✔️ | ✔️ |
| ZADD | ✔️ | ✔️ | ✔️ | ✔️ |
| ZCARD | ✔️ | ✔️ | ✔️ | ✔️ |
| ZCOUNT | ✔️ | ✔️ | ✔️ | ✔️ |
| ZDIFF | ✔️ | ⭕️ | ✔️ | ✔️ |
| ZDIFFSTORE | ✔️ | ⭕️ | ✔️ | ✔️ |
| ZINCRBY | ✔️ | ✔️ | ✔️ | ✔️ |
| ZINTER | ✔️ | ✔️ | ✔️ | ✔️ |
| ZINTERCARD | ✔️ | ⭕️ | ✔️ | ✔️ |
| ZINTERSTORE | ✔️ | ⭕️ | ✔️ | ✔️ |
| ZLEXCOUNT | ✔️ | ✔️ | ✔️ | ✔️ |
| ZMPOP | ⭕️ | ⭕️ | ✔️ | ✔️ |
| ZMSCORE | ✔️ | ✔️ | ✔️ | ✔️ |
| ZPOPMAX | ✔️ | ✔️ | ✔️ | ✔️ |
| ZPOPMIN | ✔️ | ✔️ | ✔️ | ✔️ |
| ZRANDMEMBER | ✔️ | ✔️ | ✔️ | ✔️ |
| ZRANGE | ✔️ | ✔️ | ✔️ | ✔️ |
| ZRANGEBYLEX | ✔️ | ✔️ | ✔️ | ✔️ |
| ZRANGEBYSCORE | ✔️ | ✔️ | ✔️ | ✔️ |
| ZRANGESTORE | ⭕️ | ⭕️ | ✔️ | ✔️ |
| ZRANK | ✔️ | ✔️ | ✔️ | ✔️ |
| ZREM | ✔️ | ✔️ | ✔️ | ✔️ |
| ZREMRANGEBYLEX | ✔️ | ✔️ | ✔️ | ✔️ |
| ZREMRANGEBYRANK | ✔️ | ✔️ | ✔️ | ✔️ |
| ZREMRANGEBYSCORE | ✔️ | ✔️ | ✔️ | ✔️ |
| ZREVRANGE | ✔️ | ✔️ | ✔️ | ✔️ |
| ZREVRANGEBYLEX | ✔️ | ✔️ | ✔️ | ✔️ |
| ZREVRANGEBYSCORE | ✔️ | ✔️ | ✔️ | ✔️ |
| ZREVRANK | ✔️ | ✔️ | ✔️ | ✔️ |
| ZSCAN | ✔️ | ✔️ | ✔️ | ✔️ |
| ZSCORE | ✔️ | ✔️ | ✔️ | ✔️ |
| ZUNION | ✔️ | ⭕️ | ✔️ | ✔️ |
| ZUNIONSTORE | ✔️ | ⭕️ | ✔️ | ✔️ |
ストリーム
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| XACK | ✔️ | ✔️ | ✔️ | ✔️ |
| XADD | ✔️ | ✔️ | ✔️ | ✔️ |
| XAUTOCLAIM | ✔️ | ✔️ | ✔️ | ✔️ |
| XCLAIM | ✔️ | ✔️ | ✔️ | ✔️ |
| XDEL | ✔️ | ✔️ | ✔️ | ✔️ |
| XGROUP | ✔️ | ✔️ | ✔️ | ✔️ |
| XGROUP CREATECONSUMER | ✔️ | ✔️ | ✔️ | ✔️ |
| XINFO | ✔️ | ✔️ | ✔️ | ✔️ |
| XLEN | ✔️ | ✔️ | ✔️ | ✔️ |
| XPENDING | ✔️ | ✔️ | ✔️ | ✔️ |
| XRANGE | ✔️ | ✔️ | ✔️ | ✔️ |
| XREAD | ⭕️ | ⭕️ | ✔️ | ✔️ |
| XREADGROUP | ⭕️ | ⭕️ | ✔️ | ✔️ |
| XREVRANGE | ✔️ | ✔️ | ✔️ | ✔️ |
| XTRIM | ✔️ | ✔️ | ✔️ | ✔️ |
文字列
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| APPEND | ✔️ | ✔️ | ✔️ | ✔️ |
| DECR | ✔️ | ✔️ | ✔️ | ✔️ |
| DECRBY | ✔️ | ✔️ | ✔️ | ✔️ |
| GET | ✔️ | ✔️ | ✔️ | ✔️ |
| GETDEL | ✔️ | ✔️ | ✔️ | ✔️ |
| GETEX | ✔️ | ✔️ | ✔️ | ✔️ |
| GETRANGE | ✔️ | ✔️ | ✔️ | ✔️ |
| GETSET | ✔️ | ✔️ | ✔️ | ✔️ |
| LCS | ✔️ | ⭕️ | ✔️ | ✔️ |
| INCR | ✔️ | ✔️ | ✔️ | ✔️ |
| INCRBY | ✔️ | ✔️ | ✔️ | ✔️ |
| INCRBYFLOAT | ✔️ | ✔️ | ✔️ | ✔️ |
| MGET | ✔️ | ⭕️ | ✔️ | ✔️ |
| MSET | ✔️ | ⭕️ | ✔️ | ✔️ |
| MSETNX | ⭕️ | ⭕️ | ✔️ | ✔️ |
| PSETEX | ✔️ | ✔️ | ✔️ | ✔️ |
| SET | ✔️ | ✔️ | ✔️ | ✔️ |
| SETEX | ✔️ | ✔️ | ✔️ | ✔️ |
| SETNX | ✔️ | ✔️ | ✔️ | ✔️ |
| SETRANGE | ✔️ | ✔️ | ✔️ | ✔️ |
| STRALGO | ❌ | ❌ | ❌ | ❌ |
| STRLEN | ✔️ | ✔️ | ✔️ | ✔️ |
トランザクション
| コマンド | クラスターアーキテクチャ | クラスターアーキテクチャのトランザクションで許可 | 読み書き分離アーキテクチャ | 読み書き分離アーキテクチャのトランザクションで許可 |
|---|
| DISCARD | ✔️ | ✔️ | ✔️ | ✔️ |
| EXEC | ✔️ | ✔️ | ✔️ | ✔️ |
| MULTI | ✔️ | ❌ | ✔️ | ❌ |
| UNWATCH | ✔️ | ❌ | ✔️ | ✔️ |
| WATCH | ⭕️ | ❌ | ✔️ | ❌ |
よくある質問
プロキシモードのクラスターアーキテクチャおよび読み書き分離アーキテクチャのインスタンスは WAIT コマンドをサポートしていますか?
はい。 WAIT はプロキシバージョン 7.1.5 以降でサポートされています。 以前のバージョンをお使いの場合は、プロキシバージョンをスペックアップしてください。