Verbinden von Athena mit einem Apache Hive Metastore - Amazon Athena

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.

Verbinden von Athena mit einem Apache Hive Metastore

Um eine Verbindung von Athena zu einem Apache-Hive-Metastore herzustellen, müssen Sie eine Lambda-Funktion erstellen und konfigurieren. Für eine grundlegende Implementierung können Sie alle erforderlichen Schritte zum Start von der Athena-Verwaltungskonsole aus ausführen.

Anmerkung

Das folgende Verfahren erfordert, dass Sie über die Berechtigung verfügen, eine benutzerdefinierte IAM-Rolle für die Lambda-Funktion zu erstellen. Wenn Sie nicht berechtigt sind, eine benutzerdefinierte Rolle zu erstellen, können Sie die Athena-Referenzimplementierung verwenden, um eine Lambda-Funktion separat zu erstellen, und dann die AWS Lambda Konsole verwenden, um eine vorhandene IAM-Rolle für die Funktion auszuwählen. Weitere Informationen finden Sie unter Verbinden von Athena mit einem Hive-Metastore mithilfe einer vorhandenen IAM-Ausführungsrolle.

So stellen Sie eine Verbindung von Athena zu einem Hive-Metastore her:
  1. Öffnen Sie die Athena-Konsole unter https://console.aws.amazon.com/athena/.

  2. Wenn der Navigationsbereich in der Konsole nicht sichtbar ist, wählen Sie das Erweiterungsmenü auf der linken Seite.

    Wählen Sie das Erweiterungsmenü aus.
  3. Wählen Sie Data sources (Datenquellen) aus.

  4. Wählen Sie oben rechts in der Konsole Datenquelle erstellen aus.

  5. Wählen Sie auf der Seite Eine Datenquelle wählen für Datenquelle S3 - Apache Hive Metastore.

  6. Wählen Sie Weiter aus.

  7. Geben Sie im Abschnitt Details zur Datenquelle für Datenquellenname den Namen ein, den Sie in Ihren SQL-Anweisungen verwenden möchten, wenn Sie die Datenquelle von Athena abfragen. Der Name kann bis zu 127 Zeichen lang sein und muss innerhalb Ihres Kontos eindeutig sein. Er kann nicht mehr geändert werden, nachdem Sie ihn erstellt haben. Gültige Zeichen sind a-z, A-Z, 0-9, _ (Unterstrich), @ (At-Zeichen) und - (Bindestrich). Die Namen awsdatacatalog, hive, jmx und system sind von Athena reserviert und können nicht für Datenquellennamen verwendet werden.

  8. Wählen Sie für Lambda-Funktion die Option Lambda-Funktion erstellen aus, und wählen Sie dann Neue Lambda-Funktion erstellen in AWS Lambda

    Die AthenaHiveMetastoreFunctionSeite wird in der Konsole geöffnet. AWS Lambda Die Seite enthält detaillierte Informationen zum Connector.

    Die AthenaHiveMetastoreFunctionSeite in der AWS Lambda Konsole.
  9. Geben Sie unter Application settings (Anwendungseinstellungen) die Parameter für Ihre Lambda-Funktion ein.

    • LambdaFuncName— Geben Sie einen Namen für die Funktion ein. Zum Beispiel myHiveMetastore.

    • SpillLocation— Geben Sie in diesem Konto einen Amazon S3 S3-Standort an, um Spillover-Metadaten zu speichern, falls die Antwortgröße der Lambda-Funktion 4 MB überschreitet.

    • HMSUris – Geben Sie den URI Ihres Hive-Metastore-Hosts ein, der das Thrift-Protokoll an Port 9083 verwendet. Verwenden der Syntax thrift://<host_name>:9083.

    • LambdaMemory— Geben Sie einen Wert zwischen 128 MB und 3008 MB an. Der Lambda-Funktion werden CPU-Zyklen proportional zur von Ihnen konfigurierten Speichermenge zugewiesen. Der Standardwert ist 1024.

    • LambdaTimeout— Geben Sie die maximal zulässige Laufzeit des Lambda-Aufrufs in Sekunden von 1 bis 900 an (900 Sekunden sind 15 Minuten). Der Standardwert ist 300 Sekunden (5 Minuten).

    • VPC SecurityGroupIds — Geben Sie eine durch Kommas getrennte Liste von VPC-Sicherheitsgruppen-IDs für den Hive-Metastore ein.

    • VPC SubnetIds — Geben Sie eine durch Kommas getrennte Liste von VPC-Subnetz-IDs für den Hive-Metastore ein.

  10. Wählen Sie Ich bestätige, dass diese Anwendung benutzerdefinierte IAM-Rollen erstellt und dann Bereitstellen.

    Bereitstellen der Lambda Funktions-App über die AWS Lambda -Konsole.

    Wenn die Bereitstellung abgeschlossen ist, wird Ihre Funktion in Ihrer Liste der Lambda-Anwendungen angezeigt. Nachdem die Hive-Metastore-Funktion für Ihr Konto bereitgestellt wurde, können Sie Athena für die Verwendung konfigurieren.

  11. Kehren Sie zur Seite Datenquellendetails eingeben der Athena-Konsole zurück.

  12. Wählen Sie im Abschnitt Lambada-Funktion das Symbol Aktualisieren neben dem Lambda-Funktionssuchfeld aus. Wenn Sie die Liste der verfügbaren Funktionen aktualisieren, wird Ihre neu erstellte Funktion in der Liste angezeigt.

  13. Wählen Sie den Namen der Funktion aus, die Sie gerade in der Lambda-Konsole erstellt haben. Der ARN der Lambda-Funktion wird angezeigt.

  14. (Optional) Fügen Sie für Tags Schlüssel-Wert-Paare hinzu, die mit dieser Datenquelle verknüpft werden sollen. Weitere Informationen zu Tags erhalten Sie unter Markieren von Athena-Ressourcen.

  15. Wählen Sie Weiter aus.

  16. Auf der Seite Überprüfen und erstellen prüfen Sie die Datenquellendetails und wählen Sie dann Datenquelle erstellen aus.

  17. Der Abschnitt Datenquellendetails auf der Seite für Ihre Datenquelle zeigt Informationen über Ihren neuen Connector an.

    Sie können nun den Data source name (Datenquellennamen) verwenden, den Sie angegeben haben, um auf den Hive-Metastore in Ihren SQL-Abfragen in Athena zu verweisen. Verwenden Sie in Ihren SQL-Abfragen die folgende Beispielsyntax und ersetzen Sie hms-catalog-1 durch den zuvor angegebenen Katalognamen.

    SELECT * FROM hms-catalog-1.CustomerData.customers
  18. Informationen zum Anzeigen, Bearbeiten oder Löschen der von Ihnen erstellten Datenquellen finden Sie unter Verwalten von Datenquellen.