Utilisation du service Neptune-Export pour exporter des données Neptune - Amazon Neptune

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 des données Neptune

Vous pouvez suivre les étapes suivantes pour exporter des données de votre cluster DB Neptune vers Amazon S3 à l'aide du service Neptune-Export :

Installation du service Neptune-Export

Utiliser unAWS CloudFormationmodèle pour créer la pile :

Pour installer le service Neptune-Export

  1. Lancez leAWS CloudFormationpile sur leAWS CloudFormationen choisissant l'une desLancez Stackboutons du tableau suivant :

    Région Vue Afficher dans Designer Lancer
    USA Est (Virginie du Nord) Afficher Afficher dans Designer
    USA Est (Ohio) Afficher Afficher dans Designer
    USA Ouest (Californie du Nord) Afficher Afficher dans Designer
    USA Ouest (Oregon) Afficher Afficher dans Designer
    Canada (Centre) Afficher Afficher dans Designer
    Amérique du Sud (São Paulo) Afficher Afficher dans Designer
    Europe (Stockholm) Afficher Afficher dans Designer
    Europe (Irlande) Afficher Afficher dans Designer
    Europe (Londres) Afficher Afficher dans Designer
    Europe (Paris) Afficher Afficher dans Designer
    Europe (Francfort) Afficher Afficher dans Designer
    Moyen-Orient (Bahreïn) Afficher Afficher dans Designer
    Afrique (Le Cap) Afficher Afficher dans Designer
    Asie-Pacifique (Hong Kong) Afficher Afficher dans Designer
    Asie-Pacifique (Tokyo) Afficher Afficher dans Designer
    Asie-Pacifique (Séoul) Afficher Afficher dans Designer
    Asie-Pacifique (Singapour) Afficher Afficher dans Designer
    Asie-Pacifique (Sydney) Afficher Afficher dans Designer
    Asie-Pacifique (Mumbai) Afficher Afficher dans Designer
    Chine (Beijing) Afficher Afficher dans Designer
    Chine (Ningxia) Afficher Afficher dans Designer
    AWS GovCloud (US-West) Afficher Afficher dans Designer
    AWS GovCloud (US-East) Afficher Afficher dans Designer
  2. Sur la page Select Template, choisissez Next.

  3. Dans la pageSpé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 consiste à l'installer dans le même Amazon VPC que votre base de données Neptune. Si vous souhaitez l'installer dans un VPC séparé, vous pouvez utiliserAppairage de VPCpour établir la connectivité entre le VPC du cluster de bases 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 leAWSAPI Batchpour créer et exécuter une tâche d'exportation.

      Si vous avez créé votre cluster Neptune à l'aide de l'outil CloudFormation modèle sur leCréer un cluster de bases de donnéesdans la documentation Neptune, vous pouvez utiliser lePrivateSubnet1etPrivateSubnet2sorties de cette pile pour remplir ce paramètre et le paramètre 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ètre surtruepour sécuriser l'API Neptune-Endpoint à l'aide deAWS Identity and Access Management(IAM). Nous vous recommandons de le faire.

      Si vous activez l'authentification IAM, vous devezSigv4signez toutes les demandes HTTPS au point de terminaison. Vous pouvez utiliser un outil tel queAwscurlpour signer des demandes en votre nom.

    • VPCOnly— Régler ce paramètre surtruerend le point de terminaison d'exportation VPC uniquement, de sorte que vous ne pouvez 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 à partir de ce VPC.

      Nous vous recommandons de définir le VPCOnly à la valeur true.

    • NumOfFilesULimit — Spécifiez une valeur comprise entre 10 000 et 1 000 000 pournofiledans leulimitspropriété conteneur. La valeur par défaut est 10 000, et nous vous recommandons de conserver la valeur par défaut à moins que votre graphique ne contienne un grand nombre d'étiquettes uniques.

    • PrivateDnsEnabled (Boolean) — Indique si vous souhaitez associer ou non une zone hébergée privée au VPC spécifié. La valeur par défaut est true.

      Lorsqu'un point de terminaison VPC est créé avec cet indicateur activé, tout le trafic API Gateway est acheminé via le point de terminaison VPC et les appels publics de point de terminaison API Gateway sont désactivés. Si vous définissezPrivateDnsEnabledpourfalse, le point de terminaison API Gateway public 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 le point de terminaison VPC afin d'appeler le service d'exportation, comme détaillé.ici.

  4. Choisissez Next (Suivant).

  5. Dans la page Options, choisissez Next (Suivant).

  6. Dans la pageVérification, cochez la première case pour accepterAWS CloudFormationva créer des ressources IAM. 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 plus d'informations, consultez l'API AWS CloudFormation CreateStack.

    Ensuite, choisissez Create (Créer).

Activer l'accès à Neptune depuis Neptune-Export

Une fois l'installation de Neptune-Export terminée, mettez à jour votreGroupe de sécurité Neptune VPCpour autoriser l'accès depuis Neptune-Export. Quand Neptune ExportAWS CloudFormationla pile a été créée, leOutputscomprend un ongletNeptuneExportSecurityGroupID. Mettez à jour votre groupe de sécurité Neptune VPC pour autoriser l'accès depuis ce groupe de sécurité Neptune-Export.

Activer l'accès au point de terminaison Neptune-Export à partir d'une instance EC2 basée sur VPC

Si vous créez uniquement votre point de terminaison Neptune-Export VPC, vous ne pouvez y accéder qu'à partir du VPC sur lequel le service Neptune-Export est installé. Pour autoriser la connectivité à partir d'une instance Amazon EC2 dans le VPC à partir de laquelle vous pouvez effectuer des appels d'API Neptune-Export, joignez leNeptuneExportSecurityGroupcréé par leAWS CloudFormationempile sur cette instance Amazon EC2.

Exécutez une tâche Neptune-Export à l'aide de l'API Neptune-Export

LeOutputsonglet de laAWS CloudFormationstack inclut également leNeptuneExportApiUri. Utilisez cet URI chaque fois que vous envoyez une demande au point de terminaison Neptune-Export.

Exécution d'une tâche d'exportation

  • Assurez-vous que l'utilisateur ou le rôle sous lequel l'exportation s'exécute a été accordé.execute-api:Invokeautorisation.

  • Si vous définissez le paramètreEnableIAMparamètre detruedans leAWS CloudFormationlorsque vous avez installé Neptune-Export, vous devezSigv4signer toutes les demandes à l'API Neptune-Export. Nous vous recommandons d'utiliserAwscurlpour envoyer des demandes à l'API. Tous les exemples ici supposent que l'authentification IAM est activée.

  • Si vous définissez le paramètreVPCOnlyparamètre detruedans leAWS CloudFormationlorsque vous avez installé Neptune-Export, vous devez appeler l'API Neptune-Export depuis le VPC, généralement à partir d'une instance Amazon EC2 située dans le VPC.

Pour commencer l'exportation de données, envoyez une demande auNeptuneExportApiUripoint de terminaison aveccommandetoutputS3Pathparamètres de la demande etendpointparamètre d'exportation.

Le message suivant est un exemple de demande qui exporte des données de graphes de propriétés depuis 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 demande qui exporte des données RDF de 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 lecommand, par défaut, Neptune-Export tente d'exporter des données de graphes de propriétés depuis Neptune.

Si la commande précédente s'est exécutée correctement, la sortie se présenterait comme suit :

{ "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, ajoutez son JoBid à votreNeptuneExportApiUri, quelque chose comme suit :

curl \ (your NeptuneExportApiUri)(the job ID)

Si le service n'avait pas encore commencé le travail d'exportation, la réponse ressemblerait à ceci :

{ "jobId": "c86258f7-a9c9-4f8c-8f4c-bbfe76d51c8f", "status": "pending" }

Lorsque vous répétez la commande après le début 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 journaux dans CloudWatch Journaux à l'aide de l'URI fourni par l'appel d'état, vous pouvez ensuite surveiller en détail la progression de l'exportation :

Capture d'écran de CloudWatch Affichage des journaux.

Annulation d'une tâche d'exportation en cours

Pour annuler une tâche d'exportation en cours d'exécution via leAWS Management Console

  1. Ouverture d'AWS Batchconsole àhttps://console.aws.amazon.com/batch/.

  2. Choisissez Tâches.

  3. Localisez la tâche en cours d'exécution que vous souhaitez annuler, en fonction de sonjobID.

  4. Tâche de sélectionAnnuler une tâche.

Pour annuler une tâche d'exportation en cours à l'aide de l'API d'exportation Neptune :

Envoyez une demandeHTTP DELETEde la demande auNeptuneExportApiUriavec lejobIDannexé, comme ceci :

curl -X DELETE \ (your NeptuneExportApiUri) (the job ID)