Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Creazione di un breve report di riepilogo sul grafo
Il API riepilogo del grafico di Neptune recupera le seguenti informazioni sul grafico:
Per i grafici delle proprietà (PG), il riepilogo del grafico API restituisce un elenco di sola lettura di etichette di nodi e spigoli e chiavi di proprietà, insieme al conteggio di nodi, spigoli e proprietà.
Per i grafici di Resource Description Framework (RDF), il riepilogo del grafico API restituisce un elenco di classi e chiavi di predicato di sola lettura, insieme al conteggio di quad, soggetti e predicati.
Nota
Il riepilogo del grafico API è stato introdotto nella versione 1.2.1.0 del motore Neptune.
Con il riepilogo del graficoAPI, puoi acquisire rapidamente una comprensione di alto livello della dimensione e del contenuto dei dati del grafico. Puoi anche utilizzarli in API modo interattivo all'interno di un notebook Neptune usando la magia di Neptune Workbench. %summary In un'applicazione grafica, API possono essere utilizzati per migliorare i risultati della ricerca fornendo etichette relative ai nodi o ai bordi scoperti come parte della ricerca.
I dati di riepilogo del grafico sono tratti dalle DFEstatistiche calcolate dal motore DFENeptune durante il runtime e sono disponibili ogni volta che le statistiche sono disponibiliDFE. Le statistiche sono abilitate per impostazione predefinita quando si crea un nuovo cluster database Neptune.
Nota
La generazione di statistiche è disabilitata sui tipi di istanza t3
e t4
(ovvero sui tipi di istanza db.t3.medium
e db.t4g.medium
) per risparmiare memoria. Di conseguenza, i dati di riepilogo del grafo non sono disponibili nemmeno su questi tipi di istanza.
È possibile controllare lo stato delle DFE statistiche utilizzando lo stato delle statistiche. API Finché la generazione automatica delle statistiche non viene disabilitata, le statistiche vengono aggiornate automaticamente periodicamente.
Se si vuole essere sicuri che le statistiche siano il più aggiornate possibile quando si richiede un riepilogo del grafo, è possibile attivare manualmente un aggiornamento delle statistiche subito prima di recuperare il riepilogo. Se il grafo cambia durante il calcolo delle statistiche, queste subiranno necessariamente un leggero ritardo, ma non di molto.
Utilizzo del riepilogo del grafico API per recuperare le informazioni di riepilogo del grafico
Per un grafico delle proprietà su cui si esegue una query utilizzando Gremlin oppureopenCypher, è possibile recuperare un riepilogo del grafico dall'endpoint di riepilogo del grafico delle proprietà. Per questo endpoint esistono sia un lungo che uno breve: URI
https://
your-neptune-host
:port
/propertygraph/statistics/summaryhttps://
your-neptune-host
:port
/pg/statistics/summary
Per un RDF grafico che utilizzi per eseguire una querySPARQL, puoi recuperare un riepilogo del grafico dall'endpoint di RDF riepilogo:
https://
your-neptune-host
:port
/rdf/statistics/summary
Questi endpoint sono di sola lettura e supportano solo un'operazione. HTTP GET
Se $ GRAPH _ SUMMARY _ ENDPOINT è impostato sull'indirizzo dell'endpoint su cui si desidera eseguire la query, è possibile recuperare i dati di riepilogo utilizzando e come segue: curl
HTTP GET
curl -G "$GRAPH_SUMMARY_ENDPOINT"
Se non sono disponibili statistiche quando si tenta di recuperare un riepilogo del grafo, la risposta è simile alla seguente:
{ "detailedMessage": "Statistics are not available. Summary can only be generated after statistics are available.", "requestId": "48c1f788-f80b-b69c-d728-3f6df579a5f6", "code": "StatisticsNotAvailableException" }
Il parametro di mode
URL interrogazione per il riepilogo del grafico API
Il riepilogo del grafico API accetta un parametro di URL interrogazione denominatomode
, che può assumere uno dei due valori seguenti, vale a dire basic
(impostazione predefinita) edetailed
. Per un RDF grafico, la detailed
modalità graph summary response contiene un subjectStructures
campo aggiuntivo. Per un grafo di proprietà, la risposta di riepilogo dettagliata del grafo contiene due campi aggiuntivi, vale a dire nodeStructures
e edgeStructures
.
Per richiedere una risposta di riepilogo del grafo detailed
, includere il parametro mode
come segue:
curl -G "$GRAPH_SUMMARY_ENDPOINT?mode=detailed"
Se il parametro mode
non è presente, per impostazione predefinita viene utilizzata la modalità basic
, quindi, sebbene sia possibile specificare ?mode=basic
in modo esplicito, ciò non è necessario.
Risposta di riepilogo di un grafo di proprietà (PG)
Per un grafo di proprietà vuoto, la risposta di riepilogo dettagliata del grafo è la seguente:
{ "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" : [ ] } } }
Una risposta di riepilogo del grafo di proprietà (PG) contiene i seguenti campi:
-
status
— il codice di HTTP ritorno della richiesta. Se la richiesta è riuscita, il codice è 200.Per visualizzare un elenco di errori comuni, consulta Errori comuni di riepilogo del grafo.
-
payload
version
: versione della risposta di riepilogo del grafo.lastStatisticsComputationTime
— Il timestamp, in formato ISO 8601, dell'ora in cui Neptune ha calcolato le statistiche per l'ultima volta.-
graphSummary
numNodes
: numero di nodi nel grafo.numEdges
: numero di archi nel grafo.numNodeLabels
: numero di etichette di nodi distinte nel grafo.numEdgeLabels
: numero di etichette di archi distinte nel grafo.nodeLabels
: elenco di etichette di nodi distinte nel grafo.edgeLabels
: elenco di etichette di archi distinte nel grafo.numNodeProperties
: numero di proprietà di nodi distinte nel grafo.numEdgeProperties
: numero di proprietà di archi distinte nel grafo.nodeProperties
: elenco di proprietà di nodi distinte nel grafo, insieme al numero di nodi in cui viene utilizzata ciascuna proprietà.edgeProperties
: elenco di proprietà di archi distinte nel grafo, insieme al numero di archi in cui viene utilizzata ciascuna proprietà.totalNodePropertyValues
: numero totale di utilizzi di tutte le proprietà di nodi.totalEdgePropertyValues
: numero totale di utilizzi di tutte le proprietà di archi.-
nodeStructures
: questo campo è presente solo quando nella richiesta è specificatomode=detailed
. Contiene un elenco di strutture di nodi, ognuna delle quali contiene i seguenti campi:count
: numero di nodi con questa struttura specifica.nodeProperties
: elenco delle proprietà dei nodi in questa struttura specifica.distinctOutgoingEdgeLabels
: elenco di etichette di archi in uscita distinte in questa struttura specifica.
-
edgeStructures
: questo campo è presente solo quando nella richiesta è specificatomode=detailed
. Contiene un elenco di strutture di archi, ognuna delle quali contiene i seguenti campi:count
: numero di archi con questa struttura specifica.edgeProperties
: elenco di proprietà di archi in questa struttura specifica.
Grafico (risposta riassuntiva per un grafico) RDF
Per un RDF grafico vuoto, la risposta riassuntiva dettagliata del grafico è la seguente:
{ "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" : [ ] } } }
Una risposta riassuntiva in un RDF grafico contiene i seguenti campi:
-
status
— il codice di HTTP ritorno della richiesta. Se la richiesta è riuscita, il codice è 200.Per visualizzare un elenco di errori comuni, consulta Errori comuni di riepilogo del grafo.
-
payload
version
: versione della risposta di riepilogo del grafo.lastStatisticsComputationTime
— Il timestamp, in formato ISO 8601, dell'ora in cui Neptune ha calcolato le statistiche per l'ultima volta.-
graphSummary
numDistinctSubjects
: numero di soggetti distinti nel grafo.numDistinctPredicates
: numero di predicati distinti nel grafo.numQuads
: numero di quadruple nel grafo.numClasses
: numero di classi nel grafo.classes
: elenco di classi nel grafo.predicates
: elenco di predicati nel grafo, insieme ai conteggi dei predicati.-
subjectStructures
: questo campo è presente solo quando nella richiesta è specificatomode=detailed
. Contiene un elenco di strutture di soggetti, ognuna delle quali contiene i seguenti campi:count
: numero di occorrenze di questa struttura specifica.predicates
: elenco di predicati presenti in questa struttura specifica.
Risposta di riepilogo di un grafo di proprietà (PG) di esempio
Ecco la risposta di riepilogo dettagliata di un grafo di proprietà che contiene il set di dati delle rotte aeree di un grafo di proprietà di esempio
{ "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" ] } ] } } }
Esempio di risposta riassuntiva grafica RDF
Ecco la risposta riassuntiva dettagliata per un RDF grafico che contiene il set di dati di esempio sulle rotte RDF aeree
{ "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" ] } ] } } }
Utilizzo dell'autenticazione AWS Identity and Access Management (IAM) con endpoint di riepilogo grafico
Puoi accedere agli endpoint di riepilogo dei grafici in modo sicuro con IAM l'autenticazione utilizzando awscurl
awscurl "$GRAPH_SUMMARY_ENDPOINT" \ --region
(your region)
\ --service neptune-db
Importante
L'IAMidentità o il ruolo che crea le credenziali temporanee deve avere una IAM politica allegata che consenta l'azione. GetGraphSummaryIAM
Consulta Errori di autenticazione IAM l'elenco degli IAM errori più comuni che potresti riscontrare.
Codici di errore comuni che possono essere restituiti da una richiesta di riepilogo del grafo
Codice di errore del servizio Neptune | HTTPstato | Messaggio | Scenario di errore | Mitigazione |
---|---|---|---|---|
|
403 |
Token di autenticazione mancante. |
La richiesta non firmata o firmata in modo errato è stata inviata al database Neptune con l'opzione abilitata. IAM |
Firmare la richiesta con SigV4 prima dell'invio (vedi IAMe riepiloghi grafici). |
403 |
Utente: |
IAMla policy non consente l'azione GetGraphSummaryquando la richiesta di riepilogo del grafico è stata inviata al database Neptune con l'opzione abilitata. IAM |
Assicurati che la IAM policy allegata all'utente o al ruolo che effettua la richiesta consenta l'azione |
|
|
400 |
Le statistiche sono disabilitate, quindi anche il riepilogo del grafo è disabilitato. |
Tentativo di recuperare il riepilogo sui tipi di istanze espandibili ( |
Utilizzare un tipo di istanza in cui è abilitata la generazione delle statistiche (tutte le istanze supportate tranne |
400 |
Percorso errato: |
Richiesta inviata a un percorso non valido. |
Usare il percorso corretto per l'endpoint di riepilogo del grafo. |
|
|
400 |
La richiesta contiene parametri sconosciuti: ' |
Quando nella richiesta viene specificato un parametro non valido. |
Utilizzare solo parametri validi (ad esempio, |
|
400 |
URIil parametro di query 'mode' ha un valore non supportato ' |
Quando il URL parametro 'mode' nella richiesta è seguito da un valore non valido. |
Usa valori validi (come |
|
405 |
Metodo non consentito. |
Chiamare summary endpoint con qualsiasi HTTP metodo diverso da |
Usa il HTTP |
|
400 |
Le statistiche non sono ancora state calcolate, il riepilogo del grafo sarà disponibile dopo il completamento del calcolo delle statistiche. |
Non ci sono statistiche disponibili quando la richiesta viene inviata all'endpoint di riepilogo. |
Attendere il completamento della generazione delle statistiche. È possibile controllare lo stato della generazione delle statistiche utilizzando lo stato API delle statistiche. |
400 |
È stato raggiunto il limite delle statistiche, quindi il riepilogo del grafo non è disponibile. |
La generazione delle statistiche è stata interrotta perché ha raggiunto i limiti di dimensione delle statistiche. |
Il riepilogo del grafo non è disponibile per questo grafo. |
Ad esempio, se richiedi di rappresentare graficamente un endpoint di riepilogo in un database Neptune con l'IAMautenticazione abilitata e le autorizzazioni necessarie non sono presenti nella politica IAM del richiedente, otterrai una risposta simile alla seguente:
{ "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" }