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à.
Esempio: caricamento di dati in un'istanza database Neptune
Questo esempio illustra come caricare dati in Amazon Neptune. Salvo diversa indicazione, devi seguire questi passaggi da un'istanza Amazon Elastic Compute Cloud (AmazonEC2) nello stesso Amazon Virtual Private Cloud (VPC) dell'istanza DB Neptune.
Prerequisiti per l'esempio di caricamento di dati
Prima di iniziare, devi disporre di quanto segue:
-
Istanza database Neptune.
Per informazioni sull'avvio di un'istanza database Neptune, consulta Creazione di un cluster Amazon Neptune.
-
Bucket Amazon Simple Storage Service (Amazon S3) in cui inserire i file di dati.
Puoi utilizzare un bucket esistente. Se non disponi di un bucket S3, consulta Creare un bucket nella Guida alle operazioni di base di Amazon S3.
-
Dati del grafo da caricare, in uno dei formati supportati dallo strumento di caricamento Neptune:
Se state usando Gremlin per interrogare il vostro grafico, Neptune può caricare i dati in un formato comma-separated-values (
CSV
), come descritto in. Formato dati di caricamento GremlinSe si utilizza openCypher per interrogare il grafico, Neptune può anche caricare i dati in openCypher un formato
CSV
specifico, come descritto in. Formato di caricamento per i dati openCypherSe si utilizzaSPARQL, Neptune può caricare dati in diversi formati, come RDF descritto in. RDFformati di dati di caricamento
-
Un IAM ruolo da assumere per l'istanza DB di Neptune che dispone di IAM una policy che consente l'accesso ai file di dati nel bucket S3. La policy deve concedere le autorizzazioni per la lettura e la presentazione di elenchi.
Per informazioni su come creare un ruolo che abbia accesso ad Amazon S3 e su come associarlo a un cluster Neptune, vedi Prerequisiti: IAM ruolo e accesso ad Amazon S3.
Nota
Il
Load
API Neptune necessita solo dell'accesso in lettura ai file di dati. La IAM policy non deve necessariamente consentire l'accesso in scrittura o l'accesso all'intero bucket. Un endpoint Amazon S3VPC. Per ulteriori informazioni, consulta la sezione Creazione di un endpoint Amazon S3 VPC.
Creazione di un endpoint Amazon S3 VPC
Il loader Neptune richiede un VPC endpoint per Amazon S3.
Per configurare l'accesso ad Amazon S3
Accedi a AWS Management Console e apri la VPC console Amazon all'indirizzo https://console.aws.amazon.com/vpc/
. Nel riquadro di navigazione a sinistra, scegli Endpoints (Endpoint).
Scegliere Create Endpoint (Crea endpoint).
-
Scegli il Service Name (Nome servizio)
com.amazonaws.
.region
.s3Nota
Se la regione indicata qui non è corretta, verifica che lo sia la regione della console.
Scegli VPC quella che contiene la tua istanza DB Neptune.
Selezionare la casella di controllo accanto alle tabelle di routing associate alle sottoreti correlate al proprio cluster. Se si dispone di una sola tabella di routing, è necessario selezionare la casella corrispondente.
Scegliere Create Endpoint (Crea endpoint).
Per informazioni sulla creazione dell'endpoint, consulta VPCEndpoints nella Amazon VPC User Guide. Per informazioni sulle limitazioni degli VPC endpoint, consulta VPCEndpoints for Amazon S3.
Per caricare i dati in un'istanza database Neptune
-
Copiare i file di dati in un bucket Amazon S3. Il bucket S3 deve trovarsi nella stessa AWS regione del cluster che carica i dati.
È possibile utilizzare il seguente AWS CLI comando per copiare i file nel bucket.
Nota
Non è necessario eseguire questo comando dall'EC2istanza Amazon.
aws s3 cp
data-file-name
s3://bucket-name
/object-key-name
Nota
In Amazon S3 un nome chiave dell'oggetto è il percorso intero di un file, incluso il nome.
Esempio: nel comando
aws s3 cp datafile.txt s3://examplebucket/mydirectory/datafile.txt
, il nome chiave dell'oggetto èmydirectory/datafile.txt
.In alternativa, puoi utilizzare il AWS Management Console per caricare file nel bucket S3. Apri la console Amazon S3 all'indirizzo https://console.aws.amazon.com/s3/
e scegli un bucket. Nell'angolo superiore sinistro, scegli Upload (Carica) per caricare i file. -
Da una finestra della riga di comando, inserisci quanto segue per eseguire il loader Neptune, utilizzando i valori corretti per l'endpoint, il percorso, il formato e il ruolo di Amazon S3. IAM ARN
Il
format
parametro può essere uno dei seguenti valori:csv
for Gremlin, for, or,, eopencypher
foropenCypher.ntriples
nquads
turtle
rdfxml
RDF Per informazioni sugli altri parametri, vedi Comando dello strumento di caricamento Neptune.Per informazioni su come trovare il nome host dell'istanza database Neptune, consulta la sezione Connessione agli endpoint Amazon Neptune.
Il parametro della regione deve corrispondere alla regione del cluster e del bucket S3.
Amazon Neptune è disponibile nelle seguenti regioni: AWS
Stati Uniti orientali (Virginia settentrionale):
us-east-1
Stati Uniti orientali (Ohio):
us-east-2
Stati Uniti occidentali (California settentrionale):
us-west-1
Stati Uniti occidentali (Oregon):
us-west-2
Canada (Centrale):
ca-central-1
Sud America (San Paolo):
sa-east-1
Europa (Stoccolma):
eu-north-1
Europa (Spagna):
eu-south-2
Europa (Irlanda):
eu-west-1
Europa (Londra):
eu-west-2
Europa (Parigi):
eu-west-3
Europa (Francoforte):
eu-central-1
Medio Oriente (Bahrein):
me-south-1
Medio Oriente (UAE):
me-central-1
Israele (Tel Aviv):
il-central-1
Africa (Città del Capo):
af-south-1
Asia Pacifico (Hong Kong):
ap-east-1
Asia Pacifico (Tokyo):
ap-northeast-1
Asia Pacifico (Seoul):
ap-northeast-2
Asia Pacifico (Osaka):
ap-northeast-3
Asia Pacifico (Singapore):
ap-southeast-1
Asia Pacifico (Sydney):
ap-southeast-2
Asia Pacifico (Giacarta):
ap-southeast-3
Asia Pacifico (Mumbai):
ap-south-1
Cina (Pechino):
cn-north-1
Cina (Ningxia):
cn-northwest-1
AWS GovCloud (Stati Uniti occidentali):
us-gov-west-1
AWS GovCloud (Stati Uniti orientali):
us-gov-east-1
curl -X POST \ -H 'Content-Type: application/json' \ https://
your-neptune-endpoint
:port
/loader -d ' { "source" : "s3://bucket-name
/object-key-name
", "format" : "format
", "iamRoleArn" : "arn:aws:iam::account-id
:role/role-name
", "region" : "region
", "failOnError" : "FALSE", "parallelism" : "MEDIUM", "updateSingleCardinalityProperties" : "FALSE", "queueRequest" : "TRUE", "dependencies" : ["load_A_id", "load_B_id"
] }'Per informazioni sulla creazione e l'associazione di un IAM ruolo a un cluster Neptune, vedere. Prerequisiti: IAM ruolo e accesso ad Amazon S3
Nota
Consulta Parametri della richiesta dello dello strumento di caricamento Neptune per informazioni dettagliate sui parametri della richiesta di caricamento. In breve:
Il
source
parametro accetta un Amazon S3 URI che punta a un singolo file o a una cartella. Se si specifica una cartella, Neptune carica tutti i file di dati presenti nella cartella.La cartella può contenere più file vertex e più file edge.
URIPuò essere in uno dei seguenti formati.
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
Il parametro
format
può essere uno dei seguenti:CSVFormato Gremlin (
csv
) per i grafici delle proprietà GremlinopenCypher CSVformat () per i grafici delle proprietà
opencypher
openCypherFormato N -Triples (
ntriples
) per/RDFSPARQLFormato N-Quads ()
nquads
per/RDFSPARQLRDFformato/XML(
rdfxml
) per/RDFSPARQLFormato Turtle (
turtle
) per/RDFSPARQL
Il parametro opzionale
parallelism
consente di limitare il numero di thread utilizzati nel processo di caricamento in blocco. Può essere impostato suLOW
,MEDIUM
,HIGH
oOVERSUBSCRIBE
.Quando
updateSingleCardinalityProperties
è impostato su"FALSE"
, lo strumento di caricamento restituisce un errore se viene fornito più di un valore in un file di origine caricato per una proprietà vertice a cardinalità singola o edge.L'impostazione di
queueRequest
su"TRUE"
fa sì che la richiesta di caricamento venga inserita in una coda se è già in esecuzione un’attività di caricamento.Il parametro
dependencies
rende l'esecuzione della richiesta di caricamento subordinata al completamento di una o più attività di caricamento già inserita nella coda. -
Lo strumento di caricamento Neptune restituisce un oggetto
id
del processo che consente di controllare lo stato o di annullare il processo di caricamento, ad esempio:{ "status" : "200 OK", "payload" : { "loadId" : "
ef478d76-d9da-4d94-8ff1-08d9d4863aa5
" } } -
Inserisci il comando seguente per ottenere lo stato del caricamento con il valore
loadId
della Fase 3:curl -G 'https://
your-neptune-endpoint
:port
/loader/ef478d76-d9da-4d94-8ff1-08d9d4863aa5
'Se lo stato del caricamento elenca un errore, è possibile richiedere uno stato più dettagliato e un elenco degli errori. Per maggiori informazioni ed esempi, consulta Neptune Loader Get-Status API.
-
(Facoltativo) Annullare il processo
Load
.inserisci il comando seguente per eseguire un
Delete
del processo dello strumento di caricamento con il valoreid
del processo della Fase 3:curl -X DELETE 'https://
your-neptune-endpoint
:port
/loader/ef478d76-d9da-4d94-8ff1-08d9d4863aa5
'Il
DELETE
comando restituisce il HTTP codice200 OK
dopo l'annullamento riuscito.I dati provenienti dai file dal processo di caricamento terminato non vengono ripristinati. I dati rimangono nell'istanza database Neptune.