Amazon Athena Neptune Konnektor - 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.

Amazon Athena Neptune Konnektor

Amazon Neptune ist ein schneller, zuverlässiger, vollständig verwalteter Graph-Datenbankservice, mit dem es ganz einfach ist, Anwendungen zu erstellen und auszuführen, die mit stark verbundenen Datensätzen arbeiten. Die speziell entwickelte, leistungsstarke Diagrammdatenbank-Engine von Neptune speichert Milliarden von Beziehungen optimal und fragt Diagramme mit einer Latenz von nur Millisekunden ab. Weitere Informationen finden Sie unter Neptune-Benutzerhandbuch.

Der Amazon Athena Neptune-Konnektor ermöglicht Athena die Kommunikation mit Ihrer Neptune-Graphdatenbank-Instance, sodass Ihre Neptun-Diagrammdaten über SQL-Abfragen zugänglich sind.

Wenn Sie Lake Formation in Ihrem Konto aktiviert haben, AWS Serverless Application Repository muss die IAM-Rolle für Ihren Athena Federated Lambda Connector, den Sie in der bereitgestellt haben, Lesezugriff in Lake Formation auf den haben. AWS Glue Data Catalog

Voraussetzungen

Die Verwendung des Neptune-Konnektors erfordert die folgenden drei Schritte.

Einschränkungen

Derzeit hat der Neptune Connector die folgenden Einschränkungen.

  • Das Projizieren von Spalten, einschließlich des Primärschlüssels (ID), ist nicht unterstützt.

Einen Neptun-Cluster einrichten

Wenn Sie keinen vorhandenen Amazon Neptune-Cluster- und Eigenschaftsgraph-Datensatz haben, den Sie verwenden möchten, müssen Sie einen einrichten.

Stellen Sie sicher, dass Sie über einen Internet-Gateway und einen NAT-Gateway in der VPC verfügen, die Ihren Neptune-Cluster hostet. Die privaten Subnetze, die die Lambda-Funktion des Neptune-Konnektors verwendet, sollten über diesen NAT-Gateway eine Verbindung zum Internet haben. Die Lambda-Funktion des Neptune-Konnektors verwendet das NAT-Gateway für die Kommunikation mit. AWS Glue

Anweisungen zum Einrichten eines neuen Neptun-Clusters und zum Laden mit einem Beispieldatensatz finden Sie unter Sample Neptune Cluster Setup auf .com. GitHub

Einrichten eines AWS Glue Data Catalog

Im Gegensatz zu herkömmlichen relationalen Datenspeichern verwenden Neptune Graph DB-Knoten und -Edges kein festgelegtes Schema. Jeder Eintrag kann unterschiedliche Felder und Datentypen haben. Da der Neptune-Konnektor jedoch Metadaten aus dem abruft AWS Glue Data Catalog, müssen Sie eine AWS Glue Datenbank erstellen, die Tabellen mit dem erforderlichen Schema enthält. Nachdem Sie die AWS Glue -Datenbank und -Tabellen erstellt haben, kann der Konnektor die Liste der Tabellen füllen, die für die Abfrage von Athena verfügbar sind.

Aktivieren des Spaltenabgleichs ohne Berücksichtigung der Groß-/Kleinschreibung

Um Spaltennamen aus Ihrer Neptune-Tabelle mit der richtigen Groß- und Kleinschreibung aufzulösen, auch wenn die Spaltennamen alle in Kleinbuchstaben geschrieben sind, können Sie den Neptune-Konnektor so konfigurieren AWS Glue, dass die Groß- und Kleinschreibung nicht berücksichtigt wird.

Um dieses Feature zu aktivieren, setzen Sie die Umgebungsvariable enable_caseinsensitivematch in der Lambda-Funktion des Neptune-Konnektors auf true.

Geben Sie den AWS Glue Glabel-Tabellenparameter für Tabellennamen in Groß-/Kleinschreibung an

Da nur Tabellennamen in Kleinbuchstaben AWS Glue unterstützt werden, ist es wichtig, den glabel AWS Glue Tabellenparameter anzugeben, wenn Sie eine AWS Glue Tabelle für Neptune erstellen und Ihr Neptune-Tabellenname Groß- und Kleinschreibung enthält.

Nehmen Sie den glabel Parameter in Ihre AWS Glue Tabellendefinition auf und setzen Sie seinen Wert auf Ihren Tabellennamen mit der ursprünglichen Groß-/Kleinschreibung. Dadurch wird sichergestellt, dass das richtige Gehäuse erhalten bleibt, wenn Sie mit Ihrem Neptune-Tisch AWS Glue interagieren. Im folgenden Beispiel wird der Wert von glabel auf den Tabellennamen Airport gesetzt.

glabel = Airport
Einstellung der glabel AWS Glue Tabelleneigenschaft, um die Groß- und Kleinschreibung des Tabellennamens für eine Neptun-Tabelle beizubehalten

Weitere Informationen zur Einrichtung eines für AWS Glue Data Catalog die Arbeit mit Neptune finden Sie unter AWS Glue Katalog einrichten auf GitHub .com.

Leistung

Der Athena-Neptune-Konnektor führt einen Prädikat-Pushdown durch, um die von der Abfrage durchsuchten Daten zu reduzieren. Prädikate, die den Primärschlüssel verwenden, führen jedoch zu einem Abfragefehler. LIMIT-Klauseln reduzieren die Menge der gescannten Daten, aber wenn Sie kein Prädikat angeben, sollten Sie davon ausgehen, dass SELECT-Abfragen mit einer LIMIT-Klausel mindestens 16 MB Daten scannen. Der Neptune-Konnektor ist aufgrund der Gleichzeitigkeit widerstandsfähig gegenüber Drosselung.

Passthrough-Abfragen

Der Neptune-Connector unterstützt Passthrough-Abfragen. Sie können diese Funktion verwenden, um Gremlin-Abfragen für Eigenschaftsdiagramme und SPARQL-Abfragen für RDF-Daten auszuführen.

Verwenden Sie die folgende Syntax, um Passthrough-Abfragen mit Neptune zu erstellen:

SELECT * FROM TABLE( system.query( DATABASE => 'database_name', COLLECTION => 'collection_name', QUERY => 'query_string' ))

Das folgende Beispiel für Neptune-Passthrough-Abfragen filtert nach Flughäfen mit dem Code. ATL Die doppelten einfachen Anführungszeichen stehen für Escape-Zeichen.

SELECT * FROM TABLE( system.query( DATABASE => 'graph-database', COLLECTION => 'airport', QUERY => 'g.V().has(''airport'', ''code'', ''ATL'').valueMap()' ))

Weitere Ressourcen

Weitere Informationen zu diesem Connector finden Sie auf der entsprechenden Website auf GitHub .com.