フェデレーテッドテーブル名修飾子を理解する
Athena はデータオブジェクトの階層を指すのに次の用語を使います。
-
データソース — データベースのグループ
-
データベース — テーブルのグループ
-
テーブル — 行または列のグループとして整理されたデータ
これらのオブジェクトは、次のように代替だが同等の名前で呼ばれることもあります。
-
データソースはカタログと呼ばれることもあります。
-
データベースはスキーマと呼ばれることもあります。
Athena コンソールの次のクエリ例では、awsdatacatalog
データソース、default
データベース、および some_table
テーブルを使用しています。
フェデレーションデータソースの用語
フェデレーションデータソースをクエリする場合、基になるデータソースが Athena と同じ用語を使用していない可能性があることに注意してください。フェデレーションクエリを作成する場合、この区別を念頭に置いてください。以下のセクションでは、Athena のデータオブジェクト用語がフェデレーションデータソースのデータオブジェクト用語とどのように対応するかを説明します。
Amazon Redshift
Amazon Redshift データベースは、Redshift テーブルのグループを含む Redshift スキーマのグループです。
Athena | Redshift |
---|---|
共有データソース | Redshift コネクタの Lambda 関数は、Redshift database を指すように設定されています。 |
data_source.database.table |
database.schema.table |
クエリの例
SELECT * FROM
Athena_Redshift_connector_data_source
.Redshift_schema_name
.Redshift_table_name
このコネクタの詳細については、「Amazon Athena Redshift コネクタ」を参照してください。
Cloudera Hive
Cloudera Hive サーバーまたはクラスターは、Cloudera Hive テーブルのグループを含む Cloudera Hive データベースのグループです。
Athena | [Hive] |
---|---|
Cloudera Hive データソース | Cloudera Hive コネクタの Lambda 関数は Cloudera Hive server を指すように設定されています。 |
data_source.database.table |
server.database.table |
クエリの例
SELECT * FROM
Athena_Cloudera_Hive_connector_data_source
.Cloudera_Hive_database_name
.Cloudera_Hive_table_name
このコネクタの詳細については、「Amazon Athena Cloudera Hive コネクタ」を参照してください。
Cloudera Impala
Impala サーバーまたはクラスターは、Impala テーブルのグループを含む Impala データベースのグループです。
Athena | Impala |
---|---|
Impala データソース | Impala コネクタの Lambda 関数は Impala server を指すように構成されています。 |
data_source.database.table |
server.database.table |
クエリの例
SELECT * FROM
Athena_Impala_connector_data_source
.Impala_database_name
.Impala_table_name
このコネクタの詳細については、「Amazon Athena Cloudera Impala コネクタ」を参照してください。
MySQL
MySQL サーバーは MySQL テーブルのグループを含む MySQL データベースのグループです。
Athena | MySQL |
---|---|
MySQL データソース | MySQL コネクタの Lambda 関数は MySQL server を指すように設定されています。 |
data_source.database.table |
server.database.table |
クエリの例
SELECT * FROM
Athena_MySQL_connector_data source
.MySQL_database_name
.MySQL_table_name
このコネクタの詳細については、「Amazon Athena MySQL コネクタ」を参照してください。
Oracle
Oracle サーバー (またはデータベース) は、Oracle テーブルのグループを含む Oracle スキーマのグループです。
Athena | Oracle |
---|---|
Oracle データソース | Oracle コネクタの Lambda 関数は Oracle server を指すように設定されています。 |
data_source.database.table |
server.schema.table |
クエリの例
SELECT * FROM
Athena_Oracle_connector_data_source
.Oracle_schema_name
.Oracle_table_name
このコネクタの詳細については、「Amazon Athena Oracle コネクタ」を参照してください。
Postgres
Postgres サーバー (またはクラスター) は Postgres データベースのグループです。Postgres データベースは Postgres テーブルのグループを含む Postgres スキーマのグループです。
Athena | Postgres |
---|---|
Postgres データソース | Postgres コネクタの Lambda 関数は Postgres server とdatabase を指すように設定されています。 |
data_source.database.table |
server.database.schema.table |
クエリの例
SELECT * FROM
Athena_Postgres_connector_data_source
.Postgres_schema_name
.Postgres_table_name
このコネクタの詳細については、「Amazon Athena PostgreSQL コネクタ」を参照してください。