Capture des changements de graphiques en temps réel à l'aide de flux 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.

Capture des changements de graphiques en temps réel à l'aide de flux Neptune

Neptune Streams consigne chaque modification apportée à votre graphe au fur et à mesure de leur application, dans l'ordre dans lequel elles sont effectuées, de manière entièrement gérée. Une fois que vous avez activé Streams, Neptune s'occupe de la disponibilité, de la sauvegarde, de la sécurité et de l'expiration des données.

Note

Cette fonctionnalité était disponible dansMode LabCommence parVersion 1.0.1.0.200463.0 (2019-10-15), et est disponible en production à partir deVersion 1.0.2.2.R2 du moteur Neptune.

Voici quelques-uns des nombreux cas d'utilisation dans lesquels vous pouvez capturer les modifications apportées à un graphe au fur et à mesure de leur application :

  • Vous pouvez souhaiter que votre application informe automatiquement les personnes concernées lorsque certaines modifications sont apportées.

  • Il se peut que vous souhaitiez conserver une version actuelle de vos données de graphe dans un autre magasin de données, tel qu'AmazonOpenSearchService, AmazonElastiCacheou Amazon Simple Storage Service (Amazon S3).

Neptune utilise le même stockage natif pour le flux de journaux des modifications que pour les données de graphe. Il écrit les entrées de journal des modifications de façon synchronisée avec la transaction qui effectue ces modifications. Vous récupérez ces enregistrements de modification à partir du flux de journaux à l'aide d'une API REST HTTP. (Pour de plus amples informations, veuillez consulter Appel de l'API Streams.)

Le schéma suivant montre comment les données des journaux des modifications peuvent être récupérées à partir de Neptune Streams.

Schéma montrant comment les données des journaux des modifications peuvent être récupérées à partir d'instances d'enregistreur et de réplicas en lecture.

Garanties Neptune Streams

  • Les modifications apportées par une transaction sont immédiatement disponibles en lecture auprès de l'enregistreur et des lecteurs dès que la transaction est terminée (en l'absence de retard de réplication normal au niveau des lecteurs).

  • Les enregistrements de modification apparaissent strictement séquentiellement, dans l'ordre dans lequel ils se sont produits (cela inclut les modifications apportées au sein d'une transaction).

  • Les flux de modifications ne contiennent aucun doublon. Chaque modification n'est consignée qu'une seule fois.

  • Les flux de modifications sont arrivés au terme de leur exécution. Aucune modification n'est perdue ou omise.

  • Les flux de modifications contiennent toutes les informations nécessaires pour déterminer l'état complet de la base de données elle-même à tout moment, à condition que l'état de départ soit connu.

  • La fonction Streams peut être activée ou désactivée à tout moment.

Neptune diffuse les propriétés opérationnelles

  • Le flux de journaux des modifications est entièrement géré.

  • Les données du journal des modifications sont écrites de manière synchrone par rapport à la transaction qui effectue une modification.

  • Lorsque Neptune Streams est activé, des frais d'E/S et de stockage vous sont facturés par rapport aux données du journal des modifications.

  • Les enregistrements de modifications sont purgés automatiquement une semaine après leur création. La période de conservation d'une semaine n'est pas configurable actuellement.

  • Les performances de lecture sur les flux évoluent avec les instances.

  • Vous pouvez obtenir une haute disponibilité et un débit de lecture élevé à l'aide des réplicas en lecture. Il n'y a pas de limite au nombre de lecteurs de flux que vous pouvez créer et utiliser simultanément.

  • Les données des journaux des modifications sont répliquées sur plusieurs zones de disponibilité, ce qui les rend hautement durables.

  • Les données de journal sont aussi sécurisées que vos données de graphe. Elles peuvent être chiffrées au repos et en transit. L'accès peut être contrôlé à l'aide d'IAM, d'Amazon VPC et deAWS Key Management Service(AWS KMS). Tout comme les données de graphe, les données de journal peuvent être sauvegardées et restaurées ultérieurement en utilisantpoint-in-timerestaurations (PITR).

  • L'écriture synchrone des données de flux dans le cadre de chaque transaction entraîne une légère dégradation des performances d'écriture globales.

  • Les données de flux ne sont pas partagées, car Neptune est de par sa conception.

  • Le flux de journauxGetRecordsL'API utilise les mêmes ressources que toutes les autres opérations de graphe Neptune. Cela signifie que les clients doivent équilibrer la charge entre les demandes de flux et les autres demandes de la base de données.

  • Lorsque la fonction Streams est désactivée, toutes les données des journaux deviennent immédiatement inaccessibles. Cela signifie que vous devez lire toutes les données de journaux qui vous intéressent avant de désactiver la journalisation.

  • Il n'existe actuellement aucune intégration native avec AWS Lambda. Le flux de journaux ne génère pas d'événement qui puisse déclencher une fonction Lambda.