Salut à tous et bienvenue.
Maintenant, dans la vidéo d'aujourd'hui, nous allons discuter des flux Dynamo DB.
Désormais, dans une vue d'ensemble de haut niveau, Dynamo, qui diffuse en continu, capture la séquence chronologique de modification au niveau
de l'élément dans n'importe quelle table de base de données Dynamo, et stocke les informations dans un journal pendant 24 heures maximum.
Par exemple, dans ce diagramme, vous voyez que le client effectue plusieurs opérations liées à l'ajout, liées
à la suppression, etc. sur la base de données Dynamo.
Ainsi, Dynamo DB stocke toutes ces informations dans un fichier journal spécifique grâce auquel l'utilisateur peut identifier l'enregistrement
exact.
Même le besoin d'enregistrement et d'autres détails seront enregistrés dans le cadre des flux Dynamo DB.
Et c'est ce que le deuxième point indique où l'application peut accéder à ce fichier journal pour afficher les
éléments tels qu'ils sont apparus avant et après leur modification en temps réel.
Et c'est un grand avantage non seulement en termes de sécurité d'audit, mais aussi en termes de reconstruction
de la table entière.
Maintenant, dans cette diapositive, j'ai ajouté une capture d'écran expliquant à quoi pourrait ressembler un journal.
Maintenant, si vous regardez dans ce fichier journal spécifique dans Cloud Watch, vous avez une suppression et les clés dans
le cas où vous avez un ID utilisateur et vous en avez zéro et vous avez également quelque chose appelé cette ancienne
image et dans le nom du cours que vous avez le cours de certification E.
Cela vous donnera donc beaucoup de détails sur l'ancien enregistrement qui a été supprimé, le nouvel enregistrement
qui a été ajouté, etc.
Alors faisons une chose.
Allons-y et essayons-le pratiquement.
Je vais donc rechercher Dynamo DB. Et ici, allons-y et créons rapidement une nouvelle table.
Je vais juste l'appeler en tant que données de soulignement de l'utilisateur, la clé de partition, mettons-le simplement en tant qu'ID utilisateur et nous allons
continuer et créer une table.
Donc le statut est en train de se créer.
Si je fais un rafraichissement rapide, le statut est maintenant actif.
Passons maintenant rapidement à un tableau ici et à l'intérieur, vous avez des exportations et des flux.
Dans cet onglet, vous avez des flux Dynamo DB.
Allons-y et activons-le.
Maintenant, lorsque vous l'activez dans le type de vue, vous avez diverses choses comme une nouvelle image, une ancienne image, une nouvelle et une
ancienne image.
Donc, fondamentalement, selon ce que vous voulez enregistrer, si vous voulez uniquement enregistrer les nouvelles
choses qui sont ajoutées à Dynamo.
DB vous voulez enregistrer à la fois les nouvelles et les anciennes images et ainsi de suite.
Je vais donc sélectionner les nouvelles et anciennes images qui indiquent à la fois la nouvelle et l'ancienne image de l'élément de modification.
C'est donc intéressant.
Allons-y et utilisons cela et je cliquerai également sur Activer le flux.
Donc, si nous descendons un peu, vous verrez que notre flux Dynamo TV est activé et il nous donne également l'URL
qui lui est associée.
Nous allons maintenant intégrer cette base de données dynamo à la fonction lambda, et cette fonction
lambda transmettra les journaux associés au flux Dynamo DB au service Cloud Watch Log.
Avant de faire cela, examinons rapidement un exemple d'architecture basée sur des cas d'utilisation, qui vous donne
un aperçu de la façon dont Lambda peut être utile ici.
Supposons donc que vous ayez une table Dynamo DB ici et qu'à cette étape un nouvel élément ait été ajouté
à la table Dynamo DB.
Désormais, étant donné que les flux Dynamo DB sont activés, les données associées à ce nouvel élément seront ajoutées dans
le cadre du flux Dynamo DB.
Maintenant, dès qu'un nouvel enregistrement est ajouté dans le flux Dynamo DB, cela déclenchera
une fonction lambda qui a été créée, et cette fonction lambda est intégrée à la rubrique SNS et cette rubrique
SNS continuera et enverra un e-mail ou peut-être un SMS indiquant qu'un nouvel élément a été ajouté dans
la table Dynamo DB.
C'est donc l'un des cas d'utilisation où la fonction lambda s'avère utile.
Lambda peut être utilisé pour d'autres usages.
Des cas comme celui-ci peuvent récupérer les données des flux Dynamo DB et les ajouter aux journaux de surveillance du cloud et vous pouvez les afficher directement
à partir des journaux de surveillance du cloud.
D'accord.
Donc, avec cet ensemble de base, allons-y et créons rapidement une fonction lambda.
Maintenant, à partir d'ici, ouvrons rapidement le lambda.
D'accord.
Maintenant, dans la console Lambda, créons rapidement une fonction et nous utiliserons
un plan ici et recherchons Dynamo.
DB Et vous avez Dynamo DB Process Stream Python.
Je vais donc sélectionner celui-ci.
Cliquons sur configurer, donnons un nom de fonction, je dirai Dynamo Stream à Cloud Watch et cette fonction lambda spécifique que nous créons, elle
a besoin d'accéder à ce flux Dynamo DB et elle a également besoin d'accéder au service de journal
de surveillance du cloud.
Donc, ce que nous allons faire va rapidement créer un nouveau rôle IAM qui permet à notre fonction Lambda d'effectuer ces
opérations.
Maintenant depuis la console IEM, passons rapidement aux règles.
Nous allons créer une nouvelle règle.
Cette règle sera pour Lambda.
Faisons un prochain la permission juste pour la simplicité.
Disons Dynamo DB Accès complet.
Cherchons un cloud qui donnera à notre cloud watch un accès complet juste pour plus de simplicité.
Faisons un prochain nom du rouleau.
Vous pouvez simplement dire rôle lambda pour Dynamo DB et actuellement,
deux stratégies sont associées.
Nous allons continuer et créer un rôle.
D'accord.
Notre rôle est donc créé.
Revenons à lambda.
Dans le lambda, je vais continuer et sélectionner un rôle existant ici.
Et en vous, vous devriez voir notre rôle lambda pour Dynamo.
DB Descendons un peu dans le déclencheur Dynamo DB.
Vous pouvez continuer et sélectionner la table Dynamo DB, qui dans ce cas est la position de départ des données utilisateur.
Vous pouvez simplement le changer en horizon de rêve.
On va descendre un peu.
Nous allons créer une fonction.
D'accord.
Ainsi, lorsqu'un déclencheur est créé, vérifiez également s'il est activé ou non.
Donc, à partir de maintenant, il nous donne cette note indiquant que le déclencheur configuré des données de soulignement de l'utilisateur
est à l'état désactivé.
Nous ne le voulons donc pas vraiment à l'état désactivé.
Donc, ce que nous ferons ira de l'avant et le permettra.
Super.
Donc, une fois que cela est activé, nous sommes prêts.
Tout ce que nous devons faire, c'est aller de l'avant et tester les choses.
Alors allons-y et ajoutons quelques éléments à notre table Dynamo DB.
Je vais donc passer aux actions.
Je clique sur Créer un élément, disons zéro un, j'ajoute un nouvel attribut de chaîne, disons le nom d'Ellis,
et j'ajoute un autre attribut.
Disons intérêt et intérêt.
Je dirai voyager, d'accord.
Et je vais créer un élément.
Donc, si vous explorez les éléments de la table ici, vous voyez que notre article est prêt.
Maintenant, allons-y et modifions également cela.
Je vais continuer et modifier l'élément.
Disons qu'Alice a un intérêt de voyager à l'astronomie, donc je le change.
Je clique sur Enregistrer les modifications et sur cette base, notre lambda aurait dû être déclenché.
Maintenant, si vous ouvrez rapidement la table une fois de plus, allons exporter les flux de signes.
Dans la section déclencheur, vous verrez que notre fonction lambda apparaît, l'état est activé et le dernier résultat
du processus est correct.
La prochaine étape consiste donc à accéder au cloud, à surveiller le service de journalisation pour vérifier si Lambda a ajouté les détails
ou non.
Je vais donc rechercher cloud watch et ici, j'irai rapidement aux groupes de journaux et ici, vous devriez voir un groupe
de journaux lié à lambda et le nom est Dynamo.
Diffusez en direct sur Cloud Watch.
Ouvrons ça.
Vous avez un flux de journaux.
Ouvrons cela et vous avez tous les détails requis.
Examinons-le à partir de zéro.
En fait, permettez-moi de zoomer un peu pour que ce soit plus facile à lire.
Maintenant, dans la première étape, vous avez un enregistrement d'insertion, l'ID utilisateur clé et vous avez zéro un et la
nouvelle image avec l'intérêt voyage.
C'est quelque chose que nous connaissons déjà et le nom était Alice, donc c'était une partie.
Ensuite, vous avez la demande de fin ici, puis vous avez un nouvel ensemble de demandes.
Cette fois c'était une demande de modification et ce qui a été modifié ici, l'intérêt a été modifié et c'était
l'astronomie.
Et il vous montre également l'ancienne image.
Et quelle était l'ancienne image?
L'ancienne image voyageait ici, puis la demande s'est terminée.
Super.
J'espère donc que vous avez compris les bases de ce que Dynamo Stream nous permet de faire.
Avant de conclure, examinons rapidement certains des cas d'utilisation où Dynamo Live Stream peut s'avérer
utile.
Le premier est qu'il permet de configurer la relation entre plusieurs tables dans laquelle, en fonction de la valeur
d'un élément d'une table, vous pouvez mettre à jour l'élément dans la deuxième table.
Encore une fois, c'est quelque chose que vous pouvez réaliser en utilisant lambda.
Deuxièmement, vous pouvez déclencher un événement en fonction d'un changement d'élément particulier.
Ceci est très similaire au cas d'utilisation dont nous parlions en utilisant Dynamo DB, Lambda et peut-être
Psns ou tout autre service peut être utilisé.
Troisièmement, vous pouvez auditer ou même archiver les données et elles peuvent également être utilisées pour répliquer les données
sur plusieurs tables.
Voilà donc l'aperçu de haut niveau et avec cela conclura la vidéo d'aujourd'hui.