ワークロード管理の実装
Amazon Redshift WLM は、自動 WLM または手動 WLM で実行するように設定できます。
自動 WLM
システムのスループットを最大化し、リソースを効率的に使用するには、Amazon Redshift で、同時実行クエリを自動 WLM で実行するためのリソースの分割方法を管理できます。自動 WLM は、クエリの実行に必要なリソースを管理します。Amazon Redshift は、ディスパッチされたクエリごとに割り当てる同時実行クエリ数とメモリ量を決定します。Amazon Redshift で、同時実行クエリを実行するためにリソースの分割方法を管理する場合は、自動 WLM を使用します。詳細については、「自動 WLM の実装」を参照してください。
同時実行スケーリングや自動 WLM を使用すると、一貫した高速のクエリパフォーマンスで、事実上無制限の同時ユーザーと同時クエリをサポートできます。詳細については、「同時実行スケーリングを使用する」を参照してください。
注記
ほとんどの場合では、自動 WLM を使用することをお勧めします。手動 WLM を使用していて、自動 WLM から/に移行する場合は、「手動 WLM から自動 WLM に移行する」を参照してください。
自動 WLM では、キュー内のワークロードのクエリ優先順位を定義できます。クエリの優先度の詳細については、「クエリ優先度」を参照してください。
手動 WLM
複数のセッションやユーザーが同時にクエリを実行している場合があります。一部のクエリがクラスターリソースを長時間消費して、他のクエリのパフォーマンスに影響を与えることがあります。手動 WLM は、特殊なユースケースでこれを管理するのに役立ちます。同時実行をより細かく制御する場合は、手動 WLM を使用してください。
WLM 設定を変更して、実行時間が長いクエリと短いクエリ用に異なるキューを作成することによって、システムパフォーマンスを管理できます。実行時に、ユーザーグループまたはクエリグループに従って、これらのクエリをキューに配信できます。
クエリを実行するユーザーや指定したラベルに基づいて特定のキューにクエリをルーティングするためのルールを設定できます。各キューに割り当てるメモリの量を設定することによって、大きいクエリを他のキューよりメモリの多いキューで実行することもできます。また、実行時間が長いクエリを制限するようにクエリモニタリングルール (QMR) を設定することもできます。詳細については、「手動 WLM を実装する」を参照してください。
注記
手動 WLM クエリキューのクエリスロットは合計 15 個以下にすることをお勧めします。詳細については、「同時実行レベル」を参照してください。
手動 WLM 設定では、キューに割り当てることができる最大スロット数は 50 であることに注意してください。ただし、これは、自動 WLM 設定で Amazon Redshift クラスターが常に 50 個のクエリを同時に実行するという意味ではありません。これは、必要なメモリやクラスター上の他の種類のリソース割り当てに基づいて変わる可能性があります。