

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.

# Amazon Athena TPC Benchmark DS (TPC-DS) Konnektor
<a name="connectors-tpcds"></a>

Der Amazon-Athena-TPC-DS-Konnektor ermöglicht Amazon Athena die Kommunikation mit einer Quelle zufällig erzeugter TPC-Benchmark-DS-Daten für Benchmarking und Funktionstests von Athena Federation. Der Athena-TPC-DS-Konnektor generiert eine TPC-DS-konforme Datenbank mit einem von vier Skalierungsfaktoren. Wir empfehlen die Verwendung dieses Konnektors nicht als Alternative zu Amazon-S3-basierten Data Lake-Leistungstests.

Dieser Connector kann bei Glue-Datenkatalog als Verbundkatalog registriert werden. Er unterstützt in Lake Formation definierte Datenzugriffskontrollen auf Katalog-, Datenbank-, Tabellen-, Spalten-, Zeilen- und Tagebene. Dieser Konnektor verwendet Glue Connections, um die Konfigurationseigenschaften in Glue zu zentralisieren.

## Voraussetzungen
<a name="connectors-tpcds-prerequisites"></a>
+ Stellen Sie den Konnektor für Ihr AWS-Konto mithilfe der Athena-Konsole oder AWS Serverless Application Repository bereit. Für weitere Informationen siehe [Eine Datenquellenverbindung erstellen](connect-to-a-data-source.md) oder [Verwenden Sie den AWS Serverless Application Repository , um einen Datenquellenconnector bereitzustellen](connect-data-source-serverless-app-repo.md).

## Parameters
<a name="connectors-tpcds-parameters"></a>

Verwenden Sie die Parameter in diesem Abschnitt, um den TPC-DS-Konnektor zu konfigurieren.

**Anmerkung**  
Athena-Datenquellenconnectors, die am 3. Dezember 2024 und später erstellt wurden, verwenden AWS Glue Verbindungen.  
Die unten aufgeführten Parameternamen und Definitionen beziehen sich auf Athena-Datenquellen-Connectors, die vor dem 3. Dezember 2024 erstellt wurden. Diese können von ihren entsprechenden [AWS Glue -Verbindungseigenschaften](https://docs.aws.amazon.com/glue/latest/dg/connection-properties.html) abweichen. Verwenden Sie ab dem 3. Dezember 2024 die folgenden Parameter nur, wenn Sie eine frühere Version eines Athena-Datenquellen-Connectors [manuell bereitstellen](connect-data-source-serverless-app-repo.md).

### AWS Glue Data Catalog föderierte Konnektoren
<a name="connectors-tpcds-gc"></a>

Wir empfehlen, dass Sie einen TPC-DS-Connector mithilfe eines Glue-Connections-Objekts konfigurieren. Setzen Sie dazu die `glue_connection`-Umgebungsvariable des TPC-DS-Konnektors Lambda auf den Namen der zu verwendenden Glue-Connection.

**Eigenschaften von Glue Connections**

Verwenden Sie den folgenden Befehl, um das Schema für ein Glue-Connection-Objekt zu erhalten. Dieses Schema enthält alle Parameter, mit denen Sie Ihre Verbindung steuern können.

```
aws glue describe-connection-type --connection-type TPCDS
```

**Lambda-Umgebungseigenschaften**

Die folgenden Lambda-Umgebungseigenschaften gelten nur, wenn Sie den Connector mit einer Lambda-Funktion in Ihrem Konto verwenden.
+ **glue\_connection** – Gibt den Namen der Glue-Connection an, die dem Verbund-Connector zugeordnet ist.

**Anmerkung**  
Alle Connectoren, die eine AWS Glue Data Catalog Verbundverbindung verwenden, müssen diese AWS Secrets Manager zum Speichern von Anmeldeinformationen verwenden.
Der mit einer AWS Glue Data Catalog Verbundverbindung erstellte TPC-DS-Connector unterstützt die Verwendung eines Multiplexing-Handlers nicht.
Der mit einer Verbundverbindung erstellte TPC-DS-Connector unterstützt nur 2. AWS Glue Data Catalog `ConnectionSchemaVersion`

### Verbundkonnektoren für den Athena-Datenkatalog
<a name="connectors-tpcds-legacy"></a>
+ **spill\_bucket** – Gibt den Amazon S3-Bucket für Daten an, die die Lambda-Funktionsgrenzen überschreiten.
+ **spill\_prefix** – (Optional) Ist standardmäßig ein Unterordner im angegebenen `spill_bucket` genannt `athena-federation-spill`. Wir empfehlen Ihnen, einen Amazon-S3-[Speicher-Lebenszyklus](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html) an dieser Stelle zu konfigurieren, um die Überlaufe zu löschen, die älter als eine festgelegte Anzahl von Tagen oder Stunden sind.
+ **spill\_put\_request\_headers** – (Optional) Eine JSON-codierte Zuordnung von Anforderungsheadern und Werten für die Amazon-S3-`putObject`-Anforderung, die für den Überlauf verwendet wird (z. B. `{"x-amz-server-side-encryption" : "AES256"}`). Weitere mögliche Header finden Sie [PutObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)in der *Amazon Simple Storage Service API-Referenz.*
+ **kms\_key\_id** – (Optional) Standardmäßig werden alle Daten, die an Amazon S3 gesendet werden, mit dem AES-GCM-authentifizierten Verschlüsselungsmodus und einem zufällig generierten Schlüssel verschlüsselt. Damit Ihre Lambda-Funktion stärkere Verschlüsselungsschlüssel verwendet, die von KMS generiert werden, wie`a7e63k4b-8loc-40db-a2a1-4d0en2cd8331`, können Sie eine ID einer Verschlüsselung angeben.
+ **disable\_spill\_encryption** – (Optional) Bei Einstellung auf `True`, wird die Spill-Verschlüsselung deaktiviert. Die Standardeinstellung ist `False`, sodass Daten, die an S3 übertrragen werden, mit AES-GCM verschlüsselt werden - entweder mit einem zufällig generierten Schlüssel oder mit KMS zum Generieren von Schlüsseln. Das Deaktivieren der Überlauf-Verschlüsselung kann die Leistung verbessern, insbesondere wenn Ihr Überlauf-Standort eine [serverseitige Verschlüsselung](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html) verwendet.

## Testen von Datenbanken und Tabellen
<a name="connectors-tpcds-test-databases-and-tables"></a>

Der Athena TPC-DS-Konnektor generiert eine TPC-DS-konforme Datenbank mit einem der vier Skalierungsfaktoren `tpcds1`, `tpcds10`, `tpcds100`, `tpcds250` oder `tpcds1000`.

### Zusammenfassung der Tabellen
<a name="connectors-tpcds-table-summary"></a>

Eine vollständige Liste der Testdatentabellen und -spalten erhalten Sie, wenn Sie `SHOW TABLES`- oder `DESCRIBE TABLE`-Abfragen ausführen. Die folgende Zusammenfassung der Tabellen dient der Übersichtlichkeit.

1. call\_center

1. catalog\_page

1. catalog\_returns

1. catalog\_sales

1. customer

1. customer\_address

1. customer\_demographics

1. date\_dim

1. dbgen\_version

1. household\_demographics

1. income\_band

1. -Bestand

1. item

1. promotion

1. Grund

1. ship\_mode

1. Store

1. store\_returns

1. store\_sales

1. time\_dim

1. warehouse

1. web\_page

1. web\_returns

1. web\_sales

1. Web\_site

Informationen zu TPC-DS-Abfragen, die mit diesem generierten Schema und den generierten Daten kompatibel sind, finden Sie im Verzeichnis [athena-tpcds/src/main/resources/queries/](https://github.com/awslabs/aws-athena-query-federation/tree/master/athena-tpcds/src/main/resources/queries)unter. GitHub

### Beispielabfrage
<a name="connectors-tpcds-example-query"></a>

Die folgenden `SELECT`-Abfragebeispiele fragen den `tpcds`-Katalog für demografische Kundendaten in bestimmten Landkreisen ab.

```
SELECT
  cd_gender,
  cd_marital_status,
  cd_education_status,
  count(*) cnt1,
  cd_purchase_estimate,
  count(*) cnt2,
  cd_credit_rating,
  count(*) cnt3,
  cd_dep_count,
  count(*) cnt4,
  cd_dep_employed_count,
  count(*) cnt5,
  cd_dep_college_count,
  count(*) cnt6
FROM
  "lambda:tpcds".tpcds1.customer c, "lambda:tpcds".tpcds1.customer_address ca, "lambda:tpcds".tpcds1.customer_demographics
WHERE
  c.c_current_addr_sk = ca.ca_address_sk AND
    ca_county IN ('Rush County', 'Toole County', 'Jefferson County',
                  'Dona Ana County', 'La Porte County') AND
    cd_demo_sk = c.c_current_cdemo_sk AND
    exists(SELECT *
           FROM "lambda:tpcds".tpcds1.store_sales, "lambda:tpcds".tpcds1.date_dim
           WHERE c.c_customer_sk = ss_customer_sk AND
             ss_sold_date_sk = d_date_sk AND
             d_year = 2002 AND
             d_moy BETWEEN 1 AND 1 + 3) AND
    (exists(SELECT *
            FROM "lambda:tpcds".tpcds1.web_sales, "lambda:tpcds".tpcds1.date_dim
            WHERE c.c_customer_sk = ws_bill_customer_sk AND
              ws_sold_date_sk = d_date_sk AND
              d_year = 2002 AND
              d_moy BETWEEN 1 AND 1 + 3) OR
      exists(SELECT *
             FROM "lambda:tpcds".tpcds1.catalog_sales, "lambda:tpcds".tpcds1.date_dim
             WHERE c.c_customer_sk = cs_ship_customer_sk AND
               cs_sold_date_sk = d_date_sk AND
               d_year = 2002 AND
               d_moy BETWEEN 1 AND 1 + 3))
GROUP BY cd_gender,
  cd_marital_status,
  cd_education_status,
  cd_purchase_estimate,
  cd_credit_rating,
  cd_dep_count,
  cd_dep_employed_count,
  cd_dep_college_count
ORDER BY cd_gender,
  cd_marital_status,
  cd_education_status,
  cd_purchase_estimate,
  cd_credit_rating,
  cd_dep_count,
  cd_dep_employed_count,
  cd_dep_college_count
LIMIT 100
```

## Erforderliche Berechtigungen
<a name="connectors-tpcds-required-permissions"></a>

Ausführliche Informationen zu den für diesen Konnektor erforderlichen IAM-Richtlinien finden Sie im `Policies`-Abschnitt der [athena-tpcds.yaml](https://github.com/awslabs/aws-athena-query-federation/blob/master/athena-tpcds/athena-tpcds.yaml)-Datei. In der folgenden Liste sind die erforderlichen Berechtigungen zusammengefasst.
+ **Amazon-S3-Schreibzugriff** – Der Konnektor benötigt Schreibzugriff auf einen Speicherort in Amazon S3, um Ergebnisse aus großen Abfragen zu übertragen.
+ **Athena GetQueryExecution** — Der Konnektor verwendet diese Berechtigung, um einen Fast-Fail auszuführen, wenn die Upstream-Athena-Abfrage beendet wurde.

## Leistung
<a name="connectors-tpcds-performance"></a>

Der Athena-TPC-DS-Konnektor versucht, Abfragen basierend auf dem von Ihnen gewählten Skalierungsfaktor zu parallelisieren. Der Prädikat-Pushdown wird innerhalb der Lambda-Funktion ausgeführt.

## Lizenzinformationen
<a name="connectors-tpcds-license-information"></a>

Das TPC-DS-Konnektor-Projekt von Amazon Athena ist unter der [Apache-2.0-Lizenz](https://www.apache.org/licenses/LICENSE-2.0.html) lizenziert.

## Weitere Ressourcen
<a name="connectors-tpcds-additional-resources"></a>

Weitere Informationen zu diesem Connector finden Sie auf [der entsprechenden Website](https://github.com/awslabs/aws-athena-query-federation/tree/master/athena-tpcds) unter .com. GitHub