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.
Die Neptune-Diagrammübersichts-API ruft die folgenden Informationen zu Ihrem Diagramm ab:
Bei Eigenschaftsdiagrammen (PG-Diagrammen) gibt die Diagrammübersichts-API eine schreibgeschützte Liste von Knoten- und Kantenbezeichnungen und Eigenschaftsschlüsseln sowie die Anzahl der Knoten, Kanten und Eigenschaften zurück.
Bei Resource-Description-Framework-Diagrammen (RDF-Diagrammen) gibt die Diagrammübersichts-API eine schreibgeschützte Liste von Klassen und Prädikatschlüsseln sowie die Anzahl der Quads, Subjekte und Prädikate zurück.
Anmerkung
Die Diagrammübersichts-API wurde mit der Engine-Version 1.2.1.0 von Neptune eingeführt.
Mit der Diagrammübersichts-API erhalten Sie schnell eine Übersicht über die Größe und den Inhalt Ihrer Grafikdaten. Sie können die API mithilfe von %summaryNeptune Workbench Magic auch interaktiv in einem Neptune-Notebook verwenden. In einer Diagrammanwendung kann die API verwendet werden, um die Suchergebnisse zu verbessern, indem im Rahmen der Suche Bezeichnungen für entdeckte Knoten oder Kanten bereitgestellt werden.
Die Diagrammübersichtsdaten stammen aus den DFE-Statistiken, die von der Neptune-DFE-Engine während der Laufzeit berechnet wurden, und sind verfügbar, wenn DFE-Statistiken verfügbar sind. Statistiken sind standardmäßig aktiviert, wenn Sie einen neuen Neptune-DB-Cluster erstellen.
Anmerkung
Die Statistikgenerierung ist für die Instance-Typen t3
und t4
(d. h. für die Instance-Typen db.t3.medium
und db.t4g.medium
) deaktiviert, um Speicherplatz zu sparen. Daher sind für diese Instance-Typen keine Diagrammübersichtsdaten verfügbar.
Sie können den Status der DFE-Statistiken mithilfe der Statistikstatus-API überprüfen. Solange die automatische Generierung von Statistiken nicht deaktiviert wurde, werden Statistiken regelmäßig automatisch aktualisiert.
Wenn Sie bei der Anforderung einer Diagrammübersicht sicherstellen möchten, dass die Statistiken so aktuell wie möglich sind, können Sie unmittelbar vor dem Abrufen der Übersicht manuell eine Statistikaktualisierung auslösen. Wenn das Diagramm während der Berechnung der Statistiken geändert wird, ist die Übersicht zwangsläufig leicht veraltet, aber nicht sehr.
Verwenden der Diagrammübersicht-API zum Abrufen von Diagrammübersichtinformationen
Die Diagrammübersicht eines Eigenschaftsdiagramms, das Sie mit Gremlin oder openCypher abfragen, können Sie vom Endpunkt der Eigenschaftsdiagramm-Übersichtsendpunkt abrufen. Für diesen Endpunkt gibt es sowohl einen langen als auch einen kurzen URI:
https://
your-neptune-host
:port
/propertygraph/statistics/summaryhttps://
your-neptune-host
:port
/pg/statistics/summary
Die Diagrammübersicht eines RDF-Diagramms, das Sie mit SPARQL abfragen, können Sie vom RDF-Übersichtsendpunkt abrufen:
https://
your-neptune-host
:port
/rdf/statistics/summary
Diese Endpunkte sind schreibgeschützt und unterstützen nur HTTP–GET
Operationen. Wenn $GRAPH_SUMMARY_ENDPOINT auf die Adresse des Endpunkts festgelegt ist, den Sie abfragen möchten, können Sie die Übersichtsdaten über curl
und HTTP-GET
wie folgt abrufen:
curl -G "$GRAPH_SUMMARY_ENDPOINT"
Wenn beim Versuch, eine Diagrammübersicht abzurufen, keine Statistiken verfügbar sind, sieht die Antwort wie folgt aus:
{
"detailedMessage": "Statistics are not available. Summary can only be generated after statistics are available.",
"requestId": "48c1f788-f80b-b69c-d728-3f6df579a5f6",
"code": "StatisticsNotAvailableException"
}
Der URL-Abfrageparameter mode
für die Diagrammübersicht-API
Die Diagrammübersichts-API akzeptiert einen URL-Abfrageparameter mit dem Namen mode
, der einen von zwei Werten annehmen kann, basic
(Standard) und detailed
. Die Diagrammübersichtantwort im detailed
-Modus eines RDF-Diagramms enthält ein zusätzliches subjectStructures
-Feld. Die detaillierte Diagrammübersichtantwort eines Eigenschaftsdiagramms enthält zwei zusätzliche Felder, nodeStructures
und edgeStructures
.
Um eine detailed
Diagrammübersichtantwort anzufordern, geben Sie den Parameter mode
wie folgt an:
curl -G "$GRAPH_SUMMARY_ENDPOINT?mode=detailed"
Wenn der Parameter mode
nicht vorhanden ist, wird standardmäßig der basic
-Modus verwendet. Daher ist eine ausdrückliche Angabe von ?mode=basic
möglich, aber nicht erforderlich.
Diagrammübersichtantwort für ein Eigenschaftsdiagramm (PG)
Bei einem leeren Eigenschaftsdiagramm sieht die detaillierte Diagrammübersichtantwort wie folgt aus:
{
"status" : "200 OK",
"payload" : {
"version" : "v1",
"lastStatisticsComputationTime" : "2023-01-10T07:58:47.972Z",
"graphSummary" : {
"numNodes" : 0,
"numEdges" : 0,
"numNodeLabels" : 0,
"numEdgeLabels" : 0,
"nodeLabels" : [ ],
"edgeLabels" : [ ],
"numNodeProperties" : 0,
"numEdgeProperties" : 0,
"nodeProperties" : [ ],
"edgeProperties" : [ ],
"totalNodePropertyValues" : 0,
"totalEdgePropertyValues" : 0,
"nodeStructures" : [ ],
"edgeStructures" : [ ]
}
}
}
Die Übersichtantwort eines Eigenschaftsdiagramms (PG) enthält die folgenden Felder:
-
status
– HTTP-Rückgabecode der Anforderung. Wenn die Anforderung erfolgreich ist, lautet der Code 200.Eine Liste mit häufigen Fehlern finden Sie unter Häufige Diagrammübersichtfehler.
-
payload
version
– Vrsion dieser Diagrammübersichtantwort.lastStatisticsComputationTime
– Zeitstempel nach ISO 8601 für den Zeitpunkt, an dem Neptune die Statistiken zuletzt berechnet hat.-
graphSummary
numNodes
– Anzahl der Knoten im Diagramm.numEdges
– Anzahl der Kanten im Diagramm.numNodeLabels
– Anzahl der eindeutigen Knotenbezeichnungen im Diagramm.numEdgeLabels
– Anzahl der eindeutigen Kantenbezeichnungen im Diagramm.nodeLabels
– Liste der eindeutigen Knotenbezeichnungen im Diagramm.edgeLabels
– Liste der eindeutigen Kantenbezeichnungen im Diagramm.numNodeProperties
– Anzahl der eindeutigen Knoteneigenschaften im Diagramm.numEdgeProperties
– Anzahl der eindeutigen Kanteneigenschaften im Diagramm.nodeProperties
– Liste der eindeutigen Knoteneigenschaften im Diagramm zusammen mit der Zahl der Knoten, bei denen die einzelnen Eigenschaften jeweils verwendet werden.edgeProperties
– Liste der eindeutigen Kanteneigenschaften im Diagramm zusammen mit der Zahl der Kanten, bei denen die einzelnen Eigenschaften jeweils verwendet werden.totalNodePropertyValues
– Gesamtzahl der Nutzungen aller Knoteneigenschaften.totalEdgePropertyValues
– Gesamtzahl der Nutzungen aller Kanteneigenschaften.-
nodeStructures
– Dieses Feld ist nur vorhanden, wenn in der Anforderung angegeben ist. Es enthält eine Liste von Knotenstrukturen, die jeweils die folgenden Felder enthalten:count
– Anzahl der Knoten, die diese spezifische Struktur aufweisen.nodeProperties
– Liste der Knoteneigenschaften, die in dieser spezifischen Struktur vorhanden sind.distinctOutgoingEdgeLabels
– Liste der eindeutigen Kantenbezeichnungen, die in dieser spezifischen Struktur vorhanden sind.
-
edgeStructures
– Dieses Feld ist nur vorhanden, wenn in der Anforderung angegeben ist. Es enthält eine Liste von Kantenstrukturen, die jeweils die folgenden Felder enthalten:count
– Anzahl der Kanten, die diese spezifische Struktur aufweisen.edgeProperties
– Liste der Kanteneigenschaften, die in dieser spezifischen Struktur vorhanden sind.
Diagrammübersichtantwort für ein RDF-Diagramm
Bei einem leeren RDF-Diagramm sieht die detaillierte Diagrammübersichtantwort wie folgt aus:
{
"status" : "200 OK",
"payload" : {
"version" : "v1",
"lastStatisticsComputationTime" : "2023-01-10T07:58:47.972Z",
"graphSummary" : {
"numDistinctSubjects" : 0,
"numDistinctPredicates" : 0,
"numQuads" : 0,
"numClasses" : 0,
"classes" : [ ],
"predicates" : [ ],
"subjectStructures" : [ ]
}
}
}
Eine RDF-Diagrammübersichtantwort enthält die folgenden Felder:
-
status
– HTTP-Rückgabecode der Anforderung. Wenn die Anforderung erfolgreich ist, lautet der Code 200.Eine Liste mit häufigen Fehlern finden Sie unter Häufige Diagrammübersichtfehler.
-
payload
version
– Vrsion dieser Diagrammübersichtantwort.lastStatisticsComputationTime
– Zeitstempel nach ISO 8601 für den Zeitpunkt, an dem Neptune die Statistiken zuletzt berechnet hat.-
graphSummary
numDistinctSubjects
– Anzahl der eindeutigen Subjekte im Diagramm.numDistinctPredicates
– Anzahl der eindeutigen Prädikate im Diagramm.numQuads
– Anzahl der Quads im Diagramm.numClasses
– Anzahl der Klassen im Diagramm.classes
– Liste der Klassen im Diagramm.predicates
– Liste der Prädikate im Diagramm zusammen mit der Zahl der Prädikate.-
subjectStructures
– Dieses Feld ist nur vorhanden, wenn in der Anforderung angegeben ist. Es enthält eine Liste von Subjektstrukturen, die jeweils die folgenden Felder enthalten:count
– Anzahl der Vorkommen dieser spezifischen Struktur.predicates
– Liste der Prädikate, die in dieser spezifischen Struktur vorhanden sind.
Beispiel für eine Übersichtantwort für ein Eigenschaftsdiagramm (PG)
Dies ist die detaillierte Übersichtantwort für ein Eigenschaftsdiagramm, das ein Beispiel-Eigenschaftsdiagramm für einen Flugroutendatensatz
{
"status" : "200 OK",
"payload" : {
"version" : "v1",
"lastStatisticsComputationTime" : "2023-03-01T14:35:03.804Z",
"graphSummary" : {
"numNodes" : 3748,
"numEdges" : 51300,
"numNodeLabels" : 4,
"numEdgeLabels" : 2,
"nodeLabels" : [
"continent",
"country",
"version",
"airport"
],
"edgeLabels" : [
"contains",
"route"
],
"numNodeProperties" : 14,
"numEdgeProperties" : 1,
"nodeProperties" : [
{
"desc" : 3748
},
{
"code" : 3748
},
{
"type" : 3748
},
{
"country" : 3503
},
{
"longest" : 3503
},
{
"city" : 3503
},
{
"lon" : 3503
},
{
"elev" : 3503
},
{
"icao" : 3503
},
{
"region" : 3503
},
{
"runways" : 3503
},
{
"lat" : 3503
},
{
"date" : 1
},
{
"author" : 1
}
],
"edgeProperties" : [
{
"dist" : 50532
}
],
"totalNodePropertyValues" : 42773,
"totalEdgePropertyValues" : 50532,
"nodeStructures" : [
{
"count" : 3471,
"nodeProperties" : [
"city",
"code",
"country",
"desc",
"elev",
"icao",
"lat",
"lon",
"longest",
"region",
"runways",
"type"
],
"distinctOutgoingEdgeLabels" : [
"route"
]
},
{
"count" : 161,
"nodeProperties" : [
"code",
"desc",
"type"
],
"distinctOutgoingEdgeLabels" : [
"contains"
]
},
{
"count" : 83,
"nodeProperties" : [
"code",
"desc",
"type"
],
"distinctOutgoingEdgeLabels" : [ ]
},
{
"count" : 32,
"nodeProperties" : [
"city",
"code",
"country",
"desc",
"elev",
"icao",
"lat",
"lon",
"longest",
"region",
"runways",
"type"
],
"distinctOutgoingEdgeLabels" : [ ]
},
{
"count" : 1,
"nodeProperties" : [
"author",
"code",
"date",
"desc",
"type"
],
"distinctOutgoingEdgeLabels" : [ ]
}
],
"edgeStructures" : [
{
"count" : 50532,
"edgeProperties" : [
"dist"
]
}
]
}
}
}
Beispiel für eine RDF-Übersichtantwort
Dies ist die detaillierte Übersichtantwort für ein RDF-Diagramm, das einen Beispiel-RDF-Flugroutendatensatz
{
"status" : "200 OK",
"payload" : {
"version" : "v1",
"lastStatisticsComputationTime" : "2023-03-01T14:54:13.903Z",
"graphSummary" : {
"numDistinctSubjects" : 54403,
"numDistinctPredicates" : 19,
"numQuads" : 158571,
"numClasses" : 4,
"classes" : [
"http://kelvinlawrence.net/air-routes/class/Version",
"http://kelvinlawrence.net/air-routes/class/Airport",
"http://kelvinlawrence.net/air-routes/class/Continent",
"http://kelvinlawrence.net/air-routes/class/Country"
],
"predicates" : [
{
"http://kelvinlawrence.net/air-routes/objectProperty/route" : 50656
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/dist" : 50656
},
{
"http://kelvinlawrence.net/air-routes/objectProperty/contains" : 7004
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/code" : 3747
},
{
"http://www.w3.org/2000/01/rdf-schema#label" : 3747
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/type" : 3747
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/desc" : 3747
},
{
"http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : 3747
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/icao" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/lat" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/region" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/runways" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/longest" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/elev" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/lon" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/country" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/city" : 3502
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/author" : 1
},
{
"http://kelvinlawrence.net/air-routes/datatypeProperty/date" : 1
}
],
"subjectStructures" : [
{
"count" : 50656,
"predicates" : [
"http://kelvinlawrence.net/air-routes/datatypeProperty/dist"
]
},
{
"count" : 3471,
"predicates" : [
"http://kelvinlawrence.net/air-routes/datatypeProperty/city",
"http://kelvinlawrence.net/air-routes/datatypeProperty/code",
"http://kelvinlawrence.net/air-routes/datatypeProperty/country",
"http://kelvinlawrence.net/air-routes/datatypeProperty/desc",
"http://kelvinlawrence.net/air-routes/datatypeProperty/elev",
"http://kelvinlawrence.net/air-routes/datatypeProperty/icao",
"http://kelvinlawrence.net/air-routes/datatypeProperty/lat",
"http://kelvinlawrence.net/air-routes/datatypeProperty/lon",
"http://kelvinlawrence.net/air-routes/datatypeProperty/longest",
"http://kelvinlawrence.net/air-routes/datatypeProperty/region",
"http://kelvinlawrence.net/air-routes/datatypeProperty/runways",
"http://kelvinlawrence.net/air-routes/datatypeProperty/type",
"http://kelvinlawrence.net/air-routes/objectProperty/route",
"http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
"http://www.w3.org/2000/01/rdf-schema#label"
]
},
{
"count" : 238,
"predicates" : [
"http://kelvinlawrence.net/air-routes/datatypeProperty/code",
"http://kelvinlawrence.net/air-routes/datatypeProperty/desc",
"http://kelvinlawrence.net/air-routes/datatypeProperty/type",
"http://kelvinlawrence.net/air-routes/objectProperty/contains",
"http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
"http://www.w3.org/2000/01/rdf-schema#label"
]
},
{
"count" : 31,
"predicates" : [
"http://kelvinlawrence.net/air-routes/datatypeProperty/city",
"http://kelvinlawrence.net/air-routes/datatypeProperty/code",
"http://kelvinlawrence.net/air-routes/datatypeProperty/country",
"http://kelvinlawrence.net/air-routes/datatypeProperty/desc",
"http://kelvinlawrence.net/air-routes/datatypeProperty/elev",
"http://kelvinlawrence.net/air-routes/datatypeProperty/icao",
"http://kelvinlawrence.net/air-routes/datatypeProperty/lat",
"http://kelvinlawrence.net/air-routes/datatypeProperty/lon",
"http://kelvinlawrence.net/air-routes/datatypeProperty/longest",
"http://kelvinlawrence.net/air-routes/datatypeProperty/region",
"http://kelvinlawrence.net/air-routes/datatypeProperty/runways",
"http://kelvinlawrence.net/air-routes/datatypeProperty/type",
"http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
"http://www.w3.org/2000/01/rdf-schema#label"
]
},
{
"count" : 6,
"predicates" : [
"http://kelvinlawrence.net/air-routes/datatypeProperty/code",
"http://kelvinlawrence.net/air-routes/datatypeProperty/desc",
"http://kelvinlawrence.net/air-routes/datatypeProperty/type",
"http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
"http://www.w3.org/2000/01/rdf-schema#label"
]
},
{
"count" : 1,
"predicates" : [
"http://kelvinlawrence.net/air-routes/datatypeProperty/author",
"http://kelvinlawrence.net/air-routes/datatypeProperty/code",
"http://kelvinlawrence.net/air-routes/datatypeProperty/date",
"http://kelvinlawrence.net/air-routes/datatypeProperty/desc",
"http://kelvinlawrence.net/air-routes/datatypeProperty/type",
"http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
"http://www.w3.org/2000/01/rdf-schema#label"
]
}
]
}
}
}
Verwendung der AWS Identity and Access Management (IAM-) Authentifizierung mit Endpunkten mit Graphzusammenfassung
Sie können mit einer IAM-Authentifizierung sicher auf Diagrammübersicht-Endpunkte zugreifen, indem Sie awscurl
awscurl "$GRAPH_SUMMARY_ENDPOINT" \ --region
(your region)
\ --service neptune-db
Wichtig
Der IAM-Identität oder Rolle, die die temporären Anmeldeinformationen erstellt, muss eine IAM-Richtlinie angehängt sein, die die IAM-Aktion zulässt. GetGraphSummary
Eine Liste häufiger IAM-Fehler, die auftreten können, finden Sie unter IAM-Authentifizierungsfehler.
Häufige Fehlercodes, die eine Diagrammübersicht-Anforderung möglicherweise zurückgibt
Neptune-Servicefehlercode | HTTP-Status | Fehlermeldung | Fehlerszenario | Abhilfe |
---|---|---|---|---|
|
403 |
Fehlendes Authentifizierungstoken. |
Eine unsignierte oder falsch signierte Anforderung wurde bei aktiviertem IAM an die Neptune-Datenbank gesendet. |
Signieren Sie die Anfrage vor dem Senden mit SigV4 (siehe IAM und Diagrammübersichten). |
403 |
Benutzer: |
Die IAM-Richtlinie erlaubt keine Aktion, GetGraphSummarywenn die Anfrage zur Graphzusammenfassung mit aktiviertem IAM an die Neptune-Datenbank gesendet wurde. |
Stellen Sie sicher, dass die IAM-Richtlinie, die dem Benutzer/der Rolle angefügt ist, der/die die Anforderung stellt, die Aktion |
|
|
400 |
Statistiken sind deaktiviert, daher ist auch die Diagrammübersicht deaktiviert. |
Es wird versucht, eine Übersicht über Burstable-Instance-Typen ( |
Verwenden Sie einen Instance-Typ, für den die Statistikgenerierung aktiviert ist (alle unterstützten Instances außer |
400 |
Schlechte Route: |
Die Anforderung wurde an einen ungültigen Pfad gesendet. |
Verwenden Sie die korrekte Route für den Diagrammübersicht-Endpunkt. |
|
|
400 |
Anfrage enthält unbekannte Parameter: ' |
Wenn ein ungültiger Parameter in der Anforderung angegeben ist. |
Verwenden Sie in der Anforderung nur gültige Parameter (z. B. |
|
400 |
Der URI-Abfrageparameter 'mode' hat den nicht unterstützten Wert ' |
Wenn auf den URL-Parameter 'mode' in der Anforderung ein ungültiger Wert folgt. |
Verwenden Sie gültige Werte (wie |
|
405 |
Methode nicht zulässig. |
Aufruf des Übersichtsendpunkts mit einer anderen HTTP-Methode als |
Verwenden Sie die HTTP-Methode |
|
400 |
Die Statistiken wurden noch nicht berechnet. Die Diagrammübersicht ist nach Abschluss der Statistikberechnung verfügbar. |
Es sind keine Statistiken verfügbar, wenn die Anforderung an den Übersichtsendpunkt gesendet wird. |
Warten Sie, bis die Statistikgenerierung abgeschlossen ist. Sie können den Status der Statistikgenerierung mithilfe der Statistikstatus-API überprüfen. |
400 |
Das Statistiklimit wurde erreicht. Daher ist keine Diagrammübersicht verfügbar. |
Die Statistikgenerierung wurde beendet, da die Statistik-Größenbeschränkungen erreicht wurden. |
Für dieses Diagramm ist keine Diagrammübersicht verfügbar. |
Wenn Sie beispielsweise eine Anforderung an einen Diagrammübersicht-Endpunkt in einer Neptune-Datenbank senden, für die die IAM-Authentifizierung aktiviert ist, und die notwendigen Berechtigungen sind nicht in der IAM-Richtlinie der anfordernden Person enthalten, erhalten Sie eine Antwort wie die folgende:
{
"detailedMessage": "User: arn:aws:iam::(account ID)
:(user or user name)
is not authorized to perform: neptune-db:GetGraphSummary on resource: arn:aws:neptune-db:(region)
:(account ID)
:(cluster resource ID)
/*",
"requestId": "7ac2b98e-b626-d239-1d05-74b4c88fce82",
"code": "AccessDeniedException"
}