O Apache Spark é uma ferramenta Big Data que tem o objetivo de processar grandes conjuntos de dados de forma paralela e distribuída. Ela estende o modelo de programação MapReduce popularizado pelo Apache Hadoop, facilitando bastante o desenvolvimento de aplicações de processamento de grandes volumes de dados. Além do modelo de programação estendido, o Spark também apresenta uma performance muito superior ao Hadoop, chegando em alguns casos a apresentar uma performance quase 100x maior. Existem API's para as principais linguagem disponíveis no mercado, com destaque para PYTHON, JAVA, R, JULIA, SCALA.
Capítulo 1. Introdução ao Apache Spark
- 1.1. O que é o Spark?
- 1.2. Quais as vantagens e desvantagens do Spark?
- 1.3. Estudos de caso reais
- 1.4. Spark vs Hadoop vs MapReduce
Capítulo 2. Conceitos fundamentais do Apache Spark
- 2.1. A arquitetura do Apache Spark
- 2.2. Contando palavras: O “Hello World” do Spark
- 2.3. Instalando e executando um programa Spark em Python
- 2.4. Estruturas de dados: RDD, Dataframe, Dataset
- 2.5. Operações: transformações e ações
- 2.6. A API Dataframe
Capítulo 3. Estatística descritiva usando Apache Spark
- 3.1. O que é estatística descritiva?
- 3.2. Computando estatísticas descritivas com Spark
Capítulo 4: Spark SQL
- 4.1. O que é o Spark SQL?
- 4.2. Construindo aplicações com Spark SQL
- 4.3. Formatos de Dados
Capítulo 5: Spark MLLib
- 5.1. Introdução ao Spark MLLib
- 5.2. Pipelines de ML
- 5.3. Principais algoritmos da MLLib
Capítulo 6: GraphX
- 6.1. Introdução ao GraphX
- 6.2. Algoritmos clássicos de grafos
Capítulo 7: Spark Streaming
- 7.1. O que são streams?
- 7.2. Construindo aplicações com Spark Streaming
Capítulo 8: Deploy de uma aplicação Spark em um ambiente de cluster e Spark 3.0
- 8.1. Deploy de uma aplicação Spark em um ambiente de cluster
- 8.2. Spark 3.0