Utilizzo di Kinesis Data Streams per acquisire le modifiche apportate a Dynamo DB. - Amazon DynamoDB

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo di Kinesis Data Streams per acquisire le modifiche apportate a Dynamo DB.

Utilizzare Amazon Kinesis Data Streams per acquisire le modifiche apportate a Amazon DynamoDB.

Kinesis Data Streams acquisisce le modifiche a livello di elemento in qualsiasi tabella DynamoDB e le replica in un flusso dei dati Kinesis. Le applicazioni possono accedere a questo flusso e visualizzare le modifiche a livello di elemento quasi in tempo reale. Puoi acquisire e archiviare in modo continuo terabyte di dati ogni ora. Puoi sfruttare tempi di conservazione dei dati più lunghi e, grazie alla funzionalità di fan-out migliorata, puoi raggiungere contemporaneamente due o più applicazioni downstream. Altri vantaggi includono controlli aggiuntivi e trasparenza della sicurezza.

Kinesis Data Streams consente inoltre di accedere ad Amazon Data Firehose e Amazon Managed Service per Apache Flink. Questi servizi consentono di creare applicazioni per utilizzare pannelli di controllo in tempo reale, generare avvisi, implementare prezzi e inserzioni dinamici ed eseguire analisi dei dati e algoritmi di machine learning sofisticati.

Nota

L'utilizzo di Kinesis Data Streams per DynamoDB è soggetto ai prezzi di Kinesis Data Streams per il flusso di dati e ai prezzi di DynamoDB per la tabella di origine.

Funzionamento di Kinesis Data Streams con DynamoDB

Quando un flusso dei dati Kinesis è abilitato per una tabella DynamoDB, quest'ultima invia un record di dati che acquisisce eventuali modifiche ai dati della tabella. Questo record di dati include:

  • L'ora specifica in cui qualsiasi elemento è stato creato, aggiornato o eliminato di recente

  • La chiave primaria di quell'elemento

  • Un'istantanea del record prima della modifica

  • Un'istantanea del record dopo la modifica

Questi record di dati vengono acquisiti e pubblicati quasi in tempo reale. Dopo essere stati scritti sul flusso dei dati Kinesis, possono essere letti come qualsiasi altro record. È possibile utilizzare la Kinesis Client Library, utilizzare AWS Lambda, richiamare Kinesis Data API Streams e utilizzare altri servizi connessi. Per ulteriori informazioni, consulta Lettura di dati da Amazon Kinesis Data Streams nella Guida per gli sviluppatori di Amazon Kinesis Data Streams.

Queste modifiche dei dati vengono acquisite anche in modo asincrono. Kinesis non ha alcun impatto sulle prestazioni di una tabella da cui esegue lo streaming. I record del flusso archiviati nel flusso dei dati Kinesis sono crittografati anche a riposo. Per ulteriori informazioni, consulta Protezione dei dati in Amazon Kinesis Data Streams.

I record del flusso di dati Kinesis potrebbero apparire in un ordine diverso rispetto a quando sono avvenute le modifiche all'elemento. Le notifiche dello stesso elemento potrebbero apparire anche più di una volta nel flusso. Puoi controllare l'ApproximateCreationDateTimeattributo per identificare l'ordine in cui sono avvenute le modifiche agli articoli e per identificare i record duplicati.

Quando abiliti un flusso di dati Kinesis come destinazione di streaming di una tabella DynamoDB, puoi configurare la precisione dei ApproximateCreationDateTime valori in millisecondi o microsecondi. Per impostazione predefinita, ApproximateCreationDateTime indica l'ora della modifica in millisecondi. Inoltre, puoi modificare questo valore su una destinazione di streaming attiva. Dopo tale aggiornamento, i record di stream scritti su Kinesis avranno ApproximateCreationDateTime i valori della precisione desiderata.

I valori binari scritti in DynamoDB devono essere codificati in formato con codifica base64. Tuttavia, quando i record di dati vengono scritti su un flusso di dati Kinesis, questi valori binari codificati vengono codificati una seconda volta con la codifica base64. Quando leggono questi record da un flusso di dati Kinesis, per recuperare i valori binari non elaborati, le applicazioni devono decodificare questi valori due volte.

DynamoDB addebita l’utilizzo di Kinesis Data Streams nelle unità di acquisizione dei dati di modifica. 1 KB di modifica per singolo elemento conta come un'unità di acquisizione dei dati di modifica. I KB di modifica in ogni elemento sono calcolati in base alla più grande delle immagini "prima" e "dopo" dell'elemento scritto nello stream, utilizzando la stessa logica di consumo di unità di capacità per operazioni di scrittura. In modo analogo al funzionamento della modalità on demand di DynamoDB, non è necessario effettuare il provisioning del throughput della capacità per le unità di acquisizione dei dati di modifica.

Attivazione di un flusso di dati Kinesis per la tabella DynamoDB

Puoi abilitare o disabilitare lo streaming su Kinesis dalla tabella DynamoDB esistente utilizzando il AWS Management Console, il o il (). AWS SDK AWS Command Line Interface AWS CLI

  • Puoi trasmettere dati da DynamoDB a Kinesis Data Streams solo nello stesso account e nella stessa regione AWS della tabella. AWS

  • Puoi eseguire lo streaming dei dati solo da una tabella DynamoDB a un flusso dei dati Kinesis.

Apportare modifiche a una destinazione Kinesis Data Streams sulla tabella DynamoDB

Per impostazione predefinita, tutti i record del flusso di dati Kinesis includono un ApproximateCreationDateTime attributo. Questo attributo rappresenta un timestamp in millisecondi dell'ora approssimativa in cui ogni record è stato creato. È possibile modificare la precisione di questi valori utilizzando /kinesis, the o https://console.aws.amazon.com SDK AWS CLI