クエリエディタでのクロスデータベースクエリの使用
このトピックでは、クエリエディタでクロスデータベースクエリを使用する方法について説明します。クロスデータベースクエリは、単一の Amazon Redshift クラスター内の複数のデータベースで動作するクエリです。
クロスデータベースクエリを使用すると、特定のデータベースに接続しなくても、Amazon Redshift クラスター上の任意のデータベースのデータにアクセスできます。接続していない他のデータベースに対してクロスデータベースクエリを実行する場合、それらのデータベースオブジェクトに対してのみ読み書きアクセスが認められます。
他のデータベースオブジェクトに対するクエリと書き込みは、3 部構成表記の完全修飾オブジェクト名を使用して実行できます。任意のデータベースオブジェクトへのフルパスは、データベース名、スキーマ、オブジェクト名の 3 つのコンポーネントで構成されます。例は
です。database_name.schema_name.object_name
クエリエディタ v2 でクロスデータベースクエリを使用するには
-
AWS Management Consoleにサインインして、https://console.aws.amazon.com/redshiftv2/
で Amazon Redshift コンソールを開きます。 -
Amazon Redshift クエリエディタ v2 でクロスデータベースクエリを使用するクラスターを作成します。詳細については、「Amazon Redshift 管理ガイド」の「クラスターの作成」を参照してください。
-
適切な許可でクエリエディタへのアクセスを有効にします。詳細については、「Amazon Redshift 管理ガイド」の「クエリエディタ v2 を使用してデータベースのクエリを実行する」を参照してください。
ナビゲーションメニューで [クエリエディタ v2] を選択し、次にクラスターのデータベースに接続します。
クエリエディタ v2 に初めて接続すると、Amazon Redshift はデフォルトで接続されているデータベースのリソースを表示します。
-
これらの他のデータベースのデータベースオブジェクトを表示するためのアクセスを持つ他のデータベースを選択します。オブジェクトを表示するには、適切な許可があることを確認します。データベースを選択すると、Amazon Redshift はデータベースのスキーマリストを表示します。
スキーマを選択すると、そのスキーマ内のデータベースオブジェクト一覧が表示されます。
注記
Amazon Redshift では、AWS Glue またはフェデレートされたデータベースの一部であるカタログオブジェクトのクエリは、直接サポートされていません。これらをクエリするには、まず各データベース内の外部データソースを参照する外部スキーマを作成します。
3 つの表記からなる Amazon Redshift クロスデータベースクエリは、スキーマ
information_schema
およびpg_catalog
のメタデータテーブルをサポートしていません。これらのメタデータビューはデータベース固有のものであるためです。 (オプション) 選択したスキーマのテーブルまたはビューのリストをフィルタリングします。