Utilizzo dell'adattatore DynamoDB Streams Kinesis per elaborare i record di flusso - 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 dell'adattatore DynamoDB Streams Kinesis per elaborare i record di flusso

L'utilizzo di Amazon Kinesis Adapter è il modo consigliato per utilizzare flussi da Amazon DynamoDB. L’API dei flussi DynamoDB è progettata in maniera simile a quella del flusso di dati Kinesis. In entrambi i servizi, i flussi di dati sono composti da partizioni, che sono container per i record di flusso. Entrambi i servizi APIs contengonoListStreams, DescribeStreamGetShards, e GetShardIterator operazioni. Sebbene queste operazioni DynamoDB Streams siano simili alle loro controparti in Kinesis Data Streams, non sono identiche al 100%.

Come utente di DynamoDB Streams, è possibile utilizzare i modelli di progettazione presenti all'interno di KCL per elaborare partizioni e record di flusso DynamoDB Streams. Per fare ciò, si utilizza l'adattatore Kinesis DynamoDB Streams. L'adattatore Kinesis implementa l'interfaccia Kinesis Data Streams in modo che si possa utilizzare KCL per l'uso e l'elaborazione di record da DynamoDB Streams. Per istruzioni su come configurare e installare il DynamoDB Streams Kinesis Adapter, consulta il repository. GitHub

È possibile scrivere applicazioni per Kinesis Data Streams utilizzando la libreria client Kinesis (Kinesis Client Library, KCL). KCL semplifica la codifica fornendo astrazioni utili sull'API Kinesis Data Streams di basso livello. Per ulteriori informazioni su KCL, consulta Sviluppo di consumatori utilizzando la libreria client Kinesis nella Guida per gli sviluppatori di Amazon Kinesis Data Streams.

DynamoDB consiglia di utilizzare la versione 3.x di KCL con SDK AWS for Java v2.x. L'attuale versione 1.x di DynamoDB Streams Kinesis Adapter con AWS SDK per Java SDK per la versione AWS 1.x continuerà a essere pienamente supportata per tutto il suo ciclo di vita, come previsto durante il periodo di transizione in linea con la politica di manutenzione degli strumenti.AWS SDKs

Nota

Le versioni 1.x e 2.x di Amazon KCL sono obsolete. end-of-supportKCL 1.x sarà disponibile il 30 gennaio 2026. Si consiglia vivamente di migrare le applicazioni KCL che utilizzano la versione 1.x all’ultima versione KCL prima del 30 gennaio 2026. Per trovare la versione più recente di KCL, consulta la pagina Amazon Kinesis Client Library su. GitHub Per informazioni sulle versioni più recenti di Kinesis Client Library, consulta Use Kinesis Client Library. Per ulteriori informazioni sulla migrazione da KCL 1.x a 3.x, consulta Migrating from KCL 1.x to KCL 3.x.

Nel seguente diagramma viene illustrato come queste librerie interagiscono tra loro.

Interazione tra flussi DynamoDB, flusso di dati Kinesis e KCL per l’elaborazione dei record dei flussi DynamoDB.

Con l'adattatore Kinesis DynamoDB Streams abilitato, è possibile iniziare a sviluppare rispetto a KCL, con le chiamate API dirette senza soluzione di continuità all'endpoint DynamoDB Streams.

Quando si avvia l'applicazione , quest'ultima richiama la libreria KCL per creare un'istanza di un worker. È necessario fornire al lavoratore le informazioni di configurazione per l'applicazione, come il descrittore di flusso e AWS le credenziali, e il nome di una classe di processore di record fornita. Durante l'esecuzione del codice nel processore di record, il worker completa le seguenti attività:

  • Si collega al flusso

  • Enumera le partizioni all'interno del flusso

  • Controlla ed enumera gli shard secondari di uno shard principale chiuso all’interno del flusso

  • Coordina le associazioni di shard con altri processi di lavoro (se presenti)

  • Crea istanze di un elaboratore di record per ogni shard che gestisce

  • Estrae i record di dati dal flusso

  • Inserisce i record nell'elaboratore di record corrispondente

  • Controlla i record elaborati

  • Bilancia le associazioni tra shard e processi di lavoro quando il conteggio delle istanze del lavoro cambia

  • Bilancia le associazioni tra partizioni e worker quando le partizioni sono suddivise

Nota

Per una descrizione dei concetti su KCL elencati qui, consulta Sviluppo di consumatori utilizzando la libreria client Kinesis nella Guida per gli sviluppatori di Amazon Kinesis Data Streams.

Per ulteriori informazioni sull'utilizzo degli stream, vedere AWS Lambda Streams e trigger DynamoDB AWS Lambda