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à.
Usa la Kinesis Client Library (KCL) per elaborare i flussi di Amazon Keyspaces
Questo argomento descrive come utilizzare la Kinesis Client Library (KCL) per consumare ed elaborare i dati dai flussi di Amazon Keyspaces change data capture (CDC).
Invece di lavorare direttamente con l'API Amazon Keyspaces Streams, lavorare con la Kinesis Client Library (KCL) offre molti vantaggi, ad esempio:
-
Monitoraggio del lignaggio degli shard e gestione degli iteratori integrati.
-
Bilanciamento automatico del carico tra i lavoratori.
-
Tolleranza agli errori e ripristino in caso di guasti dei lavoratori.
-
Checkpointing per tenere traccia dell'avanzamento dell'elaborazione.
-
Adattamento alle variazioni della capacità del flusso.
-
Elaborazione distribuita semplificata per l'elaborazione dei record CDC.
La sezione seguente descrive perché e come utilizzare la Kinesis Client Library (KCL) per elaborare i flussi e fornisce un esempio per l'elaborazione di un flusso CDC Amazon Keyspaces con KCL.
Per informazioni sui prezzi, consulta i prezzi di Amazon Keyspaces (per Apache Cassandra
Cos'è la Kinesis Client Library?
La Kinesis Client Library (KCL) è una libreria software Java autonoma progettata per semplificare il processo di consumo ed elaborazione dei dati dai flussi. KCL gestisce molte delle attività complesse associate all'elaborazione distribuita, consentendoti di concentrarti sull'implementazione della logica aziendale durante l'elaborazione dei dati di flusso. KCL gestisce attività come il bilanciamento del carico tra più lavoratori, la risposta agli errori dei lavoratori, il checkpoint dei record elaborati e la risposta alle variazioni del numero di shard nel flusso.
Per elaborare gli stream CDC di Amazon Keyspaces, puoi utilizzare i modelli di progettazione disponibili in KCL per lavorare con shard di stream e record di stream. KCL semplifica la codifica fornendo astrazioni utili sull'API Kinesis Data Streams di basso livello. Per ulteriori informazioni su KCL, consulta Development consumer with KCL nella Amazon Kinesis Data Streams Developer Guide.
Per scrivere applicazioni utilizzando KCL, si utilizza l'adattatore Kinesis di Amazon Keyspaces Streams. Il Kinesis Adapter implementa l'interfaccia Kinesis Data Streams in modo da poter utilizzare KCL per consumare ed elaborare i record dai flussi di Amazon Keyspaces. Per istruzioni su come configurare e installare l'adattatore Kinesis di Amazon Keyspaces Streams, visita il repository. GitHub
Il diagramma seguente mostra come queste librerie interagiscono tra loro.

KCL viene aggiornato frequentemente per incorporare versioni più recenti delle librerie sottostanti, miglioramenti della sicurezza e correzioni di bug. Ti consigliamo di utilizzare l'ultima versione di KCL per evitare problemi noti e beneficiare di tutti gli ultimi miglioramenti. Per trovare l'ultima versione di KCL, consulta l'archivio GitHub KCL
Concetti KCL
Prima di implementare un'applicazione consumer utilizzando KCL, è necessario comprendere i seguenti concetti:
- Applicazione consumer KCL
-
Un'applicazione consumer KCL è un programma che elabora i dati da un flusso CDC di Amazon Keyspaces. Il KCL funge da intermediario tra il codice dell'applicazione consumer e lo stream CDC di Amazon Keyspaces.
- Lavoratore
-
Un worker è un'unità di esecuzione della tua applicazione consumer KCL che elabora i dati dal flusso CDC di Amazon Keyspaces. La tua applicazione può eseguire più worker distribuiti su più istanze.
- Processore di registrazione
-
Un record processor è la logica dell'applicazione che elabora i dati da uno shard nel flusso CDC di Amazon Keyspaces. Un processore di registrazione viene istanziato da un worker per ogni shard che gestisce.
- Leasing
-
Un leasing rappresenta la responsabilità del trattamento di uno shard. I lavoratori utilizzano i contratti di locazione per coordinare quale lavoratore sta elaborando quale frammento. KCL archivia i dati di locazione in una tabella in Amazon Keyspaces.
- Checkpoint
-
Un checkpoint è una registrazione della posizione nello shard fino alla quale l'elaboratore di dischi ha elaborato con successo i record. Il checkpointing consente all'applicazione di riprendere l'elaborazione dal punto in cui era stata interrotta se un lavoratore fallisce.
Con l'adattatore Amazon Keyspaces Kinesis, puoi iniziare a sviluppare utilizzando l'interfaccia KCL, con le chiamate API dirette senza problemi all'endpoint di streaming Amazon Keyspaces. Per un elenco degli endpoint disponibili, consulta. Come accedere agli endpoint di streaming CDC in Amazon Keyspaces
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
-
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