Mind map
Apache Spark - Basico Luan Moreno
Map content
Apache Spark - Basico Luan Moreno
contexto da sua origem
- Hadoop
- Antes de 2014, era necessário evoluir o hardware "pra cima" para processar os dados
- Permitiu distribuir processamentro entre máquinas
- permitiu escalar horizontal
- trouxe o MAP Reduce
- barateamento da memória RAM após 2014
- Hadoop
características básicas
- usa memória como processamento
- executada sob clusters
- opensource
- desenvolvimento local pode ser escalável em ambientes grandes
- Retarda ao máximo "tocar" os dados, só executa os dados quando necessários
quais problemas resolve ?
- consumir, processar e analisar dados vindo do Datalake
- repositório de dados de uma empresa
- Permite escrever na melhor linguagem que o desenvolvedor escolher
- permite o processamento massivo de dados
- o mesmo código que processa MB é eficiente para processar GB, TB, PB
- consumir, processar e analisar dados vindo do Datalake
Partições
- o que é ?
- unidades de paralelismo
- Como o Spark quebra os dados e distribui no cluster
- Padrão de 64 MB ou 128 MB, mas pode ser ajustado
- Coração do Spark
- Maiores demoras do Spark são na ingestão e no Output dos dados
- o que é ?
Jobs, Stages e Tasks
- Job
- Quando eu escrevo minha aplicação e submeto ao cluster
- Driver
- Receber as aplicações, compilar e manter um plano de execução e envia para os Slaves executarem
- Executor
- Driver
- Primeiro fato onde recebo as aplicações Spark, compilação, vejo se está ok
- Cria as Dags
- Quando eu escrevo minha aplicação e submeto ao cluster
- Stage
- Serial ou Paralelo
- Recebe as Dags dos Jobs
- Tasks
- São as Threads
- 16 Cores, teoricamente são 16 threads que podem ser executadas simultaneamente no máximo
- Unidade de execução
- Job
Transformações
- Narrow Transformation
- Durante a execução os Spark junta os dados em uma Narrow Partition, em um único lugar, uma única partição para reduzir o escopo de dados que será necessário processar
- Simples
- Wide Transformation
- Complexa
- Usada em casos complexos
- grande latência
- Exemplo: em casos de ordenação, são usadas Wide, porque a ordenação "embaralha os dados".
- Narrow Transformation
RDD
- RDD é a abstração mais básica do Spark
- API utilizada para interagir com as partições
- Resiliant Distributed DataSet
- Resiliente, não muda
- Distribuido : distribui em partições em memória, executores
- DataSet: Conjunto não tipado de dados, não tem um schema especificado
- está defasado, foi substituido pelo uso de DataFrame
- Data frame
- Diferente do RDD, trabalha do tipos dados , tem schema
- Abstrai quantas partições serão utilizadas
- Data Frame API
- Permite o uso de várias linguages : PySpark, Python, Scala, SQL com performance semelhante
- Catalyst Optmizer
- Faz com que o plano de execução do Spark seja executado muito mais rápido que um RDD
- Faz com que o plano de execução do Spark seja executado muito mais rápido que um RDD
- Data frame
- RDD é a abstração mais básica do Spark
Information
- Description
- Tecnologias Educacionais Spark Mind Map on Apache Spark - Basico Luan Moreno, created by Victor Peçanha on 13/08/2024.
- Created by
- Victor Peçanha · Aug 2024
- Updated
- Aug 15, 2024
- Views
- 0
- Rating