As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Use a Kinesis Client Library (KCL) para processar streams do Amazon Keyspaces
Este tópico descreve como usar a Kinesis Client Library (KCL) para consumir e processar dados dos streams de captura de dados de alteração (CDC) do Amazon Keyspaces.
Em vez de trabalhar diretamente com a API Amazon Keyspaces Streams, trabalhar com a Kinesis Client Library (KCL) oferece muitos benefícios, por exemplo:
-
Rastreamento de linhagem de fragmentos e manuseio de iteradores integrados.
-
Balanceamento automático de carga entre os trabalhadores.
-
Tolerância a falhas e recuperação de falhas de trabalhadores.
-
Ponto de verificação para acompanhar o progresso do processamento.
-
Adaptação às mudanças na capacidade do fluxo.
-
Computação distribuída simplificada para processamento de registros CDC.
A seção a seguir descreve por que e como usar a Kinesis Client Library (KCL) para processar streams e fornece um exemplo para processar um stream CDC do Amazon Keyspaces com a KCL.
Para obter informações sobre preços, consulte o Amazon Keyspaces (para Apache Cassandra)
O que é a Kinesis Client Library?
A Kinesis Client Library (KCL) é uma biblioteca de software Java independente projetada para simplificar o processo de consumo e processamento de dados de streams. A KCL lida com muitas das tarefas complexas associadas à computação distribuída, permitindo que você se concentre na implementação de sua lógica de negócios ao processar dados de fluxo. A KCL gerencia atividades como balanceamento de carga entre vários trabalhadores, resposta às falhas dos trabalhadores, verificação de registros processados e resposta às mudanças no número de fragmentos no fluxo.
Para processar streams CDC do Amazon Keyspaces, você pode usar os padrões de design encontrados na KCL para trabalhar com fragmentos de stream e registros de stream. A KCL simplifica a codificação fornecendo abstrações úteis acima da API de baixo nível do Kinesis Data Streams. Para obter mais informações sobre a KCL, consulte Desenvolver consumidores com a KCL no Guia do desenvolvedor do Amazon Kinesis Data Streams.
Para escrever aplicativos usando a KCL, você usa o Amazon Keyspaces Streams Kinesis Adapter. O Kinesis Adapter implementa a interface do Kinesis Data Streams para que você possa usar a KCL para consumir e processar registros dos streams do Amazon Keyspaces. Para obter instruções sobre como configurar e instalar o adaptador Kinesis de streams do Amazon Keyspaces, visite o repositório. GitHub
O diagrama a seguir mostra como essas bibliotecas interagem entre si.

O KCL é atualizado com frequência para incorporar versões mais recentes das bibliotecas subjacentes, melhorias de segurança e correções de erros. Recomendamos que você use a versão mais recente do KCL para evitar problemas conhecidos e se beneficiar de todas as melhorias mais recentes. Para encontrar a versão mais recente do KCL, consulte o repositório KCL GitHub
Conceitos da KCL
Antes de implementar um aplicativo de consumidor usando o KCL, você deve entender os seguintes conceitos:
- Aplicativo para consumidores KCL
-
Um aplicativo de consumidor da KCL é um programa que processa dados de um stream CDC do Amazon Keyspaces. A KCL atua como intermediária entre o código do aplicativo do consumidor e o stream CDC do Amazon Keyspaces.
- Trabalhador
-
Um trabalhador é uma unidade de execução do seu aplicativo consumidor da KCL que processa dados do stream CDC do Amazon Keyspaces. Seu aplicativo pode executar vários trabalhadores distribuídos em várias instâncias.
- Processador de gravação
-
Um processador de registros é a lógica em seu aplicativo que processa dados de um fragmento no stream CDC do Amazon Keyspaces. Um processador de registros é instanciado por um trabalhador para cada fragmento que ele gerencia.
- Locação
-
Uma locação representa a responsabilidade pelo processamento de um fragmento. Os trabalhadores usam arrendamentos para coordenar qual trabalhador está processando qual fragmento. A KCL armazena dados de leasing em uma tabela no Amazon Keyspaces.
- Checkpoint
-
Um ponto de verificação é um registro da posição no fragmento até a qual o processador de registros processou os registros com sucesso. O ponto de verificação permite que seu aplicativo retome o processamento de onde parou se um funcionário falhar.
Com o adaptador Amazon Keyspaces Kinesis instalado, você pode começar a desenvolver na interface KCL, com as chamadas de API direcionadas perfeitamente ao endpoint de stream do Amazon Keyspaces. Para obter uma lista de endpoints disponíveis, consulte Como acessar endpoints de stream do CDC no Amazon Keyspaces.
Quando a aplicação é iniciada, ela chama a KCL para instanciar um operador. Você deve fornecer ao trabalhador as informações de configuração do aplicativo, como o descritor e as AWS credenciais do fluxo, e o nome de uma classe de processador de registros fornecida por você. Como ele executa o código no processador de registro, o operador executa as seguintes tarefas:
-
Conecta-se ao stream
-
Enumera os fragmentos no fluxo
-
Coordena as associações do estilhaço com outros operadores (se houver)
-
Cria uma instância de um processador de registro para cada fragmento que gerencia
-
Extrai registros do fluxo
-
Envia os registros ao processador de registros correspondente
-
Registros processados pelos pontos de verificação
-
Equilibra as associações de estilhaço-operador quando a contagem de instância de operadores muda
-
Equilibra as associações de fragmento-operador quando os fragmentos se dividem