データレイクにクエリを実行する方法 - Amazon Redshift

データレイクにクエリを実行する方法

Amazon Redshift Spectrum を使用したクエリにより、データを Amazon Redshift テーブルにロードすることなく、Amazon S3 のファイルのデータを取得できます。Parquet、ORC、RCFile、TextFile、SequenceFile、RegexSerde、OpenCSV、AVRO など、さまざまな形式でデータをクエリできます。Amazon S3 でファイルの構造を定義するには、外部スキーマとテーブルを作成します。その後、AWS Glue または独自のApache Hive メタストアなど、外部のデータカタログを使用します。いずれの外部データカタログへの変更も、ただちにすべての Amazon Redshift クラスターに反映されます。

AWS Glue データカタログにデータを登録し AWS Lake Formation で有効化した後は、Redshift Spectrum などの複数のサービスを使用して、そのデータをクエリすることができます。

Redshift Spectrum は、クラスターに依存しない専用の Amazon Redshift サーバー上にあります。Redshift Spectrum は、述語フィルタリングや集計など、大量の演算を行う多くのタスクを Redshift Spectrum レイヤーにプッシュします。また、Redshift Spectrum では、インテリジェントなスケーリングにより、超並列処理を活用することもできます。

外部テーブルを1 つ以上の列でパーティション分割し、パーティション消去でクエリのパフォーマンスを最適化することができます。Amazon Redshift テーブルを使用し、外部テーブルのクエリと結合ができます。複数の Amazon Redshift クラスターから外部テーブルにアクセスすることが可能で、同じ AWS リージョン内のあらゆるクラスターから Amazon S3 のデータにクエリを実行できます。Amazon S3 データファイルを更新すると、即時に、あらゆる Amazon Redshift クラスターから、そのデータをクエリすることが可能になります。

Redshift スペクトラムとデータレイクの操作方法など、Redshift スペクトラムの詳細については、Amazon Redshift データベース開発者ガイドの「Amazon Redshift Spectrum の開始方法」を参照してください。