Um site de alto tráfego é executado no EC2 e usa o Kinesis Data Streams para coletar logs da web. O aplicativo consumidor do Kinesis, também no EC2, fica atrasado quando há picos de dados e os registros são descartados. Qual solução melhora o tratamento do stream com o menor overhead operacional?
Escolha uma resposta
Toque em uma opção para verificar sua resposta.
Resposta correta: Escale o consumidor do Kinesis horizontalmente adicionando instâncias EC2 com base na métrica CloudWatch GetRecords.IteratorAgeMilliseconds e aumente o período de retenção do stream do Kinesis..
Por que esta é a resposta
A opção correta aborda diretamente o problema de atraso do consumidor. Escalar horizontalmente o consumidor do Kinesis adicionando instâncias EC2 com base na métrica GetRecords.IteratorAgeMilliseconds do CloudWatch garante que haja capacidade suficiente para processar os dados, especialmente durante picos. Essa métrica indica o quão atrasado o consumidor está. Aumentar o período de retenção do stream do Kinesis evita a perda de dados caso o consumidor não consiga acompanhar imediatamente. A modificação do consumidor para armazenar logs no S3 e usar EMR introduz complexidade e latência adicionais para processamento em tempo real. Migrar para AWS Lambda pode ser uma solução, mas a escalabilidade do Lambda para Kinesis tem limites e pode não ser suficiente para picos extremos sem otimização. Adicionar mais shards ao Kinesis Data Stream aumenta o throughput do stream, mas não resolve o problema se o consumidor não tiver capacidade para processar os dados mais rapidamente.
Passe no seu exame — sem a busca interminável por respostas
Obtenha todas as perguntas e explicações verificadas para este exame em um só lugar e economize horas de preparação. Mais de 1.000 certificações · Mais de 20 idiomas · Grátis para começar.
Passe no seu exame mais rápido → Não é necessário cartão