Big Data, processamento distribuído, volume, velocidade e variedade
Do zero
Big Data é quando os dados ficam grandes demais, chegam rápido demais ou vêm em formatos variados demais para um computador e um banco de dados comum darem conta. A definição clássica usa três Vs:
- Volume: a quantidade. Bilhões de notas fiscais eletrônicas de todos os municípios.
- Velocidade: o ritmo com que chegam e precisam ser tratados. Notas novas a cada minuto.
- Variedade: os formatos. XML, PDF, planilhas, fotos de documentos, textos de denúncias.
Muitos autores acrescentam veracidade (os dados são confiáveis?) e valor (servem para alguma decisão?), chegando a cinco Vs.
Para dar conta disso, em vez de um supercomputador, usa-se o processamento distribuído: muitos computadores comuns (um cluster) dividindo o trabalho. É como a apuração de uma eleição: cada seção conta os próprios votos ao mesmo tempo, e no fim alguém soma os totais. Ninguém leva todas as urnas para uma sala só.
Frase para guardar: Big Data são os Vs (volume, velocidade, variedade); a saída é dividir os dados e o trabalho entre muitas máquinas e levar o processamento até onde os dados estão.
Em 1 minuto
- Escalabilidade horizontal: crescer acrescentando máquinas ao cluster, em vez de trocar por uma máquina maior (vertical).
- Hadoop: o HDFS guarda arquivos enormes divididos em blocos (128 MB por padrão), cada um replicado em vários nós (três cópias por padrão), para tolerar falhas; o YARN gerencia os recursos do cluster; o MapReduce processa em duas fases.
- MapReduce: o map processa cada pedaço onde ele está e emite pares chave-valor; o shuffle agrupa os pares de mesma chave; o reduce combina cada grupo no resultado final.
- Apache Spark: processamento distribuído em memória, muito mais rápido que o MapReduce em tarefas que repetem etapas sobre os mesmos dados (como aprendizado de máquina); tem DataFrames, Spark SQL, streaming e a biblioteca MLlib.
- Lote × fluxo: o processamento em lote (batch) trata grandes conjuntos de tempos em tempos (o fechamento do mês); o em fluxo (streaming) trata cada evento ao chegar (Kafka, Spark Structured Streaming, Flink).
- Data lake × data warehouse: o lake guarda dados brutos, em formatos originais, e aplica o esquema só na leitura (schema-on-read); o warehouse guarda dados tratados e modelados para análise, com o esquema definido na gravação (schema-on-write). O lakehouse combina os dois.
- Formatos colunares (Parquet, ORC) guardam os dados por coluna e aceleram as consultas que leem poucas colunas de muitas linhas.
Exemplo concreto: o total de compras por fornecedor
O Tribunal quer saber, entre bilhões de itens de notas fiscais de todos os municípios, quanto cada fornecedor (CNPJ) vendeu no ano.
Entrada (espalhada em blocos pelo cluster) Map (em cada nó, onde o bloco está)
nota 1: CNPJ A, R$ 1.000 (A, 1000)
nota 2: CNPJ B, R$ 500 (B, 500)
nota 3: CNPJ A, R$ 300 (A, 300)
nota 4: CNPJ C, R$ 2.000 (C, 2000)
Shuffle (agrupa por chave) Reduce (combina cada grupo)
A → [1000, 300] A → 1.300
B → [500] B → 500
C → [2000] C → 2.000
Cada nó faz o map nos blocos que já tem guardados, sem copiar os dados pela rede: o processamento vai até os dados. Se um nó cai, o bloco existe em outros dois, e a tarefa é refeita lá.
No Spark, a mesma conta cabe em poucas linhas, e os dados intermediários ficam em memória:
notas = spark.read.parquet("s3://tce/notas-fiscais/2026/")
total = notas.groupBy("cnpj").sum("valor")
total.write.parquet("s3://tce/analises/total-por-cnpj/")
E para acompanhar as notas à medida que chegam (fluxo), um alerta dispara quando um fornecedor novo emite, num só dia, notas acima de um limite: isso é processamento em streaming, sobre eventos lidos de uma fila como o Kafka.
Comparação: tecnologias e conceitos
| MapReduce (Hadoop) | Apache Spark | |
|---|---|---|
| Dados intermediários | Gravados em disco a cada etapa | Mantidos em memória sempre que possível |
| Velocidade | Menor, sobretudo em tarefas iterativas | Muito maior em tarefas iterativas e interativas |
| Modelo | Map e reduce | Transformações sobre DataFrames, SQL, streaming, aprendizado de máquina |
| Tolerância a falhas | Refaz a tarefa a partir dos blocos replicados | Recalcula a partir da linhagem das transformações |
| Data lake | Data warehouse | |
|---|---|---|
| O que guarda | Dados brutos, em qualquer formato | Dados tratados, integrados e modelados |
| Esquema | Na leitura (schema-on-read) | Na gravação (schema-on-write) |
| Usuários típicos | Cientistas e engenheiros de dados | Analistas e gestores (relatórios, painéis) |
| Risco | Virar um “pântano” de dados sem catálogo | Rigidez para dados novos e variados |
| Lote (batch) | Fluxo (streaming) | |
|---|---|---|
| Quando processa | Periodicamente, sobre um conjunto grande | Continuamente, a cada evento |
| Atraso | Horas ou dias | Segundos ou menos |
| Exemplo | Relatório anual de compras por fornecedor | Alerta de nota fiscal suspeita no mesmo dia |
| V | Pergunta |
|---|---|
| Volume | Quanto dado há? |
| Velocidade | Com que rapidez chega e precisa ser tratado? |
| Variedade | Em quantos formatos (estruturado, semiestruturado, não estruturado)? |
| Veracidade | O dado é confiável? |
| Valor | O dado serve para alguma decisão? |
Como a FCC cobra
Os Vs do Big Data (volume, velocidade e variedade, às vezes com veracidade e valor), o funcionamento do MapReduce (map, shuffle, reduce) e do HDFS (blocos replicados), e Spark × MapReduce.
- Escalabilidade horizontal × vertical.
- Data lake × data warehouse; schema-on-read × schema-on-write.
- Processamento em lote × em fluxo.
- Dados estruturados, semiestruturados (XML, JSON) e não estruturados (texto, imagem).
Pegadinhas
- “Big Data é só uma questão de volume.” Falso: velocidade e variedade também caracterizam o Big Data, além de veracidade e valor em definições ampliadas.
- “No HDFS, cada arquivo fica inteiro num único servidor.” Falso: é dividido em blocos, e cada bloco é replicado em vários nós.
- “No MapReduce, a fase map junta os resultados finais.” Falso: o map processa e emite pares chave-valor; quem combina é o reduce.
- “O Spark é mais rápido porque dispensa o cluster.” Falso: também é distribuído; ganha velocidade por manter os dados em memória.
- “O data lake exige que os dados sejam tratados e modelados antes de serem gravados.” Falso: isso é o warehouse; o lake guarda bruto e aplica o esquema na leitura.
- “Escalar horizontalmente é trocar o servidor por um mais potente.” Falso: isso é escalar verticalmente; horizontal é acrescentar máquinas.
Explique com suas palavras
Explique a um gestor, com o exemplo das notas fiscais, por que o Big Data exige processamento distribuído e como o MapReduce soma as compras por fornecedor.
- Escreva sem olhar a lição, com frases curtas e um exemplo seu.
- Onde travar ou precisar de jargão, há uma lacuna: releia só essa parte.
- Compare com a explicação-modelo e reescreva o que faltou.
Fica salva neste navegador.
Comparar com uma explicação-modelo
As notas fiscais de todos os municípios são tantas, chegam tão depressa e em tantos formatos que nenhum computador sozinho daria conta de analisá-las a tempo. A saída é dividir: os dados ficam espalhados em pedaços por dezenas de máquinas, e cada máquina trabalha nos pedaços que já tem, ao mesmo tempo que as outras.
Para somar as compras por fornecedor, cada máquina lê as suas notas e anota, para cada uma, o CNPJ e o valor. Depois, todas as anotações de um mesmo CNPJ são reunidas, venham de onde vierem, e somadas. É como a apuração de uma eleição: cada seção conta os seus votos, e no fim se somam os totais de cada candidato.
Teste-se
IA, Ciência de Dados e Automação · Big Data e processamento distribuído · Inédita, estilo FCC
Questão 1 de 3
As notas fiscais eletrônicas de todos os municípios chegam ao Tribunal a cada minuto, em XML, PDF e imagens digitalizadas, e já somam bilhões de registros. Esse cenário destaca, respectivamente, as características de Big Data chamadas
A–E escolhem, Enter confirma. Botão direito ou Shift + letra risca.
Toque longo numa alternativa para riscá-la.
IA, Ciência de Dados e Automação · Big Data e processamento distribuído · Inédita, estilo FCC
Questão 2 de 3
No modelo de programação MapReduce, a fase que recebe os valores intermediários já agrupados por chave e os combina no resultado final, como a soma das compras de cada CNPJ, é a fase
A–E escolhem, Enter confirma. Botão direito ou Shift + letra risca.
Toque longo numa alternativa para riscá-la.
IA, Ciência de Dados e Automação · Big Data e processamento distribuído · Inédita, estilo FCC
Questão 3 de 3
No HDFS, sistema de arquivos distribuído do Hadoop, para que o cluster continue funcionando mesmo quando algumas máquinas falham, cada bloco de arquivo é
A–E escolhem, Enter confirma. Botão direito ou Shift + letra risca.
Toque longo numa alternativa para riscá-la.
Mais duas questões deste tópico estão em Questões.
Flashcards gerados
| Frente | Verso |
|---|---|
| Escalabilidade horizontal × vertical | Horizontal é acrescentar máquinas ao cluster; vertical é trocar por uma máquina mais potente. |
| Processamento em lote × em fluxo | O lote (batch) trata grandes conjuntos de tempos em tempos; o fluxo (streaming) trata cada evento ao chegar. |
| Levar o processamento até os dados | No processamento distribuído, cada nó processa os blocos que já guarda, em vez de mover os dados pela rede. |
| Formato colunar (Parquet, ORC) | Guarda os dados por coluna, o que acelera consultas que leem poucas colunas de muitas linhas e comprime melhor. |
| Dados estruturados, semiestruturados e não estruturados | Estruturados seguem um esquema fixo (tabelas); semiestruturados têm marcação flexível (XML, JSON); não estruturados não têm modelo prévio (textos, imagens, áudio). |
Ligação com o estudo de caso
Num caso sobre analisar grandes bases (notas fiscais, folhas de pagamento, contratos de todos os municípios), proponha a arquitetura em camadas: ingestão em lote e em fluxo, um data lake com os dados brutos e um catálogo, processamento distribuído com Spark, um warehouse ou painel com os indicadores tratados, e cuidados de governança e de proteção dos dados pessoais. Justifique cada peça pelos Vs do problema.
Fontes da lição
- Edital nº 01/2026, Anexo II, Inteligência Artificial, Ciência de Dados e Automação (fontes/edital-01-2026.txt).
- Jeffrey Dean e Sanjay Ghemawat, “MapReduce: Simplified Data Processing on Large Clusters” (2004).
- Documentação do Apache Hadoop: arquitetura do HDFS (blocos e replicação).
- Documentação do Apache Spark.
Claude explica
Tire dúvidas sobre este tema no Claude: o site copia o pedido com a lição e abre uma conversa nova, na sua conta. Confira na fonte qualquer fato de lei ou de norma.
Pratique fora do site
Faça questões da FCC sobre este tópico no QConcursos ou no Gran e registre aqui quantas fez: elas contam na meta da semana e no status do tópico.