Neptune-Loader-Befehl - Amazon Neptune

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.

Neptune-Loader-Befehl

Lädt Daten aus einem Amazon-S3-Bucket in eine Neptune-DB-Instance.

Zum Laden der Daten müssen Sie eine HTTP-POST-Anforderung an den https://your-neptune-endpoint:port/loader-Endpunkt senden. Die Parameter für die loader-Anforderung können im POST-Text oder als URL-kodierte Parameter gesendet werden.

Wichtig

Der MIME-Typ muss application/json sein.

Der S3-Bucket muss sich in derselben AWS Region wie der Cluster befinden.

Anmerkung

Sie können verschlüsselte Daten aus Amazon S3 laden, wenn sie mit dem Amazon-S3-Modus SSE-S3 verschlüsselt wurden. In diesem Fall kann Neptune Ihre Anmeldeinformationen vortäuschen und s3:getObject-Aufrufe in Ihrem Namen ausgeben.

Sie können auch verschlüsselte Daten aus Amazon S3 laden, die mit dem Modus SSE-KMS verschlüsselt wurden, wenn Ihre IAM-Rolle die notwendigen Berechtigungen für den Zugriff auf AWS KMS besitzt. Ohne die entsprechenden AWS KMS Berechtigungen schlägt der Massenladevorgang fehl und es wird eine LOAD_FAILED Antwort zurückgegeben.

Neptune unterstützt zurzeit nicht das Laden von Amazon-S3-Daten, die mit dem Modus SSE-C verschlüsselt wurden.

Sie müssen nicht warten, bis ein Ladeauftrag abgeschlossen ist, bevor Sie einen weiteren Ladeauftrag starten. Neptune kann bis zu 64 Auftragsanforderungen gleichzeitig in eine Warteschlange einstellen, wenn ihre queueRequest-Parameter auf "TRUE" festgelegt sind. Die Reihenfolge der Jobs in der Warteschlange lautet first-in-first-out (FIFO). Wenn Sie nicht möchten, dass ein Ladeauftrag in die Warteschlange eingereiht wird, können Sie seinen Parameter queueRequest auf "FALSE" (den Standardwert) festlegen, damit der Ladeauftrag fehlschlägt, wenn ein bereits ein anderer Ladeauftrag ausgeführt wird.

Sie können mit dem Parameter dependencies einen Auftrag in die Warteschlange stellen, der nur ausgeführt werden darf, nachdem bestimmte vorherige Aufträge in der Warteschlange erfolgreich durchgeführt wurden. Wenn Sie so verfahren und einer dieser angegebenen Aufträge fehlschlägt, wird Ihr Auftrag nicht ausgeführt und sein Status wird auf LOAD_FAILED_BECAUSE_DEPENDENCY_NOT_SATISFIED gesetzt.

Neptune-Loader-Anforderungssyntax

{ "source" : "string", "format" : "string", "iamRoleArn" : "string", "mode": "NEW|RESUME|AUTO", "region" : "us-east-1", "failOnError" : "string", "parallelism" : "string", "parserConfiguration" : { "baseUri" : "http://base-uri-string", "namedGraphUri" : "http://named-graph-string" }, "updateSingleCardinalityProperties" : "string", "queueRequest" : "TRUE", "dependencies" : ["load_A_id", "load_B_id"] }

Neptune-Loader-Anforderungsparameter

  • source   –   Ein Amazon-S3-URI.

    Der Parameter SOURCE akzeptiert Amazon-S3-URIs, die eine einzelne Datei, mehrere Dateien, einen Ordner oder mehrere Ordner angeben. Neptune lädt jede Datendatei in den Ordner, der angegeben ist.

    Der URI kann in einem der folgenden Formate angegeben sein.

    • s3://bucket_name/object-key-name

    • https://s3.amazonaws.com/bucket_name/object-key-name

    • https://s3.us-east-1.amazonaws.com/bucket_name/object-key-name

    Das object-key-name Element der URI entspricht dem Präfixparameter in einem Amazon S3 ListObjectsS3-API-Aufruf. Es gibt alle Objekte im angegebenen Amazon-S3-Bucket an, deren Namen mit diesem Präfix beginnen. Dabei kann es sich um eine einzelne Datei oder einen einzelnen Ordner oder mehrere Dateien und/oder Ordner handeln.

    Die angegebenen Ordner können mehrere Eckpunkt- und Kantendateien enthalten.

    Wenn Sie beispielsweise die folgende Ordnerstruktur und die folgenden Dateien in einem Amazon S3 S3-Bucket mit dem Namen habenbucket-name:

    s3://bucket-name/a/bc s3://bucket-name/ab/c s3://bucket-name/ade s3://bucket-name/bcd

    Wenn der Quellparameter als angegeben ists3://bucket-name/a, werden die ersten drei Dateien geladen.

    s3://bucket-name/a/bc s3://bucket-name/ab/c s3://bucket-name/ade
  • format   –   Das Format der Daten. Weitere Informationen zu Datenformaten für den Neptune-Befehl Loader finden Sie unter Verwenden des Amazon-Neptune-Massen-Loaders für die Aufnahme von Daten.

    Zulässige Werte
  • iamRoleArn   –   Der Amazon-Ressourcenname (ARN) für eine IAM-Rolle, die von der Neptune-DB-Instance für den Zugriff auf den S3-Bucket angenommen wird. Informationen zum Erstellen einer Rolle, die über Zugriff auf Amazon S3 verfügt, und zum Verknüpfen dieser Rolle mit einem Neptune-Cluster finden Sie unter Voraussetzungen: IAM-Rolle und Amazon-S3-Zugriff.

    Ab Engine-Version 1.2.1.0.R3 können Sie auch mehrere IAM-Rollen verketten, wenn sich die Neptune-DB-Instance und der Amazon S3 S3-Bucket in unterschiedlichen Konten befinden. AWS In diesem Fall enthält iamRoleArn eine durch Komma getrennte Liste von Rollen-ARNs, wie in Verketten von IAM-Rollen in Amazon Neptune beschrieben. Beispielsweise:

    curl -X POST https://localhost:8182/loader \ -H 'Content-Type: application/json' \ -d '{ "source" : "s3://(the target bucket name)/(the target date file name)", "iamRoleArn" : "arn:aws:iam::(Account A ID):role/(RoleA),arn:aws:iam::(Account B ID):role/(RoleB),arn:aws:iam::(Account C ID):role/(RoleC)", "format" : "csv", "region" : "us-east-1" }'
  • region— Der region Parameter muss mit der AWS Region des Clusters und dem S3-Bucket übereinstimmen.

    Amazon Neptune ist in den folgenden -Regionen verfügbar:

    • USA Ost (Nord-Virginia):   us-east-1

    • USA Ost (Ohio):   us-east-2

    • USA West (Nordkalifornien):   us-west-1

    • USA West (Oregon):   us-west-2

    • Kanada (Zentral):   ca-central-1

    • Südamerika (São Paulo):   sa-east-1

    • Europa (Stockholm):   eu-north-1

    • Europa (Irland):   eu-west-1

    • Europa (London):   eu-west-2

    • Europa (Paris):   eu-west-3

    • Europa (Frankfurt):   eu-central-1

    • Naher Osten (Bahrain):   me-south-1

    • Naher Osten (VAE):   me-central-1

    • Israel (Tel Aviv):   il-central-1

    • Afrika (Kapstadt):   af-south-1

    • Asien-Pazifik (Hongkong):   ap-east-1

    • Asien-Pazifik (Tokio):   ap-northeast-1

    • Asien-Pazifik (Seoul):   ap-northeast-2

    • Asien-Pazifik (Osaka): ap-northeast-3

    • Asien-Pazifik (Singapur):   ap-southeast-1

    • Asien-Pazifik (Sydney):   ap-southeast-2

    • Asien-Pazifik (Mumbai):   ap-south-1

    • China (Peking):   cn-north-1

    • China (Ningxia):   cn-northwest-1

    • AWS GovCloud (US-West): us-gov-west-1

    • AWS GovCloud (US-Ost): us-gov-east-1

  • mode   –   Der Ladeauftragsmodus.

    Zulässige Werte: RESUME, NEW, AUTO.

    Standardwert: AUTO

    • RESUME   –   Im Modus RESUME sucht der Loader nach einem vorherigen Ladevorgang aus dieser Quelle. Wenn der Loader einen vorherigen Ladevorgang findet, setzt er diesen Ladeauftrag fort. Wenn kein vorheriger Ladeauftrag gefunden wird, stoppt der Loader.

      Der Loader vermeidet das erneute Laden von Dateien, die in einem früheren Auftrag erfolgreich geladen wurden. Er versucht nur, fehlgeschlagene Dateien zu verarbeiten. Wenn Sie zuvor geladene Daten aus dem Neptune-Cluster gelöscht haben, werden diese Daten in diesem Modus nicht neu geladen. Wenn ein vorheriger Ladeauftrag alle Dateien aus derselben Quelle erfolgreich geladen hat, wird nichts neu geladen und der Loader gibt eine Erfolgsmeldung zurück.

    • NEW   –   Der Modus NEW erstellt eine neue Ladeanforderung unabhängig von vorherigen Ladevorgängen. Sie können diesen Modus verwenden, um alle Daten aus einer Quelle erneut zu laden, nachdem die zuvor aus Ihrem Neptune-Cluster geladenen Daten abgelegt wurden, oder um neue Daten zu laden, die in derselben Quelle verfügbar sind.

    • AUTO   –   Im Modus AUTO sucht der Loader nach einem vorherigen Ladeauftrag aus derselben Quelle. Wenn er einen Ladeauftrag findet, setzt er diesen Auftrag wie im Modus RESUME fort.

      Wenn der Loader keinen vorherigen Ladeauftrag aus derselben Quelle findet, lädt er wie im Modus NEW alle Daten aus der Quelle.

  • failOnError   –   Ein Flag für vollständiges Anhalten bei einem Fehler.

    Zulässige Werte: "TRUE", "FALSE".

    Standardwert: "TRUE".

    Wenn dieser Parameter auf "FALSE" gesetzt ist, versucht der Loader, alle Daten am angegebenen Speicherort zu laden, wobei alle Einträge mit Fehlern übersprungen werden.

    Wenn dieser Parameter auf "TRUE" eingestellt ist, stoppt der Loader, sobald ein Fehler auftritt. Bis zu diesem Punkt geladene Daten bleiben bestehen.

  • parallelism   –   Dies ist ein optionaler Parameter, der festgelegt werden kann, um die Anzahl der vom Massenladevorgang verwendeten Threads zu reduzieren.

    Zulässige Werte:

    • LOW –   Die Anzahl der verwendeten Threads entspricht der Anzahl der verfügbaren vCPUs dividiert durch 8.

    • MEDIUM –   Die Anzahl der verwendeten Threads entspricht der Anzahl der verfügbaren vCPUs dividiert durch 2.

    • HIGH –   Die Anzahl der verwendeten Threads entspricht der Anzahl der verfügbaren vCPUs.

    • OVERSUBSCRIBE –   Die Anzahl der verwendeten Threads entspricht der Anzahl der verfügbaren vCPUs multipliziert mit 2. Wenn dieser Wert verwendet wird, nimmt der Massen-Loader alle verfügbaren Ressourcen in Anspruch.

      Das bedeutet jedoch nicht, dass die Einstellung OVERSUBSCRIBE zu einer CPU-Auslastung von 100 % führt. Da der Ladevorgang E/A-gebunden ist, liegt die höchste zu erwartende CPU-Auslastung im Bereich von 60 bis 70 %.

    Standardwert: HIGH

    Die Einstellung parallelism kann manchmal beim Laden von openCypher-Daten zu einem Deadlock zwischen Threads führen. In diesem Fall gibt Neptune den Fehler LOAD_DATA_DEADLOCK zurück. Sie können das Problem im Allgemeinen beheben, indem Sie parallelism auf einen niedrigeren Wert festlegen und den Ladebefehl wiederholen.

  • parserConfiguration   –   Ein optionales Objekt mit zusätzlichen Parser-Konfigurationswerten. Jeder der untergeordneten Parameter ist ebenfalls optional:

    Name Beispielwert Beschreibung
    namedGraphUri http://aws.amazon.com/neptune/vocab/v01/ Grafik DefaultNamed Der Standardgraph für alle RDF-Formate, wenn kein Graph angegeben ist (für nicht-Quads-Formate und NQUAD-Einträge ohne Graph). Der Standardwert ist http://aws.amazon.com/neptune/vocab/v01/DefaultNamedGraph
    baseUri http://aws.amazon.com/neptune/default Der Basis-URI für RDF/XML und Turtle-Formate. Der Standardwert ist http://aws.amazon.com/neptune/default.
    allowEmptyStrings true

    Gremlin-Benutzer müssen beim Laden von CSV-Daten leere Zeichenfolgenwerte ("") als Knoten- und Kanteneigenschaften übergeben können. Wenn allowEmptyStrings auf false (Standard) festgelegt ist, werden diese leeren Zeichenfolgen als Nullen behandelt und nicht geladen.

    Wenn allowEmptyStrings auf true festgelegt ist, behandelt der Loader leere Zeichenfolgen als gültige Eigenschaftswerte und lädt sie entsprechend.

    Weitere Informationen finden Sie unter SPARQL-Standard-Graph und benannte Graphen.

  • updateSingleCardinalityProperties   –   Dies ist ein optionaler Parameter, der steuert, wie der Massen-Loader einen neuen Wert für Eckpunkt- oder Kanteneigenschaften mit einfacher Kardinalität behandelt. Dies wird für das Laden von openCypher-Daten nicht unterstützt (siehe Laden von openCypher-Daten).

    Zulässige Werte: "TRUE", "FALSE".

    Standardwert: "FALSE".

    Standardmäßig oder wenn updateSingleCardinalityProperties explizit als "FALSE" festgelegt ist, behandelt der Loader einen neuen Wert als Fehler, da er gegen die Einzel-Kardinalität verstößt.

    Wenn updateSingleCardinalityProperties als "TRUE" festgelegt ist, ersetzt der Massen-Loader auf der anderen Seite den vorhandenen Wert durch den neuen. Wenn in den Quelldateien, die geladen werden, mehrere Edge- oder Einzel-Kardinalität-Vertex-Eigenschaftswerte angegeben werden, kann der endgültige Wert am Ende des Massenladevorgangs jeder dieser neuen Werte sein. Der Loader stellt nur sicher, dass der vorhandene Wert durch einen der neuen ersetzt wurde.

  • queueRequest   –   Dies ist ein optionaler Flag-Parameter, der angibt, ob die Ladeanforderung in die Warteschlange eingereiht werden kann oder nicht.

    Sie müssen mit dem nächsten Ladeauftrag nicht warten, bis ein Ladeauftrag abgeschlossen ist, da Neptune bis zu 64 Aufträge gleichzeitig in die Warteschlange einreihen kann, wenn alle queueRequest-Parameter auf "TRUE" festgelegt sind. Die Reihenfolge der Jobs in der Warteschlange wird first-in-first-out (FIFO) sein.

    Wenn der Parameter queueRequest ausgelassen oder auf "FALSE" festgelegt wird, schlägt die Ladeanforderung fehl, wenn bereits ein anderer Ladeauftrag ausgeführt wird.

    Zulässige Werte: "TRUE", "FALSE".

    Standardwert: "FALSE".

  • dependencies   –   Dies ist ein optionaler Parameter, mit dem eine Ladeanforderung in der Warteschlange vom erfolgreichen Abschluss eines oder mehrerer früherer Aufträge in der Warteschlange abhängig gemacht werden kann.

    Neptune kann bis zu 64 Ladeanforderungen gleichzeitig in die Warteschlange einreihen, wenn die queueRequest-Parameter auf "TRUE" festgelegt sind. Mit dem Parameter dependencies können Sie die Ausführung einer solchen Anforderung in der Warteschlange vom erfolgreichen Abschluss einer oder mehrerer spezifizierter früherer Anforderungen in der Warteschlange abhängig machen.

    Wenn Ladung Job-A und Job-B beispielsweise unabhängig voneinander sind, mit Ladung Job-C aber erst nach Abschluss von Job-A und Job-B begonnen werden kann, gehen Sie wie folgt vor:

    1. Senden Sie load-job-A und load-job-B nacheinander in beliebiger Reihenfolge, und speichern Sie ihre Ladekennungen.

    2. Senden Sie load-job-C mit den Ladekennungen der beiden Aufträge in seinem dependencies-Feld:

    "dependencies" : ["job_A_load_id", "job_B_load_id"]

    Aufgrund des Parameters dependencies startet der Bulk-Loader Job-C erst dann, nachdem Job-A und Job-B erfolgreich abgeschlossen wurden. Wenn einer von ihnen fehlschlägt, wird Job-C nicht ausgeführt und sein Status wird auf LOAD_FAILED_BECAUSE_DEPENDENCY_NOT_SATISFIED gesetzt.

    Auf diese Weise können Sie mehrere Abhängigkeitsebenen einrichten, sodass das Fehlschlagen eines Auftrags dazu führt, dass alle Anforderungen, die direkt oder indirekt davon abhängig sind, abgebrochen werden.

  • userProvidedEdgeIds   –   Dieser Parameter ist nur erforderlich, wenn openCypher-Daten geladen werden, die Beziehungs-IDs enthalten. Er muss enthalten und auf True festgelegt sein, wenn openCypher-Beziehungs-IDs explizit in den Ladedaten angegeben werden (empfohlen).

    Wenn userProvidedEdgeIds fehlt oder auf True festgelegt ist, muss in jeder Beziehungsdatei im Ladevorgang die Spalte :ID vorhanden sein.

    Wenn userProvidedEdgeIds vorhanden und auf False festgelegt ist, dürfen Beziehungsdateien im Ladevorgang die Spalte :ID nicht enthalten. Stattdessen generiert der Neptune-Loader automatisch eine ID für jede Beziehung.

    Wenn Beziehungs-IDs explizit angegeben sind, kann der Loader den Ladevorgang nach der Behebung eines Fehlers in den CSV-Daten fortsetzen, ohne bereits geladene Beziehungen erneut laden zu müssen. Wenn Beziehungs-IDs nicht explizit angegeben sind, kann der Loader einen fehlgeschlagenen Ladevorgang nach der Korrektur einer Beziehungsdatei nicht fortsetzen und muss stattdessen alle Beziehungen erneut laden.

  • accessKey   –   [veraltet] Die Zugriffsschlüssel-ID einer IAM-Rolle mit Zugriff auf den S3-Bucket und Datendateien.

    Stattdessen wird der Parameter iamRoleArn empfohlen. Informationen zum Erstellen einer Rolle, die über Zugriff auf Amazon S3 verfügt, und zum Verknüpfen dieser Rolle mit einem Neptune-Cluster finden Sie unter Voraussetzungen: IAM-Rolle und Amazon-S3-Zugriff.

    Weitere Informationen finden Sie unter Zugriffsschlüssel (Zugriffsschlüssel-ID und geheimer Zugriffsschlüssel).

  • secretKey   –   [veraltet] Stattdessen wird der Parameter iamRoleArn empfohlen. Informationen zum Erstellen einer Rolle, die über Zugriff auf Amazon S3 verfügt, und zum Verknüpfen dieser Rolle mit einem Neptune-Cluster finden Sie unter Voraussetzungen: IAM-Rolle und Amazon-S3-Zugriff.

    Weitere Informationen finden Sie unter Zugriffsschlüssel (Zugriffsschlüssel-ID und geheimer Zugriffsschlüssel).

Besondere Überlegungen beim Laden von openCypher-Daten

  • Beim Laden von openCypher-Daten im CSV-Format muss der Formatparameter auf opencypher festgelegt werden.

  • Der Parameter updateSingleCardinalityProperties wird für openCypher-Ladevorgänge nicht unterstützt, da alle openCypher-Eigenschaften eine einfache Kardinalität besitzen. Das openCypher-Ladeformat unterstützt keine Arrays. Wenn ein ID-Wert mehr als einmal vorkommt, wird er als Duplikat oder Einfügefehler behandelt (siehe unten).

  • Der Neptune-Loader behandelt Duplikate in openCypher-Daten wie folgt:

    • Wenn der Loader mehrere Zeilen mit derselben Knoten-ID findet, werden sie entsprechend der folgenden Regel zusammengeführt:

      • Alle Bezeichnungen in den Zeilen werden dem Knoten hinzugefügt.

      • Für jede Eigenschaft wird nur einer der Eigenschaftswerte geladen. Die Auswahl des Werts, der geladen wird, ist nicht deterministisch.

    • Wenn der Loader mehrere Zeilen mit derselben Beziehungs-ID findet, wird nur eine dieser Zeilen geladen. Die Auswahl der Zeile, die geladen wird, ist nicht deterministisch.

    • Der Loader aktualisiert niemals die Eigenschaftswerte vorhandener Knoten oder Beziehungen in der Datenbank, wenn er Ladedaten mit der ID der vorhandenen Knoten oder Beziehungen findet. Es werden jedoch Knotenbezeichnungen und -eigenschaften geladen, die in vorhandenen Knoten oder Beziehungen nicht vorhanden sind.

  • Sie müssen Beziehungen zwar keine IDs zuweisen, dies wird jedoch in der Regel empfohlen (siehe den Parameter userProvidedEdgeIds oben). Ohne explizite Beziehungs-IDs muss der Loader bei einem Fehler in einer Beziehungsdatei alle Beziehungen erneut laden, anstatt den Ladevorgang ab der Stelle fortzusetzen, an der er fehlgeschlagen ist.

    Wenn die Ladedaten keine expliziten Beziehungs-IDs enthalten, kann der Loader keine duplizierten Beziehungen erkennen.

Dies ist ein Beispiel für einen openCypher-Ladebefehl:

curl -X POST https://your-neptune-endpoint:port/loader \ -H 'Content-Type: application/json' \ -d ' { "source" : "s3://bucket-name/object-key-name", "format" : "opencypher", "userProvidedEdgeIds": "TRUE", "iamRoleArn" : "arn:aws:iam::account-id:role/role-name", "region" : "region", "failOnError" : "FALSE", "parallelism" : "MEDIUM", }'

Die Loader-Antwort ist dieselbe wie normal. Beispielsweise:

{ "status" : "200 OK", "payload" : { "loadId" : "guid_as_string" } }

Neptune-Loader-Antwortsyntax

{ "status" : "200 OK", "payload" : { "loadId" : "guid_as_string" } }
200 OK

Bei einem erfolgreich gestarteten Ladeauftrag wird ein 200-Code zurückgegeben.

Neptune-Loader-Fehler

Wenn ein Fehler auftritt, wird ein JSON-Objekt im BODY der Antwort zurückgegeben. Das message-Objekt enthält eine Beschreibung des Fehlers.

Fehlerkategorien
  • Error 400   –   Syntaxfehler geben den HTTP-Fehler 400 (ungültige Anforderung) zurück. Die Nachricht beschreibt den Fehler.

  • Error 500   –   Eine gültige Anforderung, die nicht verarbeitet werden kann, gibt den internen HTTP-Serverfehler 500 zurück. Die Nachricht beschreibt den Fehler.

Im Folgenden sind mögliche Fehlermeldungen des Loaders mit einer Beschreibung des jeweiligen Fehlers aufgeführt.

Loader-Fehlermeldungen
  • Couldn't find the AWS credential for iam_role_arn  (HTTP 400)

    Die Anmeldeinformationen wurden nicht gefunden. Überprüfen Sie die angegebenen Anmeldeinformationen anhand der IAM-Konsole oder AWS CLI der Ausgabe. Stellen Sie sicher, dass Sie die in iamRoleArn angegebene IAM-Rolle zum Cluster hinzugefügt haben.

  • S3 bucket not found for source  (HTTP 400)

    Der S3-Bucket ist nicht vorhanden. Überprüfen Sie den Namen des Buckets.

  • The source source-uri does not exist/not reachable  (HTTP 400)

    Es wurden keine übereinstimmenden Dateien im S3-Bucket gefunden.

  • Unable to connect to S3 endpoint. Provided source = source-uri and region = aws-region  (HTTP 500)

    Verbindung zu Amazon S3 kann nicht hergestellt werden. Die Region muss mit der Cluster-Region übereinstimmen. Stellen Sie sicher, dass Sie über einen VPC-Endpunkt verfügen. Informationen zum Erstellen eines VPC-Endpunkts finden Sie unter Erstellen eines Amazon-S3-VPC-Endpunkts.

  • Bucket is not in provided Region (aws-region)  (HTTP 400)

    Der Bucket muss sich in derselben AWS Region wie Ihre Neptune-DB-Instance befinden.

  • Unable to perform S3 list operation  (HTTP 400)

    Der IAM-Benutzer oder die angegebene Rolle verfügt nicht über List-Berechtigungen für den Bucket oder Ordner. Prüfen Sie die Richtlinie oder die Zugriffskontrollliste (ACL) für den Bucket.

  • Start new load operation not permitted on a read replica instance  (HTTP 405)

    Das Laden ist ein Schreibvorgang. Wiederholen Sie den Ladevorgang auf dem Lese-/Schreib-Cluster-Endpunkt.

  • Failed to start load because of unknown error from S3  (HTTP 500)

    Amazon S3 hat einen unbekannten Fehler zurückgegeben. Wenden Sie sich an AWS Support.

  • Invalid S3 access key  (HTTP 400)

    Der Zugriffsschlüssel ist ungültig. Prüfen Sie die angegebenen Anmeldeinformationen.

  • Invalid S3 secret key  (HTTP 400)

    Der geheime Schlüssel ist ungültig. Prüfen Sie die angegebenen Anmeldeinformationen.

  • Max concurrent load limit breached  (HTTP 400)

    Wenn eine Ladeanforderung ohne "queueRequest" : "TRUE" gesendet wird und derzeit ein Ladeauftrag ausgeführt wird, schlägt die Anforderung mit diesem Fehler fehl.

  • Failed to start new load for the source "source name". Max load task queue size limit breached. Limit is 64  (HTTP 400)

    Neptune unterstützt Warteschlangen mit bis zu 64 Loader-Aufträgen gleichzeitig. Wenn eine zusätzliche Ladeanforderung an eine Warteschlange mit bereits 64 Aufträgen gesendet wird, schlägt die Anforderung mit dieser Meldung fehl.

Neptune-Loader-Beispiele

Beispiel Anforderung

Im Folgenden ist eine Anforderung dargestellt, die über HTTP POST mit dem curl-Befehl gesendet wird. Dabei wird eine Datei im Neptune-CSV-Format geladen. Weitere Informationen finden Sie unter Gremlin-Ladedatenformat.

curl -X POST \ -H 'Content-Type: application/json' \ https://your-neptune-endpoint:port/loader -d ' { "source" : "s3://bucket-name/object-key-name", "format" : "csv", "iamRoleArn" : "ARN for the IAM role you are using", "region" : "region", "failOnError" : "FALSE", "parallelism" : "MEDIUM", "updateSingleCardinalityProperties" : "FALSE", "queueRequest" : "FALSE" }'
Beispiel Antwort
{ "status" : "200 OK", "payload" : { "loadId" : "ef478d76-d9da-4d94-8ff1-08d9d4863aa5" } }