6

Sto utilizzando Data Pipeline (DP) per i backup giornalieri di DynamoDB, tuttavia, vorrei eseguire backup incrementali dei dati che mancano alle corse DP (aggiornamenti tra le esecuzioni DP). Per farlo, vorrei utilizzare DynamoDB Streams + Lambda + S3 per portare aggiornamenti in tempo reale di DynamoDB su S3. Capisco come funzionano gli stream DynamoDB, tuttavia, sto lottando con la creazione di una funzione Lambda che scrive su S3 e che dice di girare un file ogni ora.DynamoDB Streams to S3

Qualcuno l'ha provato?

+1

Cosa intendi con "scorre un file ogni ora"? Non è possibile aggiungere ai file in S3. Dovresti creare nuovi file per ogni aggiornamento a meno che tu non voglia leggere l'intero file ogni volta, aggiungere dati ad esso e poi riscriverlo nuovamente su S3. Che suona doloroso. – garnaat

+0

Rotolare un file come in log4j o altri framework in cui è possibile eseguire il roll dei file in base a determinati criteri. So che i file in S3 sono immutabili, quindi mi chiedevo se questo fosse possibile. – user3293898

risposta

7

suo un lavoro tizio un'ora, Quello che dovete fare è

  1. Abilita Dynamo DB aggiornamento Stream e allegare AWS forniti funzione lambda https://github.com/awslabs/lambda-streams-to-firehose
  2. Abilita Firehose flusso e utilizzare sopra la funzione per lo streaming outs record in manichetta antincendio.
  3. Configurare Firehose per scaricare i record su S3.

terminato.

+0

cosa succede se non hai firehose disponibile? –