Criar conta grátis

Engenharia e Análise de Dados

24. Apache Spark

24º capítulo da apostila Engenharia e Análise de Dados: estudo contínuo e em linguagem simples sobre Apache Spark, com conceitos conectados, aplicações e mapa mental.

9 min de leitura60 questões para praticarRevisado em 14/09/2026

Apache Spark executa processamento distribuído sobre dados particionados. Para entender seu comportamento, acompanhe a passagem do código declarativo ao plano e às tarefas executadas no cluster. O capítulo explica driver, executors, transformações, ações e shuffle, relacionando desempenho e recuperação às operações efetivamente realizadas.

Com dados compreendidos e governados, avançamos para preparação, modelagem analítica, aprendizado de máquina e processamento em escala. Os capítulos ligam fundamentos, algoritmos e aplicações. Este é o capítulo 24 de 24 da disciplina Engenharia e Análise de Dados. Ele retoma Apache Hadoop e utiliza essa base para avançar. Como capítulo final, ele integra as decisões construídas ao longo da disciplina.

O fio condutor

Ciência de Dados começa com uma pergunta e termina com uma decisão que precisa ser compreendida, avaliada e acompanhada. Entre esses dois pontos, dados são coletados, examinados e transformados; métodos são escolhidos; resultados são validados; e limitações são comunicadas. Nenhuma etapa compensa automaticamente uma falha grave ocorrida na etapa anterior.

Neste capítulo, use Apache Spark para acompanhar três dimensões: o problema que se deseja resolver, a evidência disponível e o critério usado para avaliar o resultado. Essa separação ajuda a evitar soluções tecnicamente sofisticadas que não respondem à necessidade real.

Mecanismo de processamento e papéis da aplicação

Começamos por Mecanismo de processamento e papéis da aplicação, pois essa base organiza os conceitos e exemplos que aparecerão no restante do capítulo.

Spark atende processamento em lote, SQL, streaming e aprendizagem de máquina por componentes de seu ecossistema. Pode acessar HDFS, armazenamento de objetos, bancos e outras fontes, conforme conectores; não depende exclusivamente de um sistema de arquivos ou de YARN. O gerenciador de cluster fornece recursos, enquanto a aplicação organiza seu processamento.

O driver executa a coordenação da aplicação, mantém o contexto e constrói os planos de trabalho. Executors executam tarefas e podem manter partições ou cache para a aplicação. Eles não são servidores permanentes de metadados do HDFS. Trazer um resultado volumoso ao driver pode causar falta de memória mesmo quando o cluster tem capacidade distribuída suficiente: a capacidade agregada não se transforma automaticamente em memória de um processo.

RDDs, DataFrames e planos

Depois de compreender Mecanismo de processamento e papéis da aplicação, passamos a RDDs, DataFrames e planos. A nova seção acrescenta outra etapa ao mesmo raciocínio e mostra como as decisões anteriores influenciam as próximas.

RDD é uma coleção distribuída, particionada e imutável. Transformações geram novos RDDs e a linhagem registra dependências que permitem recomputar partições quando os dados de origem e o cálculo continuam disponíveis. Essas dependências formam um grafo acíclico, DAG. Imutabilidade significa que uma transformação não altera o RDD anterior em seu lugar, e não que toda fonte externa seja imutável.

DataFrames acrescentam estrutura tabular e esquema, permitindo otimizações de nível mais alto. Catalyst analisa e transforma planos de consultas Spark SQL. Operações sobre DataFrames continuam distribuídas; não existe conversão obrigatória e integral para pandas. Conversões como coleta local são escolhas explícitas e devem ser limitadas a resultados compatíveis com o processo consumidor. Preferir expressões compreendidas pelo otimizador pode facilitar execução eficiente, mas o plano deve ser observado.

Continue lendo de graça

O capítulo inteiro está liberado no plano gratuito

Criar conta leva menos de um minuto e não pede cartão. Você destrava o texto completo, o mapa mental, o PDF para estudar off-line e ainda resolve questões inéditas todo dia.

Leu o resumo? Agora pratique.

São 60 questões inéditas de Apache Spark, todas comentadas alternativa por alternativa.

Criar conta grátis e praticar

Você volta para este capítulo depois de criar a conta.

Fontes consultadas

  • Apache Spark: guia de RDDs
  • Apache Spark: visão de cluster
  • Acervo publicado de Ciência de Dados: 60 questões deste tópico; conceitos revisados e organizados nas seções.