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á.
Desenvolvendo com streams em QLDB
Importante
Aviso de fim do suporte: os clientes existentes poderão usar a Amazon QLDB até o final do suporte em 31/07/2025. Para obter mais detalhes, consulte Migrar um Amazon QLDB Ledger para o Amazon Aurora Postgre
Esta seção resume as API operações que você pode usar com um AWS SDK ou o AWS CLI para criar e gerenciar fluxos de diários na Amazon. QLDB Também descreve os aplicativos de amostra que demonstram essas operações e usam a Kinesis Client Library (KCL) ou AWS Lambda para implementar um consumidor de stream.
Você pode usar o KCL para criar aplicativos de consumo para o Amazon Kinesis Data Streams. Isso KCL simplifica a codificação ao fornecer abstrações úteis acima do Kinesis Data Streams de baixo nível. API Para saber mais sobre oKCL, consulte Como usar a biblioteca de cliente do Kinesis no Guia do desenvolvedor do Amazon Kinesis Data Streams.
Sumário
QLDBfluxo de diário APIs
O QLDB API fornece as seguintes operações de fluxo de diário para uso por programas aplicativos:
-
StreamJournalToKinesis
— Cria um fluxo de diário para um determinado QLDB livro contábil. O fluxo captura todas as revisões de documentos confirmadas no diário do ledger e entrega os dados a um recurso especificado do Amazon Kinesis Data Streams.-
A agregação de registros no Kinesis Data Streams está ativada por padrão. Essa opção permite QLDB publicar vários registros de dados em um único registro do Kinesis Data Streams, aumentando o número de registros API enviados por chamada.
A agregação de registros tem implicações importantes para o processamento de registros e requer desagregação em seu consumidor de stream. Para saber mais, consulte os KPL principais conceitos e a desagregação de consumidores no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
-
DescribeJournalKinesisStream
— Retorna informações detalhadas sobre um determinado fluxo de QLDB diário. A saída inclui o nome do streamARN, o status atual, a hora da criação e os parâmetros da sua solicitação original de criação do stream. -
ListJournalKinesisStreamsForLedger
— Retorna uma lista de todos os descritores de fluxo de QLDB diário para um determinado livro contábil. A saída de cada descritor de fluxo inclui os mesmos detalhes devolvidos porDescribeJournalKinesisStream
. -
CancelJournalKinesisStream
— Encerra um determinado fluxo de QLDB diário. Antes que um fluxo possa ser cancelado, seu status atual deve serACTIVE
.Não é possível reiniciar um fluxo depois de tê-lo cancelado. Para retomar a entrega de seus dados para o Kinesis Data Streams, você pode criar um QLDB novo stream.
Para obter descrições completas dessas API operações, consulte QLDBAPIReferência da Amazon o.
Para obter informações sobre como criar e gerenciar fluxos de diário usando o AWS CLI, consulte a Referência de AWS CLI Comandos.
Aplicações de exemplo
QLDBfornece exemplos de aplicativos que demonstram várias operações usando fluxos de diários. Esses aplicativos são de código aberto no GitHub site AWS Samples
Tópicos
Operações básicas (Java)
Para ver um exemplo de código Java que demonstra operações básicas para fluxos de QLDB diários, consulte o GitHub repositório aws-samples/ -java. amazon-qldb-dmv-sample
nota
Depois de instalar o aplicativo, não vá para a Etapa 1 do tutorial Java para criar um ledger. Este aplicativo de amostra para streaming cria o ledger vehicle-registration
para você.
Esse aplicativo de amostra empacota o código-fonte completo do Tutorial de Java e de suas dependências, incluindo os seguintes módulos:
-
AWS SDK for Java
— Criar e excluir os recursos do Kinesis Data Streams QLDB e do Kinesis, incluindo QLDB livros contábeis, fluxos de diários e fluxos de dados do Kinesis. -
QLDBDriver Amazon para Java: executar transações de dados em um ledger usando instruções PartiQL, incluindo a criação de tabelas e a inserção de documentos.
-
Kinesis Client Library: consumir e processar dados de um fluxo de dados do Kinesis.
Executar o código
A StreamJournal
-
Crie um ledger chamado
vehicle-registration
, crie tabelas e carregue-as com dados de amostra.nota
Antes de executar esse código, confirme que você ainda não tem um ledger ativo chamado
vehicle-registration
. -
Crie um stream de dados do Kinesis, uma IAM função que permite QLDB assumir permissões de gravação para o stream de dados do Kinesis e um stream de diário. QLDB
-
Use o KCL para iniciar um leitor de stream que processa o stream de dados do Kinesis e registra cada registro de QLDB dados.
-
Use os dados do fluxo para validar a cadeia de hash do ledger
vehicle-registration
de amostras. -
Limpe todos os recursos interrompendo o leitor de stream, cancelando o stream do QLDB diário, excluindo o livro contábil e excluindo o stream de dados do Kinesis.
Para executar o código do tutorial StreamJournal
, insira o seguinte comando do Gradle no diretório raiz do seu projeto.
./gradlew run -Dtutorial=streams.StreamJournal
Integração com o OpenSearch serviço (Python)
Para ver um aplicativo de amostra em Python que demonstra como integrar um stream QLDB com o Amazon OpenSearch Service, consulte o GitHub repositório aws-samples/ -. amazon-qldb-streaming-amazon opensearch-service-sample-python
Para clonar o repositório, digite o seguinte comando git
.
git clone https://github.com/aws-samples/amazon-qldb-streaming-amazon-opensearch-service-sample-python.git
Para executar o aplicativo de amostra, consulte o README
Integração com Amazon SNS e Amazon SQS (Python)
Esse aplicativo usa uma AWS Lambda função para implementar um consumidor do Kinesis Data Streams. Ele envia mensagens para um SNS tópico da Amazon, que tem uma fila do Amazon Simple Queue Service (AmazonSQS) inscrita nele.
Para clonar o repositório, digite o seguinte comando git
.
git clone https://github.com/aws-samples/amazon-qldb-streams-dmv-sample-lambda-python.git
Para executar o aplicativo de amostra, consulte o README