Questão nº 84
Questão de Tecnologia da Informação · FGV TCE-PA 2024 (nº 84)
Assinale a opção que apresenta exemplos de tecnologias que comportam processamento em lote e em fluxo simultaneamente e nativamente.
- AApache Storm e Apache Flink.
- BApache Hadoop e Apache Storm.
- CApache Flink e Apache Spark. (alternativa correta)
- DApache Kafka e Apache Flink.
- EApache Kafka e Apache Storm.
Resposta comentada
Gabarito Alternativa C
O processamento de dados pode ser feito em lote (batch), onde grandes volumes de dados são processados de uma vez em intervalos regulares, ou em fluxo (stream), onde os dados são processados continuamente à medida que chegam. Tecnologias que comportam ambos "simultaneamente e nativamente" utilizam um único motor e API para lidar com esses dois paradigmas de forma eficiente, tratando o processamento em lote como um caso especial de processamento em fluxo (fluxos limitados).
- (A) Incorreta: O Apache Storm é um motor de processamento de fluxo (streaming) em tempo real. Embora possa processar dados em micro-lotes, ele não foi projetado para processamento de lote em larga escala de forma nativa e eficiente como o Apache Flink.
- (B) Incorreta: O Apache Hadoop (especialmente o MapReduce) é uma tecnologia primariamente de processamento em lote. O Apache Storm, como mencionado, é focado em processamento de fluxo. Nenhuma das duas oferece um motor unificado para ambos os paradigmas simultaneamente e nativamente.
- (C) Correta: O Apache Flink foi projetado desde o início como um motor unificado que trata o processamento em lote como um caso especial de processamento em fluxo (fluxos com início e fim definidos). O Apache Spark, embora tenha começado com processamento em lote (RDDs), evoluiu para incluir o Spark Streaming e, mais tarde, o Structured Streaming, que permite processar dados em fluxo e em lote usando a mesma API e motor, tornando-o uma plataforma unificada.
- (D) Incorreta: O Apache Kafka é uma plataforma de streaming de dados distribuída, atuando como um broker de mensagens ou fila de eventos. Ele é excelente para transportar dados em fluxo, mas não é um motor de processamento em si. Ele é frequentemente usado em conjunto com motores de processamento como o Flink, mas não realiza o processamento.
- (E) Incorreta: O Apache Kafka, como explicado, não é um motor de processamento. O Apache Storm é primariamente um motor de processamento de fluxo, sem a capacidade nativa e unificada para processamento em lote em larga escala.
Fonte: FGV TCE-PA 2024 Auditor de Controle Externo - Informática - Administrador de Banco de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.