Ciao a tutti e bentornati.
Ora nel video di oggi parleremo dei flussi di Dynamo DB.
Ora con una panoramica di alto livello, Dynamo, che trasmette in streaming, acquisisce la sequenza ordinata nel tempo di modifica
a livello di elemento in qualsiasi tabella di Dynamo DB e memorizza le informazioni in un registro per un massimo di 24 ore.
Ad esempio, in questo diagramma si vede che il client sta eseguendo più operazioni relative all'aggiunta,
all'eliminazione e così via nel DB Dynamo.
Quindi Dynamo DB memorizza tutte queste informazioni in un file di registro specifico attraverso il quale l'utente può identificare
il record esatto.
Anche la necessità di record e altri dettagli verranno registrati come parte dei flussi di Dynamo DB.
E questo è ciò che afferma il secondo punto in cui l'applicazione può accedere a questo file di registro per visualizzare
gli elementi come apparivano prima e dopo essere stati modificati in tempo reale.
E questo è un grande vantaggio non solo in termini di sicurezza dell'auditing, ma anche in termini di ricostruzione
dell'intera tabella.
Ora, in questa diapositiva, ho aggiunto uno screenshot relativo a come potrebbe davvero apparire un registro.
Ora, se guardi in questo file di registro specifico in Cloud Watch, hai una rimozione e le chiavi nel
caso tu abbia un ID utente e ne hai zero uno e hai anche qualcosa chiamato questa vecchia immagine
e nel nome del corso che hai il corso di certificazione E.
Quindi ti fornirà molti dettagli relativi a qual è il vecchio record che è stato rimosso, qual è il nuovo record
che è stato aggiunto e così via.
Quindi facciamo una cosa.
Andiamo avanti e proviamolo praticamente.
Quindi cercherò Dynamo DB E qui andiamo avanti e creiamo rapidamente una nuova tabella.
Lo chiamerò semplicemente come i dati di sottolineatura dell'utente, la chiave di partizione, mettiamolo semplicemente come ID utente e andremo
avanti e creeremo una tabella.
Quindi lo stato sta creando.
Se eseguo rapidamente un aggiornamento, lo stato è ora attivo.
Ora andiamo rapidamente a una tabella qui e qui dentro hai esportazioni e flussi.
All'interno di questa scheda sono presenti stream Dynamo DB.
Andiamo avanti e abilitiamolo.
Ora, quando lo abiliti nel tipo di visualizzazione, hai varie cose come nuova immagine, vecchia immagine, nuova e vecchia
immagine.
Quindi, in pratica, a seconda di cosa vuoi registrare, se vuoi registrare solo le nuove cose
che vengono aggiunte a Dynamo.
DB si desidera registrare sia le nuove che le vecchie immagini e così via.
Quindi selezionerò le immagini nuove e vecchie che indicano sia la nuova che la vecchia immagine dell'elemento di modifica.
Quindi questo è interessante.
Andiamo avanti e usiamo quello e farò anche clic su Abilita flusso.
Quindi, se scendiamo un po', vedrai che il nostro streaming Dynamo TV è abilitato e ci fornisce anche
l'URL associato.
Ora ciò che faremo integrerà questo DB dinamo con la funzione lambda e tale funzione lambda invierà
i log associati al flusso del DB Dynamo al servizio di log di Cloud Watch.
Quindi, prima di farlo, disponiamo rapidamente di un'architettura basata su casi d'uso di esempio, che ti offre
una panoramica su come Lambda può essere utile qui.
Quindi supponiamo che tu abbia una tabella Dynamo DB qui e in questo passaggio è stato aggiunto un nuovo elemento
alla tabella Dynamo DB.
Ora, poiché i flussi Dynamo DB sono abilitati, i dati relativi a questo nuovo elemento verranno aggiunti come parte
del flusso Dynamo DB.
Ora, non appena viene aggiunto un nuovo record nel flusso di Dynamo DB, questo attiverà una funzione
lambda che è stata creata e questa funzione lambda è integrata con l'argomento SNS e questo argomento SNS andrà
avanti e invierà un'e-mail o forse un SMS che indica che c'è un nuovo elemento che è stato aggiunto nella
tabella di Dynamo DB.
Quindi questo è uno dei casi d'uso in cui la funzione lambda si rivela utile.
Lambda può essere utilizzato per altri usi.
Casi come questo può recuperare i dati dai flussi di Dynamo DB e può aggiungerli ai registri di controllo del cloud e puoi visualizzarli
direttamente dai registri di controllo del cloud.
Tutto bene.
Quindi, con questo set di base, andiamo avanti e creiamo rapidamente una funzione lambda.
Ora, da qui, apriamo velocemente la lambda.
Tutto bene.
Ora, all'interno della console Lambda, creiamo rapidamente una funzione e useremo
un progetto qui e cerchiamo Dynamo.
DB E hai Dynamo DB Process Stream Python.
Quindi selezionerò questo.
Facciamo clic su configura, diamo un nome di funzione, dirò Dynamo Stream a Cloud Watch e questa specifica funzione lambda che stiamo creando, ha
bisogno dell'accesso a questo flusso di Dynamo DB e ha anche bisogno dell'accesso al servizio
di log di monitoraggio del cloud.
Quindi ciò che faremo creerà rapidamente un nuovo ruolo IAM che consentirà alla nostra funzione Lambda di eseguire queste
operazioni.
Ora dalla console IEM, andiamo rapidamente alle regole.
Creeremo una nuova regola.
Questa regola sarà per Lambda.
Facciamo un prossimo permesso solo per semplicità.
Diciamo Dynamo DB Accesso completo.
Cerchiamo un cloud che dia al nostro orologio cloud pieno accesso solo per semplicità.
Facciamo un prossimo nome del rotolo.
Puoi semplicemente dire ruolo lambda per Dynamo DB e attualmente
ci sono due criteri associati.
Andremo avanti e creeremo un ruolo.
Tutto bene.
Così si crea il nostro ruolo.
Torniamo alla lambda.
All'interno della lambda, andrò avanti e selezionerò un ruolo esistente qui.
E dentro di te dovresti vedere il nostro ruolo lambda per Dynamo.
DB Andiamo un po' più in basso nel trigger Dynamo DB.
Puoi andare avanti e selezionare la tabella Dynamo DB, che in questo caso è la posizione iniziale dei dati utente.
Puoi semplicemente cambiarlo in orizzonte dei sogni.
Andremo un po' giù.
Creeremo una funzione.
Tutto bene.
Quindi, quando viene creato un trigger, verifica anche se è nello stato abilitato o meno.
Quindi, a partire da ora, ci fornisce questa nota affermando che il trigger configurato dei dati di sottolineatura dell'utente è nello
stato disabilitato.
Quindi non lo vogliamo davvero nello stato disabile.
Quindi quello che faremo andrà avanti e lo consentirà.
Grande.
Quindi, una volta abilitato, siamo a posto.
Tutto quello che dobbiamo fare è andare avanti e testare le cose.
Quindi andiamo avanti e aggiungiamo alcuni elementi alla nostra tabella Dynamo DB.
Quindi andrò alle azioni.
Farò clic su Crea elemento, diciamo zero uno, aggiungerò un nuovo attributo di stringa, diciamo il nome di
Ellis e aggiungerò un altro attributo.
Diciamo interesse e interesse.
Dirò in viaggio, va bene.
E creerò un oggetto.
Quindi, se esplori gli articoli della tabella qui, vedrai che il nostro articolo è pronto.
Ora andiamo avanti e modifichiamo anche questo.
Andrò avanti e modificherò l'elemento.
Diciamo che Alice ha un interesse dai viaggi all'astronomia, quindi lo cambio.
Farò clic su Salva modifiche e in base a ciò, il nostro lambda avrebbe dovuto essere attivato.
Ora se riapri rapidamente la tabella ancora una volta, andiamo a esportare i flussi di segni.
Nella sezione trigger vedrai apparire la nostra funzione lambda, lo stato è abilitato e l'ultimo risultato
del processo va bene.
Quindi la parte successiva è andare nel cloud, guardare il servizio di log per verificare se Lambda ha aggiunto i dettagli
o meno.
Quindi cercherò cloud watch e qui andrò rapidamente ai gruppi di log e qui dovresti vedere un gruppo
di log relativo a lambda e il nome è Dynamo.
Streaming live su Cloud Watch.
Apriamo questo.
Hai un flusso di log.
Apriamo questo e hai tutti i dettagli richiesti.
Esaminiamolo da zero.
In effetti, fammi ingrandire un po 'in modo che sia più facile da leggere.
Ora nella prima fase hai un record di inserimento, l'ID utente chiave e hai zero uno e la nuova immagine con
l'interesse sta viaggiando.
Questo è qualcosa che già sappiamo e il nome era Alice, quindi questa era una parte.
Quindi hai la richiesta finale qui e poi hai una nuova serie di richieste.
Questa volta è stata una richiesta di modifica e ciò che è stato modificato qui, l'interesse è stato modificato ed
è stata l'astronomia.
E ti mostra anche la vecchia immagine.
E qual era la vecchia immagine?
La vecchia immagine stava viaggiando qui e poi la richiesta è terminata.
Grande.
Quindi spero che questo tu abbia compreso le basi di ciò che Dynamo Stream ci consente di fare.
Quindi, prima di concludere, esaminiamo rapidamente alcuni dei casi d'uso in cui Dynamo Live Stream può rivelarsi
utile.
Il primo è che consente di impostare la relazione tra più tabelle in cui, in base al valore di un elemento
da una tabella, è possibile aggiornare l'elemento nella seconda tabella.
Ancora una volta, questo è qualcosa che puoi ottenere usando lambda.
Il secondo è che puoi attivare un evento in base a un particolare cambio di articolo.
Questo è molto simile al caso d'uso di cui stavamo discutendo utilizzando Dynamo DB, Lambda e
forse Psns o qualsiasi altro servizio.
Il terzo è che puoi controllare o persino archiviare i dati e può anche essere utilizzato per replicare i dati
su più tabelle.
Quindi questa è la panoramica di alto livello e con questo si concluderà il video di oggi.