Q77 — AWS DEA-C01 第1章
第 77/100 問 | ← 第1章
小売会社は、4台の予約済みra3.4xlarge Amazon Redshiftクラスターノードに、取引、店舗所在地、顧客情報の3つのテーブルを格納しています。すべてのテーブルはEVENテーブル分散を使用しています。 会社は店舗所在地テーブルを数年に1〜2回しか更新しません。 データエンジニアは、ほとんどのクエリにおいて、店舗所在地テーブル全体が4台のコンピュートノードすべてにブロードキャストされているため、Redshiftのキューが遅くなっていることに気づきました。データエンジニアは、店舗所在地テーブルのブロードキャストを最小限に抑えることでクエリパフォーマンスを向上させたいと考えています。 これらの要件を最もコスト効率よく満たすソリューションはどれですか?
- A. 店舗所在地テーブルの分散スタイルをEVEN分散からALL分散に変更する。 ✓
- B. 店舗所在地テーブルの分散スタイルを、次元が最も高い列に基づくKEY分散に変更する。
- C. すべてのテーブルのソートキーに、store_idという名前の結合列を追加する。
- D. Redshiftの予約済みノードを、同じインスタンスファミリー内のより大きなインスタンスサイズにアップグレードする。
正解: A. 店舗所在地テーブルの分散スタイルをEVEN分散からALL分散に変更する。
解説
この状況では、店舗所在地テーブルのブロードキャストがクエリパフォーマンス低下の原因です。オプションAは、分散スタイルをEVENからALLに変更するものです。ALL分散は、更新頻度が低く、結合操作が少ない大規模なテーブルに適しており、ブロードキャストを削減でき、コストも比較的低くなります。オプションBは、次元が最も高い列に基づいてKEY分散に変更するものですが、テーブル構造やデータ分散の再設計が必要となり、コストと複雑性が増加します。オプションCは、ソートキーへの結合列の追加ですが、ブロードキャスト問題の解決にはほとんど効果がありません。オプションDは、Redshiftの予約済みノードのインスタンスサイズをアップグレードするもので、コストが高く、ブロードキャスト問題を直接解決できません。以上より、オプションAが最もコスト効率の良いソリューションです。