Amazon Redshift Spectrum の概要
このトピックでは、Redshift Spectrum を使用して Amazon S3 から効率的に読み取る方法の詳細について説明します。
Amazon Redshift Spectrum は、クラスターに依存しない専用の Amazon Redshift サーバー上にあります。Amazon Redshift は、述語フィルタリングや集計など、大量の演算を行う多くのタスクを Redshift Spectrum レイヤーにプッシュします。したがって、Redshift Spectrum クエリが使用するクラスタの処理容量は他のクエリよりもはるかに少なくなります。Redshift Spectrum はさらに、インテリジェントに拡張します。クエリの需要に基づいて、Redshift Spectrum は潜在的に数千のインスタンスを使用して超並列処理を活用できます。
Redshift Spectrum テーブルは、ファイルの構造を定義して外部データカタログ内のテーブルとして登録することで作成します。外部データカタログは、AWS Glue、Amazon Athena を持つデータカタログ、もしくはユーザー所有の Apache Hive メタストアを指定することができます。外部テーブルは、データ定義言語 (DDL) コマンドを使用して、または外部データカタログに接続するその他の任意のツールを使用して Amazon Redshift から作成および管理できます。外部データカタログへの変更は、ただちにすべての Amazon Redshift クラスターで利用できます。
オプションで、外部テーブルを 1 つ以上の列でパーティション化できます。外部テーブルの一部としてパーティションを定義すると、パフォーマンスが向上します。パフォーマンスが向上するのは、Amazon Redshift クエリオプティマイザがクエリのデータを含まないパーティションを削除するためです。
Spectrum テーブルのマテリアライズドビューによって、コストとパフォーマンスが大幅に向上します。詳細については、「Amazon Redshift Spectrum の外部データレイクテーブルのマテリアライズドビュー」を参照してください。
Redshift Spectrum テーブルを定義すると、他の Amazon Redshift テーブルと同じようにクエリを実行してテーブル結合できるようになります。Redshift Spectrum は、外部テーブルに対する更新オペレーションをサポートしていません。Redshift Spectrum テーブルを複数の Amazon Redshift クラスターに追加して、同じ AWS リージョン内の任意のクラスターから Amazon S3 の同じデータにクエリを実行できます。Amazon S3 データファイルを更新すると、データはすぐにあらゆる Amazon Redshift クラスターからクエリに利用可能になります。
アクセスする AWS Glue データカタログは、セキュリティを強化するために暗号化されている可能性があります。AWS Glue カタログが暗号化されている場合、AWS Glueカタログにアクセスするには AWS Glue の AWS Key Management Service (AWS KMS) キーが必要です。AWS Glue カタログの暗号化は、一部の AWS リージョンでは使用できません。サポートされている AWS リージョンのリストについては、AWS Glueデベロッパーガイドの「AWS Glue の暗号化と安全なアクセス」を参照してください。AWS Glue でのデータカタログ暗号化の詳細については、AWS Glueデベロッパーガイドの「AWS Glue データカタログの暗号化」を参照してください。
注記
PG_TABLE_DEF、STV_TBL_PERM、PG_CLASS、または information_schema など、標準の Amazon Redshift テーブルに使用したものと同じリソースを使用して Redshift Spectrum テーブルの詳細を表示することはできません。ビジネスインテリジェンスまたは分析ツールが Redshift Spectrum 外部テーブルを認識しない場合は、SVV_EXTERNAL_TABLESおよび SVV_EXTERNAL_COLUMNS にクエリを実行するようにアプリケーションを設定します。
Amazon Redshift Spectrum リージョン
そのリージョン固有のドキュメントで特に明記されていない限り、Amazon Redshift が提供されている AWS リージョン リージョンであれば、Redshift Spectrum を使用することができます。商用リージョンでの AWS リージョン の可用性については、「Amazon Web Services 全般のリファレンス」の「Redshift API」の「サービスエンドポイント」を参照してください。