大きな複合項目の保存 (バルキーと Redis OSS) - Amazon ElastiCache

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

大きな複合項目の保存 (バルキーと Redis OSS)

一部のシナリオでは、アプリケーションは大きな複合項目を Valkey または Redis OSS (マルチ GB ハッシュデータセットなど) に保存することがあります。これは、Valkey または Redis のパフォーマンス問題につながることが多いため、推奨されませんOSS。例えば、クライアントはHGETALLコマンドを実行してマルチ GB ハッシュコレクション全体を取得できます。これにより、クライアント出力バッファ内の大きな項目をバッファリングする Valkey または Redis OSSサーバーに大きなメモリ圧力が発生する可能性があります。また、クラスターモードでのスロット移行の場合、シリアル化されたサイズが 256 ElastiCache MB を超える項目を含むスロットは移行しません。

大きいアイテムの問題を解決するために、以下の点を推奨します。

  • 大きな複合アイテムは複数の小さなアイテムに分割する。例えば、大きなハッシュコレクションを、そのコレクションを適切に反映したキー名スキームを使用して (アイテムのコレクションを識別する共通のプレフィックスをキー名に付けるなど)、個々のキーと値のフィールドに分割します。同じコレクション内の複数のフィールドにアトミックにアクセスする必要がある場合は、 MGET コマンドを使用して、同じコマンド内の複数のキー値を取得できます。

  • どの方法を検討しても大きなコレクションデータセットを分割できない場合は、コレクション全体ではなく、コレクション内のデータのサブセットを操作するコマンドを使用してみる。マルチ GB のコレクション全体を同一コマンドでアトミックに取得しなければならないようなユースケースは避けてください。1 つの例は、HGETALLハッシュコレクションではなく HGETまたは HMGET コマンドを使用することです。