ある企業が、Amazon Redshift でビジネスインテリジェンス(BI)ダッシュボードへのクエリを実行している。複数の BI ユーザーが同時にクエリを実行すると待ち時間が長くなり、パフォーマンスが低下する問題がある。特に、軽量な短時間クエリが重い長時間クエリの後ろで待たされることが多い。コストを最小限に抑えながらこの問題を解決する最も適切な方法はどれか。
- A. BI ユーザーごとに別々の Redshift クラスターを作成し、クエリが干渉しないようにする。
- B. Redshift クラスターのノード数を増やしてコンピューティング能力を向上させる。
- C. Redshift Serverless に移行してクエリ数に応じて自動的にキャパシティをスケールする。
- D. Redshift のワークロード管理(WLM)でショートクエリアクセラレーション(SQA)を有効化し、短時間クエリが専用の軽量キューで優先処理されるようにする。
解答と解説を見る
正解: D
Redshift のショートクエリアクセラレーション(SQA)は、機械学習を使って実行時間が短いクエリを予測し、専用のショートクエリキューで優先的に処理する機能である。これにより、短時間クエリが重い長時間クエリに待たされる問題を解消できる。WLM の設定変更だけで有効化でき、追加コストも発生しない。選択肢Bのノード増加はクラスター全体のスループットを向上させるが、コストが増加し、短時間クエリの優先処理という本質的な問題を解決しない。選択肢AのBI ユーザーごとの個別クラスター作成は非常にコスト増加が大きく、「コスト最小限」の要件に反する。選択肢CのRedshift Serverless は使用量に応じた課金で弾力性は高いが、クラスター型 Redshift に比べてコストが高くなる場合があり、SQA という既存機能で解決できる問題にクラスター移行は過剰である。
📚 関連サービスの解説: Amazon Redshift