Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation du service Neptune-Export pour exporter les données Neptune
Vous pouvez suivre les étapes suivantes pour exporter les données de votre cluster de bases de données Neptune vers Amazon S3 à l'aide du service Neptune-Export :
Installation du service Neptune-Export
Utilisez un AWS CloudFormation modèle pour créer la pile :
Pour installer le service Neptune-Export
-
Lancez la AWS CloudFormation pile sur la AWS CloudFormation console en cliquant sur l'un des boutons Lancer la pile dans le tableau suivant :
Sur la page Select Template, choisissez Next.
-
Sur la page Spécifier les détails, le modèle, définissez les paramètres suivants :
-
VPC
— Le moyen le plus simple de configurer le service Neptune-Export est de l'installer dans le même Amazon VPC que votre base de données Neptune. Si vous souhaitez l'installer dans un VPC distinct, vous pouvez utiliser le peering VPC pour établir la connectivité entre le VPC du cluster de base de données Neptune et le VPC du service Neptune-Export. -
Subnet1
— Le service Neptune-Export doit être installé dans un sous-réseau de votre VPC qui autorise le trafic HTTPS IPv4 sortant du sous-réseau vers Internet. Cela permet au service Neptune-Export d'appeler l'API AWS Batchpour créer et exécuter une tâche d'exportation. Si vous avez créé votre cluster Neptune à l'aide du CloudFormation modèle figurant sur la Créer un cluster de bases de données page de la documentation de Neptune, vous pouvez utiliser les
PrivateSubnet2
sortiesPrivateSubnet1
et de cette pile pour renseigner ce paramètre et le suivant. -
Subnet2
— Un deuxième sous-réseau du VPC qui autorise le trafic HTTPS IPv4 sortant du sous-réseau vers Internet. -
EnableIAM
— Définissez ce paramètretrue
pour sécuriser l'API Neptune-Endpoint à l'aide de AWS Identity and Access Management (IAM). Nous vous recommandons d'effectuer cette opération.Si vous activez l'authentification IAM, vous devez
Sigv4
signer toutes les demandes HTTPS adressées au point de terminaison. Vous pouvez utiliser un outil tel que awscurlpour signer les demandes en votre nom. -
VPCOnly
— Paramétrer ce paramètre pour quetrue
le point de terminaison d'exportation soit réservé au VPC, de sorte que vous ne puissiez y accéder que depuis le VPC sur lequel le service Neptune-Export est installé. Cela limite l'utilisation de l'API Neptune-Export uniquement depuis ce VPC.Nous vous recommandons de définir le
VPCOnly
à la valeurtrue
. -
NumOfFilesULimit
— Spécifiez une valeur comprise entre 10 000 et 1 000 000 pournofile
dans la propriété duulimits
conteneur. La valeur par défaut est de 10 000 et nous vous recommandons de conserver cette valeur par défaut, sauf si votre graphique contient un grand nombre d'étiquettes uniques. -
PrivateDnsEnabled
(Boolean) : indique si vous souhaitez associer une zone hébergée privée au VPC spécifié. La valeur par défaut esttrue
.Lorsqu'un point de terminaison VPC est créé avec cet indicateur activé, tout le trafic de API Gateway est acheminé via le point de terminaison du VPC et les appels de point de terminaison de API Gateway publics sont désactivés. Si vous le définissez sur
PrivateDnsEnabled
false
, le point de terminaison public de la API Gateway est activé, mais le service d'exportation Neptune ne peut pas être connecté via le point de terminaison DNS privé. Vous pouvez ensuite utiliser un point de terminaison DNS public pour que le point de terminaison VPC appelle le service d'exportation, comme détaillé ici.
-
Choisissez Suivant.
Dans la page Options, choisissez Next (Suivant).
-
Sur la page Révision, cochez la première case pour confirmer que les ressources IAM AWS CloudFormation seront créées. Cochez la deuxième case pour confirmer
CAPABILITY_AUTO_EXPAND
comme nouvelle pile.Note
CAPABILITY_AUTO_EXPAND
accepte explicitement que les macros soient étendues lors de la création de la pile, sans révision préalable. Les utilisateurs créent souvent un jeu de modifications à partir d'un modèle traité, de sorte que les modifications apportées par les macros puissent être révisées avant la création de la pile. Pour de plus amples informations, veuillez consulter l'API AWS CloudFormationCreateStack.Ensuite, choisissez Create (Créer).
Activer l'accès à Neptune depuis Neptune-Export
Une fois l'installation de Neptune-Export terminée, mettez à jour votre groupe de sécurité Neptune VPC pour autoriser l'accès depuis Neptune-Export. Lorsque la AWS CloudFormation pile Neptune-Export a été créée, l'onglet Outputs inclut un ID. NeptuneExportSecurityGroup
Mettez à jour votre groupe de sécurité Neptune VPC pour autoriser l'accès à partir de ce groupe de sécurité Neptune-Export.
Autoriser l'accès au point de terminaison Neptune-Export à partir d'une instance EC2 basée sur VPC
Si vous configurez votre point de terminaison Neptune-Export uniquement sous forme de VPC, vous ne pouvez y accéder que depuis le VPC dans lequel le service Neptune-Export est installé. Pour autoriser la connectivité à partir d'une instance Amazon EC2 du VPC à partir de laquelle vous pouvez effectuer des appels d'API Neptune-Export, attachez le fichier NeptuneExportSecurityGroup
créé par la AWS CloudFormation pile à cette instance Amazon EC2.
Exécuter une tâche Neptune-Export à l'aide de l'API Neptune-Export
L'onglet Sorties de la AWS CloudFormation pile inclut également leNeptuneExportApiUri
. Utilisez cet URI chaque fois que vous envoyez une demande au point de terminaison Neptune-Export.
Exécuter une tâche d'exportation
Assurez-vous que l'utilisateur ou le rôle sous lequel l'exportation s'exécute dispose d'une
execute-api:Invoke
autorisation.Si vous avez défini le
EnableIAM
paramètre sur «true
dans la AWS CloudFormation pile » lorsque vous avez installé Neptune-Export, vous devezSigv4
signer toutes les demandes à l'API Neptune-Export. Nous vous recommandons d'utiliser awscurl pour envoyerdes requêtes à l'API. Tous les exemples présentés ici supposent que l'authentification IAM est activée. Si vous avez défini le
VPCOnly
paramètre sur «true
dans la AWS CloudFormation pile » lorsque vous avez installé Neptune-Export, vous devez appeler l'API Neptune-Export depuis le VPC, généralement depuis une instance Amazon EC2 située dans le VPC.
Pour commencer à exporter des données, envoyez une demande au NeptuneExportApiUri
point de terminaison avec command
des paramètres de outputS3Path
demande et un paramètre endpoint
d'exportation.
Le code suivant est un exemple de requête qui exporte les données de graphes de propriétés de Neptune et les publie sur Amazon S3 :
curl \
(your NeptuneExportApiUri)
\ -X POST \ -H 'Content-Type: application/json' \ -d '{ "command": "export-pg", "outputS3Path": "s3://(your Amazon S3 bucket)
/neptune-export", "params": { "endpoint": "(your Neptune endpoint DNS name)
" } }'
De même, voici un exemple de requête qui exporte des données RDF depuis Neptune vers Amazon S3 :
curl \
(your NeptuneExportApiUri)
\ -X POST \ -H 'Content-Type: application/json' \ -d '{ "command": "export-rdf", "outputS3Path": "s3://(your Amazon S3 bucket)
/neptune-export", "params": { "endpoint": "(your Neptune endpoint DNS name)
" } }'
Si vous omettez le paramètre de command
requête, Neptune-Export tente par défaut d'exporter les données du graphe des propriétés depuis Neptune.
Si la commande précédente s'est exécutée correctement, le résultat devrait ressembler à ceci :
{ "jobName": "neptune-export-abc12345-1589808577790", "jobId": "c86258f7-a9c9-4f8c-8f4c-bbfe76d51c8f" }
Surveillez la tâche d'exportation que vous venez de commencer
Pour surveiller une tâche en cours d'exécution, ajoutez son objet JobID à votreNeptuneExportApiUri
, comme ceci :
curl \
(your NeptuneExportApiUri)
(the job ID)
Si le service n'avait pas encore lancé la tâche d'exportation, la réponse se présenterait comme suit :
{ "jobId": "c86258f7-a9c9-4f8c-8f4c-bbfe76d51c8f", "status": "pending" }
Lorsque vous répétez la commande après le démarrage de la tâche d'exportation, la réponse ressemble à ceci :
{ "jobId": "c86258f7-a9c9-4f8c-8f4c-bbfe76d51c8f", "status": "running", "logs": "https://us-east-1.console.aws.amazon.com/cloudwatch/home?..." }
Si vous ouvrez les CloudWatch journaux dans Logs à l'aide de l'URI fourni par l'appel d'état, vous pouvez alors suivre la progression de l'exportation en détail :

Annuler une tâche d'exportation en cours d'exécution
Pour annuler une tâche d'exportation en cours d'exécution à l'aide du AWS Management Console
Ouvrez la AWS Batch console à l'adresse https://console.aws.amazon.com/batch/
. Choisissez Tâches.
Localisez la tâche en cours que vous souhaitez annuler en fonction de celle-ci
jobID
.Sélectionnez Annuler la tâche.
Pour annuler une tâche d'exportation en cours à l'aide de l'API d'exportation Neptune :
Envoyez une HTTP DELETE
demande au NeptuneExportApiUri
avec le texte en jobID
annexe, comme ceci :
curl -X DELETE \
(your NeptuneExportApiUri)
(the job ID)