Pular para o conteúdo
O Complemento de Dois
  • Concursos
  • Calculadora
  • Estudos
  • Discord
  • Publicações
Home / Big data / Apache Spark

Apache Spark

Conceito

Ferramenta de código aberto para processar grande volume de dados. Diferentemente do Hadoop MapReduce, o Spark mantém os dados na memória RAM. Essa característica o torna mais rápido para certas tarefas.

Componentes principais

  • Spark SQL: Permite trabalhar com dados estruturados utilizando o SQL
  • Spark streaming: Processa dados em tempo real
  • MLlib: Permite a criação de modelos de machine learning
  • GraphX: Usado para processar gráficos e redes

Funcionamento

Utiliza uma estrutura de cluster, dividindo o trabalho em nós distintos:

  • Driver program: Coordena todo o processo
  • Cluster manager: Decide como os recursos serão distribuídos
  • Workers: Processam os dados

Resiliência

A base do Spark é o Resilient Distributed Dataset (RDD). De modo simples, os arquivos são divididos em inúmeras porções e distribuídos entre os nós. Isso permite que o Spark reconstrua os dados sem interromper o trabalho.

Computação distribuída

Divide o arquivo em diversas partições

As participações são distribuídas em diferentes nós

O código é levado até onde está o dado e não o contrário

Computação paralela

  • Multi-threading: Cada woker roda o processo chamado executor com diversas taks em paralelo
  • Escalabilidade horizontal: Mais máquinas para distribuição das tarefas

Coordenação

Directed Acyclic Graph (DAG):

  • Planejamento inteligente: Mapeia todas as etapas (map, filter, Join)
  • Lazy evaluation: Não executa tarefas que não foram solicitadas
  • Pipelines: Encadeamento de operações otimizando o paralelismo

Desafio

Shuffle (troca de dados), ocorre quando o Spark precisa organizar dados entre os nós para fazer um group by ou um Join. Isso exige mover dados pela rede e gravar no disco temporariamente, o que se opõe ao fluxo do paralelismo.

Categorias: Big data
Tags: apache, big data, spark, stream
Publicado em: 26/03/2026 19:37 e Atualizado em: 26/03/2026 19:37

Compartilhe este post:

Facebook Twitter LinkedIn WhatsApp

Navegação de Post

Post anterior: Governança de dados
Próximo post: Data pipeline

Posts Recentes

  • GoF
    Padrões de Projeto GoF1 de junho de 2026
  • POO
    Programação Orientada a Objetos (POO)1 de junho de 2026
  • CMMI-20
    CMMI-DEV v2.031 de maio de 2026
  • RUP
    RUP (Rational Unified Process)31 de maio de 2026
  • scrum
    Scrum31 de maio de 2026
  • Política de privacidade

2026. O Complemento de Dois. Todos os direitos reservados.