Visão Geral
O curso Apache Spark Architecture foi desenvolvido para proporcionar uma compreensão profunda sobre a arquitetura interna e o funcionamento do Apache Spark, uma das principais plataformas para processamento distribuído de grandes volumes de dados.
Durante o treinamento, o participante aprenderá como o Spark gerencia tarefas, executa jobs, distribui dados e utiliza memória de forma otimizada.
O curso combina teoria e prática, permitindo que o aluno explore a estrutura do Spark Core, o funcionamento de RDDs, DataFrames, Spark SQL e como o Spark se integra com outras ferramentas do ecossistema Big Data.
Objetivo
Após realizar o curso Apache Spark Architecture, você será capaz de:
- Compreender a arquitetura e os principais componentes do Apache Spark.
- Entender como funciona o Spark Driver, Executors e o Cluster Manager.
- Conhecer o ciclo de vida de um job e o funcionamento do DAG (Directed Acyclic Graph).
- Analisar o gerenciamento de recursos e otimização de execução.
- Trabalhar com RDDs, DataFrames e o Catalyst Optimizer.
- Compreender a integração do Spark com HDFS, Hive e outras plataformas Big Data.
Publico Alvo
- Engenheiros e analistas de dados.
- Desenvolvedores e arquitetos de soluções Big Data.
- Administradores de clusters Hadoop/Spark.
- Profissionais que desejam dominar o funcionamento interno do Spark para otimização e escalabilidade.
Pre-Requisitos
- Conhecimento básico em Python ou Scala.
- Familiaridade com conceitos de Big Data e Hadoop.
- Noções de sistemas distribuídos e processamento paralelo.
- Ambiente configurado com Apache Spark instalado.
Materiais
Português + Exercícios + Lab Pratico
Conteúdo Programatico
Módulo 1: Introdução ao Apache Spark
- O que é o Apache Spark e seu papel no ecossistema Big Data
- Comparação com Hadoop MapReduce
- Casos de uso e vantagens da arquitetura in-memory
- Componentes principais: Spark Core, SQL, Streaming, MLlib e GraphX
Módulo 2: Arquitetura do Spark
- Arquitetura geral: Driver, Executors e Cluster Manager
- Funcionamento do Spark Context e SparkSession
- Ciclo de vida de um job Spark
- Transformações e ações em RDDs
Módulo 3: Spark Execution Model
- Submissão e execução de aplicações Spark
- DAG Scheduler, Task Scheduler e Executor Backend
- Divisão em stages e tarefas
- Planejamento físico e lógico de execução
Módulo 4: RDDs e DataFrames
- Estrutura e funcionamento dos RDDs (Resilient Distributed Datasets)
- Lazy Evaluation e persistência de dados
- Otimizações com DataFrames e Spark SQL
- Catalyst Optimizer e Tungsten Execution Engine
Módulo 5: Cluster Managers
- Tipos de gerenciadores de cluster: Standalone, YARN e Mesos
- Configuração e escalabilidade de clusters Spark
- Gerenciamento de recursos e isolamento de jobs
- Monitoramento via Spark UI
Módulo 6: Armazenamento e Integração
- Integração com HDFS, Hive, Cassandra e Kafka
- Leitura e escrita em formatos Parquet, Avro e JSON
- Particionamento e paralelismo de dados
- Boas práticas de ingestão e persistência
Módulo 7: Performance e Otimização
- Estratégias de caching e persistência
- Broadcast variables e Accumulators
- Tuning de parâmetros de execução
- Diagnóstico e solução de gargalos de performance
Módulo 8: Segurança e Deploy
- Configuração de autenticação e autorização no Spark
- Gerenciamento de certificados e encriptação de dados
- Estratégias de deploy: local, cluster e cloud
- Boas práticas de segurança e manutenção
Módulo 9: Projeto Prático Final
- Configuração de um ambiente Spark distribuído
- Execução e análise de um job real (ETL, análise de logs ou streaming)
- Monitoramento e análise do DAG
- Documentação e apresentação do projeto
TENHO INTERESSE