

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Datenkataloge in Athena registrieren und verwenden
<a name="gdc-register"></a>

Athena unterstützt die Bereitstellung und Verbindung zu mehreren Datenkatalogen. 
+ Sie können Amazon Redshift Redshift-Daten in Athena einbinden AWS Glue Data Catalog und von Athena abfragen, ohne Daten kopieren oder verschieben zu müssen. Weitere Informationen finden Sie unter [Integrieren von Amazon-Redshift-Daten in AWS Glue Data Catalog](https://docs.aws.amazon.com/lake-formation/latest/dg/managing-namespaces-datacatalog.html).
+  Stellen Sie mithilfe von AWS Glue Verbindungen eine Connect AWS Glue Data Catalog zu externen Datenquellen her und erstellen Sie Verbundkataloge, um die Berechtigungen für die Daten mit detaillierter Zugriffskontrolle mithilfe von Lake Formation zentral zu verwalten. Weitere Informationen finden Sie unter [Ihre Verbindung als Glue-Datenkatalog registrieren](register-connection-as-gdc.md).
+ Erstellen Sie Kataloge aus Amazon S3 Tabellen-Buckets und verwenden Sie Lake Formation, um Zugriffsberechtigungen zentral zu verwalten und den Benutzerzugriff auf Objekte innerhalb des Tabellen-Buckets einzuschränken. Weitere Informationen finden Sie unter [Arbeiten mit Amazon-S3-Tables und Tabellen-Buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables.html) im Amazon-S3-Benutzerhandbuch.

**Anmerkung**  
Für jeden Glue-Katalog können Sie nur einen mehrstufigen Katalog wie `123412341234:my_catalog/my_child` registrieren. Sie können keinen einstufigen Katalog wie `123412341234:linkcontainer` oder `my_catalog` registrieren. Einstufige Kataloge können nur abgefragt werden, indem der Glue-Datenkatalog direkt in der Athena-Abfrage verwendet wird. Weitere Informationen finden Sie unter [AWS Glue Datenkataloge in Athena abfragen](gdc-register-query-the-data-source.md). 

**Topics**
+ [Redshift-Datenkataloge in Athena registrieren](gdc-register-rs.md)
+ [Verbundkataloge in Athena registrieren](gdc-register-federated.md)
+ [Registrieren Sie Bucket-Kataloge von S3-Tabellen und fragen Sie Tabellen von Athena ab](gdc-register-s3-table-bucket-cat.md)
+ [AWS Glue Datenkataloge in Athena abfragen](gdc-register-query-the-data-source.md)

# Redshift-Datenkataloge in Athena registrieren
<a name="gdc-register-rs"></a>

Athena kann Daten lesen und schreiben, die in Redshift-Clustern oder Serverless Namespaces gespeichert sind, die in AWS Glue Data Catalog registriert wurden. Dies funktioniert zusammen mit AWS Lake Formation, was für zentrale Sicherheit und Steuerung sorgt, sicherstellt, dass der Datenzugriff über verschiedene Abfrage-Engines hinweg konsistent verwaltet wird, und es werden detaillierte Zugriffskontrollen für die gemeinsam genutzten Redshift-Daten aufrechterhalten.

## Überlegungen und Einschränkungen
<a name="gdc-register-rs-considerations-and-limitations"></a>
+ **Materialisierte Ansichten** – Materialisierte Ansichten von Amazon Redshift können von Athena abgefragt werden, aber das Erstellen materialisierter Ansichten mit Athena oder Spark wird nicht unterstützt.
+ DDL-Operationen, einschließlich der Einstellung von AWS Glue Data Catalog Konfigurationen und Vorgängen in verwalteten Amazon Redshift Redshift-Speichertabellen, werden nicht unterstützt.

## Voraussetzungen
<a name="gdc-register-rs-prerequisites"></a>

Bevor Sie einen AWS Glue Datenkatalog von Athena abfragen können, müssen Sie die folgenden Aufgaben ausführen:

1. Erstellen und registrieren Sie einen Amazon-Redshift-Cluster oder einen Serverless Namespace für AWS Glue Data Catalog. Weitere Informationen finden Sie unter [Registrierung eines Clusters auf AWS Glue Data Catalog](https://docs.aws.amazon.com/redshift/latest/mgmt/register-cluster.html) oder [Registrierung von Namespaces auf AWS Glue Data Catalog](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless_datasharing-register-namespace.html) im Amazon Redshift Management-Handbuch.

1. Erstellen Sie einen Datenkatalog AWS Lake Formation aus dem registrierten Namespace. Weitere Informationen finden Sie unter [Erstellen von Amazon Redshift Redshift-Verbundkatalogen im AWS Lake Formation Entwicklerhandbuch](https://docs.aws.amazon.com/lake-formation/latest/dg/create-ns-catalog.html).

1. (Optional) Verwenden Sie Lake Formation, um differenzierte Zugriffskontrollen für den Katalog festzulegen. Weitere Informationen finden Sie im [Entwicklerhandbuch unter Integrieren Ihrer Daten AWS Glue Data Catalog in den](https://docs.aws.amazon.com/lake-formation/latest/dg/bring-your-data-overview.html) AWS Lake Formation .

## Einen Redshift-Datenkatalog in der Athena-Konsole registrieren
<a name="gdc-register-rs-console-steps"></a>

Um einen Redshift-Datenkatalog in der Athena-Konsole zu registrieren, führen Sie die folgenden Schritte aus.

1. Öffnen Sie die Athena-Konsole unter [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/).

1. Wählen Sie im Navigationsbereich **Datenquellen und Kataloge** aus.

1. Wählen Sie auf der Seite **Datenquellen und Kataloge** die Option **Datenquellen erstellen** aus.

1. Wählen Sie für **Eine Datenquelle auswählen** die Option **Amazon S3 - AWS Glue Data Catalog**.

1. Wählen Sie im **AWS Glue Data Catalog**-Abschnitt für **Datenquellenkonto** die Option **AWS Glue Data Catalog in diesem Konto**.

1. Wählen **Sie unter Tabelle erstellen oder Katalog registrieren** die Option **Neuen AWS Glue Katalog registrieren** aus.

1. Geben Sie im Abschnitt **Datenquellendetails** für **Datenquellenname** den Namen ein, den Sie verwenden möchten, um die Datenquelle in Ihren SQL-Abfragen anzugeben, oder verwenden Sie den generierten Standardnamen.

1. Wählen Sie unter **Katalog** die Option **Durchsuchen** aus, um nach einer Liste von AWS Glue Katalogen im selben Konto zu suchen. Wenn Ihnen keine Kataloge angezeigt werden, erstellen Sie einen in der [AWS Glue -Konsole](https://console.aws.amazon.com/glue/). 

1. **Wählen **Sie im Dialogfeld „ AWS Glue Kataloge durchsuchen**“ den Katalog aus, den Sie verwenden möchten, und klicken Sie dann auf „Auswählen“.**

1. (Optional) Geben Sie unter **Tags** alle key/value Paare ein, die Sie der Datenquelle zuordnen möchten.

1. Wählen Sie **Weiter** aus.

1. Überprüfen Sie auf der Seite **Überprüfen und erstellen** die Richtigkeit der eingegebenen Informationen und wählen Sie dann **Datenquelle erstellen**.

# Verbundkataloge in Athena registrieren
<a name="gdc-register-federated"></a>

Nachdem Sie Verbindungen zu Verbunddatenquellen hergestellt haben, können Sie diese als Verbunddatenkataloge registrieren, um die Datenermittlung zu vereinfachen und den Datenzugriff mithilfe von Lake Formation mit differenzierten Berechtigungen verwalten. Weitere Informationen finden Sie unter [Ihre Verbindung als Glue-Datenkatalog registrieren](register-connection-as-gdc.md).

## Überlegungen und Einschränkungen
<a name="gdc-register-federated-consideration"></a>
+ DDL-Operationen werden in Verbundkatalogen nicht unterstützt. 
+ Sie können die folgenden Konnektoren registrieren, um sie AWS Glue für eine differenzierte Zugriffskontrolle zu integrieren:
  + [Azure Data Lake-Speicher](connectors-adls-gen2.md)
  + [Azure Synapse](connectors-azure-synapse.md)
  + [BigQuery](connectors-bigquery.md)
  + [CMDB](connectors-cmdb.md)
  + [Db2](connectors-ibm-db2.md)
  + [Db2 i-Serie](connectors-ibm-db2-as400.md)
  + [DocumentDB](connectors-docdb.md)
  + [DynamoDB](connectors-dynamodb.md)
  + [Google Cloud-Speicher](connectors-gcs.md)
  + [HBase](connectors-hbase.md)
  + [MySQL](connectors-mysql.md)
  + [OpenSearch](connectors-opensearch.md)
  + [Oracle](connectors-oracle.md)
  + [PostgreSQL](connectors-postgresql.md)
  + [Redshift](connectors-redshift.md)
  + [SAP HANA](connectors-sap-hana.md)
  + [Snowflake](connectors-snowflake.md)
  + [SQL Server](connectors-microsoft-sql-server.md)
  + [Timestream](connectors-timestream.md)
  + [TPC-DS](connectors-tpcds.md)
+ Wenn Sie einen Ressourcenlink für den Glue-Connection-Verbund erstellen, muss der Name des [Ressourcenlinks](https://docs.aws.amazon.com/lake-formation/latest/dg/create-resource-link-database.html) mit dem Datenbanknamen des Erzeugers übereinstimmen.
+ Derzeit werden nur Tabellen- und Spaltennamen in Kleinbuchstaben erkannt, auch wenn in der Datenquelle nicht zwischen Groß- und Kleinschreibung unterschieden wird.

# Registrieren Sie Bucket-Kataloge von S3-Tabellen und fragen Sie Tabellen von Athena ab
<a name="gdc-register-s3-table-bucket-cat"></a>

Tabellen-Buckets für Amazon S3 sind ein Bucket-Typ in Amazon S3, der speziell zum Speichern von Tabellendaten in Apache-Iceberg-Tabellen entwickelt wurde. Tabellen-Buckets automatisieren Tabellenverwaltungsaufgaben wie Komprimierung, Snapshot-Verwaltung und Garbage Collection, um die Abfrageleistung kontinuierlich zu optimieren und die Kosten zu minimieren. Egal, ob Sie gerade erst anfangen oder Tausende von Tabellen in Ihrer Iceberg-Umgebung haben, Tabellen-Buckets vereinfachen Data Lakes in jeder Größenordnung. Weitere Informationen finden Sie unter [Tabellen-Buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-buckets.html).

## Überlegungen und Einschränkungen
<a name="gdc-register-s3-table-consideration"></a>
+ Alle DDL-Operationen, die für Iceberg-Tabellen unterstützt werden, werden für S3-Tabellen unterstützt, mit den folgenden Ausnahmen:
  + `ALTER TABLE RENAME`, `CREATE VIEW` und `ALTER DATABASE` werden nicht unterstützt.
  + `OPTIMIZE` und `VACUUM` – Sie können die Komprimierung und die Snapshot-Verwaltung in S3 verwalten. Weitere Informationen finden Sie unter [Wartungsdokumentation für S3-Tabellen](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-maintenance.html).
+ DDL-Abfragen auf S3-Tabellen, die als Athena-Datenquellen registriert sind, werden nicht unterstützt.
+ Die Wiederverwendung von Abfrageergebnissen wird nicht unterstützt.
+ In Arbeitsgruppen mit aktivierter SSE-KMS- und CSE-KMS-Verschlüsselung können Sie keine Schreibvorgänge wie `INSERT`, `UPDATE`, `DELETE` oder `MERGE` für S3-Tabellen ausführen.
+ In Arbeitsgruppen, in denen die Option „Zahlung durch den S3-Anforderer“ aktiviert ist, können Sie keine DML-Operationen für S3-Tabellen ausführen.

## S3-Tabellen von Athena abfragen
<a name="gdc-register-s3-table-prereq-setup"></a>

**Diese erforderlichen Schritte vor der Arbfrage von S3-Tabellen in Athena ausführen**

1. Erstellen eines S3-Tabellen-Buckets. Weitere Informationen erhalten Sie unter [Erstellen eines Buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-buckets-create.html) im Benutzerhandbuch für Amazon Simple Storage Service. 

1. Stellen Sie sicher, dass die Integration Ihrer Tabellen-Buckets mit AWS Glue Data Catalog erfolgreich ist. Informationen zu den erforderlichen Berechtigungen und Einrichtungsschritten finden Sie unter [Voraussetzungen für die Integration von S3 Tables](https://docs.aws.amazon.com/glue/latest/dg/s3tables-catalog-prerequisites.html) und [Aktivieren der Integration von S3 Tables mit Glue Data Catalog](https://docs.aws.amazon.com/glue/latest/dg/enable-s3-tables-catalog-integration.html) im AWS Glue Entwicklerhandbuch.

1. Erteilen Sie für den Prinzipal, den Sie zum Ausführen von Abfragen mit Athena verwenden, Berechtigungen für den S3-Tabellenkatalog mit einem der folgenden Ansätze: 

   **Option 1: Verwenden Sie IAM-Berechtigungen**

   Wenn Sie die IAM-Zugriffskontrolle verwenden, benötigt Ihr Principal Berechtigungen sowohl für AWS Glue Data Catalog Ressourcen als auch für Amazon S3 Tables-Ressourcen.

   Die folgende Liste enthält alle `s3tables` Berechtigungen, die für die Ausführung unterstützter DDL- oder DML-Operationen für Ihre S3-Tabellen in Athena erforderlich sind:
   + `s3tables:GetTableBucket`
   + `s3tables:GetNamespace`
   + `s3tables:GetTable`
   + `s3tables:GetTableData`
   + `s3tables:PutTableData`
   + `s3tables:ListNamespaces`
   + `s3tables:ListTables`
   + `s3tables:DeleteNamespace`
   + `s3tables:DeleteTable`
   + `s3tables:CreateNamespace`
   + `s3tables:CreateTable`
   + `s3tables:UpdateTableMetadataLocation`

   Wenden Sie diese Berechtigungen auf bestimmte S3-Tabellen-Bucket- und S3-Tabellenressourcen an oder verwenden Sie `*` sie als Ressource, um Zugriff auf alle Tabellen-Buckets und Tabellen in Ihrem Konto zu gewähren. Diese Berechtigungen können mit der [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonAthenaFullAccess.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonAthenaFullAccess.html)verwalteten Richtlinie kombiniert werden, um die vollständige Funktionalität zu ermöglichen.

   **Option 2: Verwenden Sie Lake Formation Formation-Berechtigungen**

   Um eine differenzierte Zugriffskontrolle zu ermöglichen, können Sie Lake Formation Formation-Berechtigungen für den S3-Tabellenkatalog gewähren, entweder über die Lake Formation Formation-Konsole oder. AWS CLI Dazu müssen Sie Ihre S3-Tabellen-Buckets als Lake Formation Formation-Datenstandort registrieren. Weitere Informationen finden Sie unter [Erstellen eines Amazon S3 S3-Tables-Katalogs AWS Glue Data Catalog im](https://docs.aws.amazon.com/lake-formation/latest/dg/create-s3-tables-catalog.html) Lake Formation Developer Guide.

------
#### [ AWS-Managementkonsole ]

   1. Öffnen Sie die AWS Lake Formation Konsole unter [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/) und melden Sie sich als Data Lake-Administrator an. Weitere Informationen zum Erstellen eines Data-Lake-Administrators finden Sie unter [Create a data lake administrator (Data-Lake-Administrator erstellen)](https://docs.aws.amazon.com/lake-formation/latest/dg/initial-lf-config.html#create-data-lake-admin).

   1. Wählen Sie im Navigationsbereich **Data permissions (Datenberechtigungen)** und dann **Grant (Erteilen)** aus. 

   1. Wählen Sie auf der Seite **Berechtigungen erteilen** unter **Princizale** den Prinzipal aus, den Sie verwenden möchten, um eine Anfrage von Athena einzureichen.

   1. Wählen Sie unter **LF-Tags or catalog resources (LF-Tags oder Katalogressourcen)** die Option **Named Data Catalog resources (Benannte Datenkatalogressourcen)**.

   1. Wählen Sie für **Catalogs (Kataloge)** einen Glue-Datenkatalog, den Sie im Rahmen der Integration Ihres Tabellen-Buckets erstellt haben. Zum Beispiel :s3tablescatalog/*<accoundID>*. *amzn-s3-demo-bucket*

   1. Wählen Sie für **Katalogberechtigungen** die Option **Super aus.**

   1. Wählen Sie **Grant (Erteilen)**.

------
#### [ AWS CLI ]

   Führen Sie den folgenden Befehl mit der Data Lake-Administratorrolle für Lake Formation aus, um Zugriff auf den Prinzipal zu gewähren, den Sie zum Einreichen von Abfragen von Athena verwenden. 

   ```
   aws lakeformation grant-permissions \
   --region <region (Example,us-east-1)> \
   --cli-input-json \
   '{
       "Principal": {
           "DataLakePrincipalIdentifier": "<user or role ARN (Example, arn:aws:iam::<Account ID>:role/ExampleRole>"
       },
       "Resource": {
           "Catalog": {
               "Id":"<Account ID>:s3tablescatalog/amzn-s3-demo-bucket"
           }
       },
       "Permissions": ["ALL"]
   }'
   ```

------

**Abfragen für S3-Tabellen einreichen**

1. Reichen Sie eine `CREATE DATABASE`-Anfrage von Athena mit dem oben gewährten Benutzer/der oben gewährten Rolle ein. In diesem Beispiel ist `s3tablescatalog` der übergeordnete Glue-Datenkatalog erstellt aus der Integration und ` s3tablescatalog/amzn-s3-demo-bucket` ist der untergeordnete Glue-Datenkatalog, der für jeden S3-Tabellen-Bucket erstellt wurde. Es gibt zwei Möglichkeiten, Abfragen durchzuführen.

------
#### [ Option 1 ]

   Geben Sie den untergeordneten Glue-Datenkatalog (`s3tablescatalog/amzn-s3-demo-bucket`) direkt von der Konsole aus an oder AWS CLI.

   **Verwenden AWS-Managementkonsole**

   1. Öffnen Sie die Athena-Konsole unter [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/).

   1. Wählen Sie in der linken Navigationsleiste für **Datenquellenname** die Option **AwsDataCatalog**.

   1. Wählen Sie für **Catalog** die Option ***amzn-s3-demo-bucket*s3tablescatalog/** aus.

   1. Geben Sie im Abfrage-Editor eine Abfrage ein wie `CREATE DATABASE test_namespace`.

   **Verwenden AWS CLI**

   Führen Sie den folgenden Befehl aus.

   ```
   aws athena start-query-execution \ 
   --query-string 'CREATE DATABASE `test_namespace`' \ 
   --query-execution-context '{"Catalog": "s3tablescatalog/amzn-s3-demo-bucket"}' \
   --work-group "primary"
   ```

------
#### [ Option 2 ]

   Erstellen Sie den Athena-Datenkatalog aus dem untergeordneten Glue-Datenkatalog in der Athena-Konsole und geben Sie ihn als Katalog in der Abfrage an. Weitere Informationen finden Sie unter [S3-Tabellen-Bucket-Kataloge als Athena-Datenquellen registrieren](#gdc-register-s3-table-console-steps).

------

1. Verwenden Sie die Datenbank, die Sie im vorherigen Schritt erstellt haben, und erstellen Sie mit `CREATE TABLE` eine Tabelle. Das folgende Beispiel erstellt eine Tabelle in der *`test_namespace`*-Datenbank, die Sie zuvor im `s3tablescatalog/amzn-s3-demo-bucket`-Glue-Katalog erstellt haben.

------
#### [ AWS-Managementkonsole ]

   1. Wählen Sie in der linken Navigationsleiste für **Datenquellenname** die Option **AwsDataCatalog**.

   1. Wählen Sie für **Catalog** die Option ***amzn-s3-demo-bucket*s3tablescatalog/** aus.

   1. Wählen Sie für **Datenbank** die Option **test\$1namespace** aus.

   1. Führen Sie im Abfrage-Editor die folgende Abfrage aus.

      ```
      CREATE TABLE daily_sales (
              sale_date date,
              product_category
              string, sales_amount double)
      PARTITIONED BY (month(sale_date))
      TBLPROPERTIES ('table_type' = 'iceberg')
      ```

------
#### [ AWS CLI ]

   Führen Sie den folgenden Befehl aus.

   ```
   aws athena start-query-execution \
   --query-string "CREATE TABLE daily_sales (
           sale_date date,
           product_category
           string, sales_amount double)
   PARTITIONED BY (month(sale_date))
   TBLPROPERTIES ('table_type' = 'iceberg')" \
   --query-execution-context '{"Catalog": "s3tablescatalog/amzn-s3-demo-bucket", "Database":"test_namespace"}' \
   --work-group "primary"
   ```

------

1. Fügen Sie Daten in die Tabelle ein, die Sie im vorherigen Schritt erstellt haben.

------
#### [ AWS-Managementkonsole ]

   1. Wählen Sie in der linken Navigationsleiste für **Datenquellenname** die Option. **AwsDataCatalog**

   1. Wählen Sie für **Catalog** die Option ***amzn-s3-demo-bucket*s3tablescatalog/** aus.

   1. Wählen Sie für **Datenbank** die Option **test\$1namespace** aus.

   1. Führen Sie im Abfrage-Editor die folgende Abfrage aus.

      ```
      INSERT INTO daily_sales
      VALUES 
          (DATE '2024-01-15', 'Laptop', 900.00),
          (DATE '2024-01-15', 'Monitor', 250.00),
          (DATE '2024-01-16', 'Laptop', 1350.00),
          (DATE '2024-02-01', 'Monitor', 300.00);
      ```

------
#### [ AWS CLI ]

   Führen Sie den folgenden Befehl aus.

   ```
   aws athena start-query-execution \
   --query-string "INSERT INTO \"s3tablescatalog/amzn-s3-demo-bucket\".test_namespace.daily_sales
   VALUES 
   (DATE '2024-01-15', 'Laptop', 900.00),
   (DATE '2024-01-15', 'Monitor', 250.00),
   (DATE '2024-01-16', 'Laptop', 1350.00),
   (DATE '2024-02-01', 'Monitor', 300.00)"\ 
   --work-group "primary"
   ```

------

1. Nachdem Sie Daten in die Tabelle eingefügt haben, können Sie sie abfragen.

------
#### [ AWS-Managementkonsole ]

   1. Wählen Sie in der linken Navigationsleiste für **Datenquellenname** die Option. **AwsDataCatalog**

   1. Wählen Sie für **Catalog** die Option ***amzn-s3-demo-bucket*s3tablescatalog/** aus.

   1. Wählen Sie für **Datenbank** die Option **test\$1namespace** aus.

   1. Führen Sie im Abfrage-Editor die folgende Abfrage aus.

      ```
      SELECT
          product_category,
          COUNT(*) AS units_sold,
          SUM(sales_amount) AS total_revenue,
          AVG(sales_amount) AS average_price
      FROM
          daily_sales
      WHERE
          sale_date BETWEEN DATE '2024-02-01' 
                       AND DATE '2024-02-29'
      GROUP BY
          product_category
      ORDER BY
          total_revenue DESC
      ```

------
#### [ AWS CLI ]

   Führen Sie den folgenden Befehl aus.

   ```
   aws athena start-query-execution \
   --query-string "SELECT product_category,
       COUNT(*) AS units_sold,
       SUM(sales_amount) AS total_revenue,
       AVG(sales_amount) AS average_price
   FROM \"s3tablescatalog/amzn-s3-demo-bucket\".test_namespace.daily_sales
   WHERE sale_date BETWEEN DATE '2024-02-01' AND DATE '2024-02-29'
   GROUP BY product_category
   ORDER BY total_revenue DESC"\
   --work-group "primary"
   ```

------

## S3-Tabellen in Athena erstellen
<a name="gdc-create-s3-tables-athena"></a>

Athena unterstützt das Erstellen von Tabellen in vorhandenen S3-Tabellen-Namespaces oder in Athena erstellten Namespaces mit `CREATE DATABASE`-Anweisungen. Um eine S3-Tabelle aus Athena zu erstellen, ist die Syntax dieselbe wie beim [Erstellen einer regulären Iceberg-Tabelle](querying-iceberg-creating-tables.md), außer dass Sie `LOCATION` nicht angeben, wie im folgenden Beispiel gezeigt.

```
CREATE TABLE
[db_name.]table_name (col_name data_type [COMMENT col_comment] [, ...] )
[PARTITIONED BY (col_name | transform, ... )]
[TBLPROPERTIES ([, property_name=property_value] )]
```

Sie können S3-Tabellen auch mit Anweisungen CREATE TABLE AS SELECT (CTAS) erstellen. Weitere Informationen finden Sie unter [CTAS für S3-Tabellen](#ctas-s3-tables).

## S3-Tabellen-Bucket-Kataloge als Athena-Datenquellen registrieren
<a name="gdc-register-s3-table-console-steps"></a>

Um S3-Tabellen-Bucket-Kataloge in der Athena-Konsole zu registrieren, führen Sie die folgenden Schritte aus.

1. Öffnen Sie die Athena-Konsole unter [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/).

1. Wählen Sie im Navigationsbereich **Datenquellen und Kataloge** aus.

1. Wählen Sie auf der Seite **Datenquellen und Kataloge** die Option **Datenquellen erstellen** aus.

1. Wählen Sie für **Eine Datenquelle auswählen** die Option **Amazon S3 - AWS Glue Data Catalog**.

1. Wählen Sie im **AWS Glue Data Catalog**-Abschnitt für **Datenquellenkonto** die Option **AWS Glue Data Catalog in diesem Konto**.

1. Wählen **Sie für Tabelle erstellen oder Katalog registrieren die Option Neuen Katalog** **registrieren aus. AWS Glue **

1. Geben Sie im Abschnitt **Datenquellendetails** für **Datenquellenname** den Namen ein, den Sie verwenden möchten, um die Datenquelle in Ihren SQL-Abfragen anzugeben, oder verwenden Sie den generierten Standardnamen.

1. Wählen Sie unter **Katalog** die Option **Durchsuchen** aus, um nach einer Liste von AWS Glue Katalogen im selben Konto zu suchen. Wenn Ihnen keine Kataloge angezeigt werden, erstellen Sie einen in der [AWS Glue -Konsole](https://console.aws.amazon.com/glue/). 

1. **Wählen **Sie im Dialogfeld „ AWS Glue Kataloge durchsuchen**“ den Katalog aus, den Sie verwenden möchten, und klicken Sie dann auf „Auswählen“.**

1. (Optional) Geben Sie unter **Tags** alle key/value Paare ein, die Sie der Datenquelle zuordnen möchten.

1. Wählen Sie **Weiter** aus.

1. Überprüfen Sie auf der Seite **Überprüfen und erstellen** die Richtigkeit der eingegebenen Informationen und wählen Sie dann **Datenquelle erstellen**.

## CTAS für S3-Tabellen
<a name="ctas-s3-tables"></a>

Amazon Athena unterstützt jetzt Operationen CREATE TABLE AS SELECT (CTAS) für S3-Tabellen. Mit dieser Feature können Sie neue S3-Tabellen auf der Grundlage der Ergebnisse einer SELECT-Abfrage erstellen. 

Bei der Erstellung einer CTAS-Abfrage für eine S3-Tabelle gibt es einige wichtige Unterschiede zu Standard-Athena-Tabellen:
+ Sie müssen die Speicherort-Eigenschaft weglassen, da S3-Tabellen ihre eigenen Speicherorte automatisch verwalten.
+ Die `table_type`-Eigenschaft ist standardmäßig auf `ICEBERG`, sodass Sie sie in Ihrer Abfrage nicht explizit angeben müssen.
+ Wenn Sie kein Format angeben, verwendet das System automatisch `PARQUET` als Standardformat für Ihre Daten.
+ Alle anderen Eigenschaften folgen derselben Syntax wie normale Iceberg-Tabellen.

Bevor Sie S3-Tabellen mithilfe von CTAS erstellen, stellen Sie sicher, dass Sie die erforderlichen Berechtigungen in IAM oder konfiguriert haben. AWS Lake Formation Insbesondere benötigen Sie Berechtigungen, um Tabellen im S3-Taballen-Katalog zu erstellen. Ohne diese Berechtigungen schlagen Ihre CTAS-Operationen fehl.

**Anmerkung**  
Wenn Ihre CTAS-Abfrage fehlschlägt, müssen Sie möglicherweise Ihre Tabelle mithilfe der [S3 Tabellen-API](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-delete.html) löschen, bevor Sie versuchen, Ihre Abfrage erneut auszuführen. Sie können die `DROP TABLE`-Athena-Anweisungen nicht verwenden, um die Tabelle zu entfernen, die teilweise durch die Abfrage erstellt wurde. 

**Beispiel**

```
CREATE TABLE "s3tablescatalog/amzn-s3-demo-bucket"."namespace"."s3-table-name"
WITH (
    format = 'PARQUET'
)
AS SELECT *
FROM source_table;
```

# AWS Glue Datenkataloge in Athena abfragen
<a name="gdc-register-query-the-data-source"></a>

Um Datenkataloge von Athena abzufragen, führen Sie einen der folgenden Schritte aus.
+ Registrieren Sie den Katalog in Athena als Datenquelle und verwenden Sie dann den Datenquellennamen, um den Katalog abzufragen. Bei dieser Verwendung sind die folgenden Abfragen gleichwertig.

  ```
  SELECT * FROM my_data_source.my_database.my_table
  ```
+ Wenn Sie einen Katalog abfragen, der nicht als Athena-Datenquelle registriert wurde, können Sie den vollständigen Pfad zum Katalog in Ihren `SELECT`-Abfragen angeben, wie im folgenden Beispiel.

  ```
  SELECT * FROM "my_catalog/my_subcatalog".my_database.my_table
  ```
+ Sie können dies auch über die tun. AWS-Managementkonsole

  1. Öffnen Sie die Athena-Konsole unter [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/)

  1. Wählen Sie im Abfrage-Editor für **Datenquelle** die Option **AwsDataCatalog**.

  1. Für **Katalog** wählen Sie den Namem des Katalogs, den Sie verwenden möchten.

  1. Wählen Sie für **Datenbank** die Datenbank aus, die die Tabelle enthält, die Sie abfragen möchten.

  1. Geben Sie eine Abfrage wie `SELECT * FROM my_table` ein, und wählen Sie dann **Ausführen**.