翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Redshift データウェアハウスのアーキテクチャコンポーネント
Amazon Redshift データウェアハウスのコアアーキテクチャコンポーネントの基本事項について理解しておくことをお勧めします。この知識は、最適なパフォーマンスを実現するためにクエリとテーブルを設計する方法をよりよく理解するのに役立ちます。
Amazon Redshift のデータウェアハウスは、次のコアアーキテクチャコンポーネントで構成されます。
-
クラスター – 1 つ以上のコンピューティングノードで構成されるクラスターは、Amazon Redshift データウェアハウスのコアインフラストラクチャコンポーネントです。コンピューティングノードは外部アプリケーションに対して透過的ですが、クライアントアプリケーションはリーダーノードとのみ直接やり取りします。一般的なクラスターには、2 つ以上のコンピューティングノードがあります。コンピューティングノードは、リーダーノードを介して調整されます。
-
リーダーノード – リーダーノードは、クライアントプログラムとすべてのコンピューティングノードの通信を管理します。また、リーダーノードは、クエリがクラスターに送信されるたびにクエリを実行するためのプランも準備します。プランの準備が整ったら、リーダーノードでコードをコンパイルし、コンパイル済みのコードをコンピューティングノードに配布してから、データの一部分を各コンピューティングノードに割り当てて、クエリ結果を処理します。
-
コンピューティングノード – コンピューティングノードでクエリを実行します。リーダーノードは、クエリ実行プランの個々の要素にコードをコンパイルし、コードを個々のコンピューティングノードに割り当てます。コンピューティングノードは、コンパイル済みのコードを実行し、最終的な集計のために中間結果をリーダーノードに返送します。各コンピューティングノードには、専用の CPU、メモリ、接続されているディスクストレージがあります ワークロードが増えるに従って、ノードの数を増やすかノードの種類をアップグレードして、または両方を行って、クラスターのコンピューティング能力とストレージ容量を拡張できます。
-
ノードスライス – コンピューティングノードはスライスと呼ばれる単位に分割されます。コンピューティングノードの各スライスにノードのメモリとディスク容量の一部が割り当てられ、ノードに割り当てられたワークロードの一部分を処理します。スライスは、並列処理を行って操作を完了します。データは、特定のテーブルの分散スタイルと分散キーに基づいて、スライス間で分散されます。データを均等に分散することで、Amazon Redshift がワークロードをスライスに均等に割り当てられるようになり、並列処理の利点を最大化できます。コンピューティングノードあたりのスライス数は、ノードのタイプに基づいて決定されます。詳細については、Amazon Redshift ドキュメントの「Amazon Redshift のクラスターとノード」を参照してください。
-
超並列処理 (MPP) – Amazon Redshift は MPP アーキテクチャを使用して、複雑なクエリや膨大な量のデータであっても、データを迅速に処理します。複数のコンピューティングノードが一部のデータに同じクエリコードを実行して、並列処理を最大化します。
-
クライアントアプリケーション – Amazon Redshift は、さまざまな抽出、変換、ロード (ETL)、ビジネスインテリジェンス (BI) レポート、データマイニング、そして分析ツールと統合されています。すべてのクライアントアプリケーションは、リーダーノードを介してのみクラスターと通信します。
次の図は、Amazon Redshift データウェアハウスのアーキテクチャコンポーネントがどのように連携してクエリを高速化するかを示しています。