

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-Neptune-Neptune-Konnektivität
<a name="neptune-jdbc"></a>

Amazon Neptune hat einen [Open-Source-JDBC-Treiber](https://github.com/aws/amazon-neptune-jdbc-driver) veröffentlicht, der openCypher-, Gremlin-, SQL-Gremlin- und SPARQL-Abfragen unterstützt. Die JDBC-Konnektivität vereinfacht die Herstellung von Verbindungen mit Neptune über Business-Intelligence (BI)-Tools wie Tableau. Für die Verwendung des JDBC-Treibers mit Neptune fallen keine zusätzlichen Kosten an. Sie zahlen weiter nur für die verbrauchten Neptune-Ressourcen.

Der Treiber ist mit JDBC 4.2 kompatibel und erfordert mindestens Java 8. Informationen zur Verwendung eines JDBC-Treibers finden Sie in der [JDBC-API-Dokumentation](https://docs.oracle.com/javase/8/docs/technotes/guides/jdbc/).

Das GitHub Projekt, in dem Sie Probleme einreichen und Funktionsanfragen öffnen können, enthält eine ausführliche Dokumentation für den Treiber:

**[JDBC-Treiber für Amazon Neptune](https://github.com/aws/amazon-neptune-jdbc-driver#readme)**
+ [Verwenden von SQL mit dem JDBC-Treiber](https://github.com/aws/amazon-neptune-jdbc-driver/blob/develop/markdown/sql.md)
+ [Verwenden von Gremlin mit dem JDBC-Treiber](https://github.com/aws/amazon-neptune-jdbc-driver/blob/develop/markdown/gremlin.md)
+ [Verwenden von openCypher mit dem JDBC-Treiber](https://github.com/aws/amazon-neptune-jdbc-driver/blob/develop/markdown/opencypher.md)
+ [Verwenden von SPARQL mit dem JDBC-Treiber](https://github.com/aws/amazon-neptune-jdbc-driver/blob/develop/markdown/sparql.md)

# Erste Schritte mit dem Neptune-JDBC-Treiber
<a name="neptune-jdbc-getting-started"></a>

Um den Neptune-JDBC-Treiber für die Verbindung mit einer Neptune-Instance zu verwenden, muss entweder der JDBC-Treiber auf einer Amazon-EC2-Instance in derselben VPC wie Ihr Neptune-DB-Cluster bereitgestellt werden oder die Instance muss über einen SSH-Tunnel oder Load Balancer verfügbar sein. Ein SSH-Tunnel kann intern im Treiber oder extern eingerichtet werden.

Sie können den Treiber [hier](https://github.com/aws/amazon-neptune-jdbc-driver/releases) herunterladen. Der Treiber wird als einzelne JAR-Datei mit einem Namen wie `neptune-jdbc-1.0.0-all.jar` bereitgestellt. Um ihn zu verwenden, platzieren Sie die JAR-Datei im `classpath` Ihrer Anwendung. Wenn Ihre Anwendung Maven oder Gradle verwendet, können Sie die entsprechenden Maven- oder Gradle-Befehle verwenden, um den Treiber aus der JAR-Datei zu installieren.

Der Treiber benötigt eine JDBC-Verbindungs-URL, um eine Verbindung mit Neptune herzustellen. Das Format ist wie folgt:

```
jdbc:neptune:(connection type)://(host);property=value;property=value;...;property=value
```

In den Abschnitten für jede Abfragesprache im GitHub Projekt werden die Eigenschaften beschrieben, die Sie in der JDBC-Verbindungs-URL für diese Abfragesprache festlegen können.

Wenn sich die JAR-Datei im `classpath` Ihrer Anwendung befindet, ist keine weitere Konfiguration notwendig. Sie können den Treiber über die JDBC-`DriverManager`-Schnittstelle und eine Neptune-Verbindungszeichenfolge verbinden. Wenn Ihr Neptune-DB-Cluster beispielsweise über den Endpunkt `neptune-example.com` auf Port 8182 zugänglich ist, könnten Sie wie folgt eine Verbindung zu openCypher herstellen:

```
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

void example() {
    String url = "jdbc:neptune:opencypher://bolt://neptune-example:8182";

    Connection connection = DriverManager.getConnection(url);
    Statement statement = connection.createStatement();

    connection.close();
}
```

In den Dokumentationsabschnitten des GitHub Projekts für jede Abfragesprache wird beschrieben, wie die Verbindungszeichenfolge erstellt wird, wenn diese Abfragesprache verwendet wird.

# Verwenden von Tableau mit dem Neptune-JDBC-Treiber
<a name="neptune-jdbc-tableau"></a>

Um Tableau mit dem Neptune-JDBC-Treiber zu verwenden, laden Sie zunächst die neueste Version von [Tableau Desktop](https://www.tableau.com/products/desktop) herunter und installieren diese. Laden Sie die JAR-Datei für den Neptune-JDBC-Treiber sowie die Neptune-Tableau-Connector-Datei (eine Datei mit der Erweiterung `.taco`) herunter.

**Herstellen einer Verbindung zu Tableau for Neptune auf einem Mac-Computer**

1. Platzieren Sie die JAR-Datei mit dem Neptune-JDBC-Treiber im Ordner `/Users/(your user name)/Library/Tableau/Drivers`.

1. Platzieren Sie die Neptune-Tableau-Connector-Datei `.taco` im Ordner `/Users/(your user name)/Documents/My Tableau Repository/Connectors`.

1. Wenn die IAM-Authentifizierung aktiviert ist, richten Sie die Umgebung für diese ein. Beachten Sie, dass Umgebungsvariablen, die in `.zprofile/`, `.zshenv/`, `.bash_profile` usw. festgelegt sind, nicht funktionieren. Die Umgebungsvariablen müssen so festgelegt werden, dass sie von einer GUI-Anwendung geladen werden können.

   Eine Möglichkeit für die Einrichtung Ihrer Anmeldeinformationen besteht darin, Ihren Zugriffsschlüssel und Geheimschlüssel in der Datei `/Users/(your user name)/.aws/credentials` zu platzieren.

   Eine einfache Möglichkeit für die Einrichtung der Serviceregion besteht in der Öffnung eines Terminals und der Eingabe des folgenden Befehls unter Verwendung der Region Ihrer Anwendung (z. B. `us-east-1`):

   ```
   launchctl setenv SERVICE_REGION region name
   ```

   Es gibt weitere Möglichkeiten für die Einrichtung von Umgebungsvariablen, die nach einem Neustart beibehalten werden. Unabhängig von der verwendeten Technik müssen jedoch Variablen festgelegt werden, auf die eine GUI-Anwendung zugreifen kann.

1. Um Umgebungsvariablen in eine Mac-GUI zu laden, geben Sie diesen Befehl auf einem Terminal ein:

   ```
   /Applications/Tableau/Desktop/2021.1.app/Contents/MacOS/Tableau
   ```

**Herstellen einer Verbindung zu Tableau for Neptune auf einem Windows-Computer**

1. Platzieren Sie die JAR-Datei mit dem Neptune-JDBC-Treiber im Ordner `C:\Program Files\Tableau\Drivers`.

1. Platzieren Sie die Neptune-Tableau-Connector-Datei `.taco` im Ordner `C:\Users\(your user name)\Documents\My Tableau Repository\Connectors`.

1. Wenn die IAM-Authentifizierung aktiviert ist, richten Sie die Umgebung für diese ein.

   Dies kann so einfach wie die Einrichtung wie das Einstellen von der Umgebungsvariablen `ACCESS_KEY`, `SECRET_KEY` und `SERVICE_REGION` für Benutzer.

Wählen Sie bei geöffnetem Tableau links im Fenster **Mehr** aus. Wenn die Tableau-Connector-Datei gefunden wurde, können Sie **Amazon Neptune by AWS** in der angezeigten Liste auswählen:

![\[Auswahl von SQL in Tableau\]](http://docs.aws.amazon.com/de_de/neptune/latest/userguide/images/tableau-sql-gremlin.png)


Sie sollten den Port nicht bearbeiten oder Verbindungsoptionen hinzufügen müssen. Geben Sie Ihren Neptune-Endpunkt ein und legen Sie Ihre IAM- und SSL-Konfiguration fest. (Sie müssen SSL aktivieren, wenn Sie IAM verwenden.)

Wenn Sie **Anmelden** auswählen, kann es länger als 30 Sekunden dauern, bis die Verbindung hergestellt ist, wenn Ihr Diagramm groß ist. Tableau sammelt Eckpunkt- und Kantentabellen, verbindet Eckpunkte an Kanten und erstellt Visualisierungen.

# Fehlerbehebung für JDBC-Treiberverbindungen
<a name="neptune-jdbc-troubleshooting"></a>

Wenn der Treiber keine Verbindung zum Server herstellen kann, überprüfen Sie mithilfe der Funktion `isValid` des JDBC-Objekts `Connection`, ob die Verbindung gültig ist. Wenn die Funktion `false` zurückgibt, d. h. wenn die Verbindung ungültig ist, überprüfen Sie, ob der Endpunkt korrekt ist, mit dem die Verbindung hergestellt werden soll, ob Sie sich in der VPC Ihres Neptune-DB-Clusters befinden oder ob es einen gültigen SSH-Tunnel zum Cluster gibt.

Wenn Sie die Antwort `No suitable driver found for (connection string)` für den Aufruf `DriverManager.getConnection` erhalten, liegt wahrscheinlich ein Problem zu Beginn der Verbindungszeichenfolge vor. Stellen Sie sicher, dass die Verbindungszeichenfolge wie folgt beginnt:

```
jdbc:neptune:opencypher://...
```

Um weitere Informationen zur Verbindung zu erhalten, können Sie der Verbindungszeichenfolge wie folgt ein `LogLevel` hinzufügen:

```
jdbc:neptune:opencypher://(JDBC URL):(port);logLevel=trace
```

Alternativ können Sie in Ihren Eingabeeigenschaften `properties.put("logLevel", "trace")` hinzufügen, um Ablaufverfolgungsinformationen zu protokollieren.