Apache Spark

Treinamento Apache Spark com Scala para Desenvolvedores

 

Sobre o Treinamento

O treinamento Apache Spark para desenvolvedores foi desenvolvido para que os  alunos possam após o treinamento ser capaz de construir aplicações de Big Data usando uma das tecnologias mais modernas para processamento massivo o Spark, são abordados conhecimentos de arquitetura e ecossistemas fundamentais para a programação com a linguagem Scala e o Framework de código aberto Apache Spark. Entender os principais conceitos e fluxo de trabalho de implementação, dominar tópicos avançados de manipulação de RDDs, saber escrever scripts Spark com acesso a HDFS, Hive, HBase e interações com outros projetos do ecossistema Hadoop necessários para a análise de dados. Saber fazer uso de motores de processamento e desenvolver soluções que utilizam componentes em todo hub de dados da empresa. Ser capaz de construir aplicativos usando Apache Spark para processamento de stream combinando dados históricos com dados de streaming, através de análises interativas em tempo real.


Turmas Somente inCompany

 

Conteúdo Programático

Conceitual Big Data e Spark

  • Visão geral sobre Hadoop.
  • Características do Hadoop.
  • Sistema distribuído de arquivos.
  • Ecossistema Hadoop.
  • Quem usa o Hadoop.
  • Cases do uso Hadoop.
  • Uso de Hadware comum.
  • Distribuições do Hadoop ( Cloudera X Hortonworks X Apache).

Introdução a Linguagem Scala

  • O que é Scala?
  • Apresentando Scala.
  • Instalando Scala.
  • Journey - Java para Scala
  • First Dive -  Interactive Scala.
  • Escrevendo scripts Scala - Compilando Programas Scala.
  • Basico em Scala.
  • Tipos Básicos Scala.
  • Definindo Funções.
  • IDE para Scala.
  • Scala Community.

Essencial em Scala

  • Imutabilidade em Scala - Semicolons.
  • Declaração método.
  • Literais.
  • Listas.
  • Tuplas.
  • Opções.
  • Maps.
  • Palavras reservadas.
  • Operadores.
  • Regras de precedência.
  • If Statements.
  • Scala Para Compreensão.
  • While Loops, Do-While Loops.
  • Operadores condicionais.
  • Pattern Matching.
  • Enumerações.

Traits e OOPs em Scala

  • Traits Intro - Traits as Mixins.
  • Stackable Traits.
  • Criando Traits e OOPS - Classes and Objetos Básicos.
  • Construtores Scala.
  • Nested Classes.
  • Visibility Rules.

Programação Funcional em Scala

  • O que é programação funcional?
  • Literais funcionais e Closures.
  • Recursão.
  • Tail Calls.
  • Estruturas de Dados Funcionais.
  • Parâmetros das Funções implícitas.
  • Chamada por nome.
  • Chamada por Valor.

Instalação do Apache Spark

  • Instalando o Spark.
  • Modos do Spark.
  • Standalone Cluster.

Primeiros passos em Apache Spark

  • Invocando Spark Shell.
  • Criando o Contexto Spark.
  • Carregando um arquivo no Shell.
  • Realizando algumas operações básicas em arquivos em Spark Shell.
  • Construindo um Projeto com sbt.
  • Executando o Projecto Spark com sbt.
  • Caching Overview, Persistência Distribuído.
  • Spark  Streaming Overview.
  • Exemplo: Streaming Word Count.

RDD - Resilient Distributed Dataset

  • Transformações no RDD.
  • Ações em RDD.
  • Carregando dados em RDD.
  • Salvando dados através RDD.
  • Key-Value Pair RDD.
  • MapReduce e Operações RDD Pair.
  • Integração Scala e Hadoop.
  • Arquivos de seqüência.
  • Usando Partitioner e seu impacto na melhoria do desempenho.

Apacke Spark com SQL e Hadoop Hive

  • Arquitetura Analyze Hive.
  • Arquitetura Spark SQL.
  • Analyze Spark SQL.
  • Context em Spark SQL.
  • Integrando Hive e Spark SQL.

Apache Spark e Pentaho

  • Overview Suite Pentaho.
  • Pentaho data Integration e AEL - Adaptative Execution Layer.
  • Orquestrando Apache Spark com Pentaho Data Integration.
  • Data Visualization

 

Carga Horária:

  • 32 Horas.

Pré-requisitos dos Participantes:

  • Conhecimento em Programação Java ou alguma linguagem com Orientação Objeto.
  • Noções de Big Data.
  • Conhecimento de Banco de Dados e SQL.
  • Conhecimento Básico de Linux.
  • Todos os participantes devem trazer um notebook para realizar as atividades práticas.
  • O Computador deve estar  com acesso de administrador para possibilitar instalações de aplicativos e acesso a Internet.
  • Para turmas In-Company não trabalhamos com limite de participantes para os treinamentos, orientamos que as turmas sejam de até 12 alunos para um melhor desempenho.

Requisitos mínimos de hardware:

  • Memória RAM : 8GB.
  • Espaço em Disco: 10GB.
  • Processador: Dual-core AMD 64, EM64T
  • deve estar ativo a Virtualização na BIOS do equipamento.
  • Sistemas Operacionais:Qualquer um com suporte e Virtualização com VirtualBox.
  • Oracle VM VirtualBox ( https://www.virtualbox.org/ ).
  • Obs. Equipamentos com menos que 8GB de Memória RAM ( Entre 5GB e 8GB) podem passar por lentidão nas atividades de uso de maquinas virtuais simultâneas no treinamento. Equipamentos com 4GB ou inferior não funcionarão para o treinamento.

Material

Serão disponibilizados os seguintes materiais aos alunos do treinamento:

  • Todos os softwares Apache Spark e Scala e acessórios na sua última versão estável.
  • Material próprio em Português do Brasil.
  • Apresentações ( slides do treinamento ) desenvolvidas pela equipe Ambiente Livre.
  • Apostilas digitais dos softwares desenvolvidas pela Ambiente Livre.
  • Apostilas com exercícios práticos desenvolvidos no treinamento.
  • Materiais e documentações complementares desenvolvido pela Comunidade Open Source Mundial.
  • Caneta, Pasta e Bloco de Anotações.

Metodologia

  • Todos os dias serão apresentados novos recursos e conceitos e avaliados através de exercícios práticos em todas as aulas

 

 

 
Marcio Junior Vieira

  • 19 anos de experiência em informática, vivência em desenvolvimento e análise de sistemas de gestão empresarial e ciência de dados.
  • CEO da Ambiente Livre atuando como Cientista de Dados e Arquiteto de Software.
  • Professor dos MBAs em Big Data & Data Science, Inteligência Artificial e Business Intelligence da Universidade Positivo.
  • Professor do MBA Artificial Intelligence e Machine Learning da FIAP.
  • Professor da Pós-Graduação em Big Data e Data Science da UniBrasil.
  • Trabalhando com Free Software e Open Source desde 2000 com serviços de consultoria e treinamento.
  • Graduado em Tecnologia em Informática(2004) e pós-graduado em Software Livre(2005) ambos pela UFPR.
  • Palestrante FLOSS em: FISL, The Developes Conference, LATINOWARE, Campus Party, Pentaho Day, Ticnova e FTSL.
  • Organizador Geral: Pentaho Day 2017, 2015, 2019 e apoio nas ed. 2013 e 2014.
  • Data Scientist, instrutor e consultor de Big Data e Data Science com tecnologias abertas.
  • Ajudou a capacitar equipes de Big Data na IBM, Accenture, Tivit, Serpro, MP, Netshoes, Embraer entre outras.
  • Especialista implantação e customização de Big Data com Hadoop, Spark, Pentaho, Cassandra. Expert em BPM e ECM com Alfresco e Camunda. Participa também de projetos internacionais como LimeSurvey e  SuiteCRM.
  • Certificado (Certified Pentaho Solutions) pela Hitachi Vantara (Pentaho).

Linkedin : https://www.linkedin.com/in/mvieira1/
Blog: http://blogs.ambientelivre.com.br/marcio

Log in