Q44 — AWS DEA-C01 第1章
第 44/100 問 | ← 第1章
ある企業は、データベースとしてAmazon Redshiftプロビジョニングクラスターを使用しています。Redshiftクラスターは5台の予約済みra3.4xlargeノードで構成されており、キーディストリビューションを使用しています。 データエンジニアは、ノードの1台が頻繁にCPU負荷90%を超えており、そのノードで実行されるSQLクエリがキューに並んでいることに気づきました。他の4台のノードは、日常業務中に通常CPU負荷が15%未満です。 データエンジニアは、現在のコンピュートノード数を維持したいと考えています。また、5台のコンピュートノード全体に負荷をより均等に分散させたいと考えています。 これらの要件を満たすソリューションはどれですか?
- A. ソートキーを、SQL SELECT文のWHERE句で最も頻繁に使用されるデータ列に変更します。
- B. ディストリビューションキーを、最大の次元を持つテーブル列に変更します。 ✓
- C. 予約済みノードをra3.4xlargeからra3.16xlargeにアップグレードします。
- D. プライマリキーを、SQL SELECT文のWHERE句で最も頻繁に使用されるデータ列に変更します。
正解: B. ディストリビューションキーを、最大の次元を持つテーブル列に変更します。
解説
Amazon Redshiftでは、データ分布の不均衡が特定ノードの負荷過多を引き起こし、他のノードの負荷が低くなる原因となります。負荷を均等化するには、データの分布を調整する必要があります。選択肢AおよびDで言及されるソートキーおよびプライマリキーの変更は、クエリパフォーマンスに影響を与える可能性がありますが、ノード間の負荷不均衡を直接解決しません。選択肢Cで言及されるノードタイプのアップグレードは、単一ノードの処理能力を向上させますが、負荷がすべてのノードに均等に分散される保証はありません。一方、選択肢Bで言及される「最大の次元を持つテーブル列」へのディストリビューションキーの変更は、データの分布に直接影響を与え、ノード間の負荷バランスをより確実に改善する可能性があります。したがって、Bの選択肢が要件を満たすソリューションです。