Spark Streaming e Python

Treinamento Real-Time Analytics com Apache Spark Streaming e Python

O treinamento Real-Time Analytics com Apache Spark Streaming e Python foi desenvolvido para que os alunos possam após o treinamento ser capaz de construir aplicações de Big Data e Analytics em Real-Time, usando as tecnologias mais modernas para processamento massivo o Spark Streaming com apoio de bibliotecas Python como Pandas e Numpy, são abordados conhecimentos de arquitetura e ecossistemas fundamentais para a programação com a linguagem Python e o Framework de Open Source Apache Spark, usando os modulos Apache Spark Streaming e Spark Machine Leaning Lib. Entender os principais conceitos e fluxo de trabalho de implementação, dominar tópicos avançados de manipulação de RDDs e DataFrames, e saber escrever scripts Spark com acesso a HDFS 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 e finalizar apresentando as informações em componentes de visualização de dados.

Calendário de turmas.

Somente turma corporativas.

Conteúdo Programático

Conceitual Big Data e Streaming.

  • Streaming de Dados.
  • Stream X Batch.
  • Real-time Stream.
  • 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).
  • Free Software(GLP) X Open Source(BSD, Apache, etc)
  • Apache Software Foundation.
  • Kafka x RabbitMQ x Spark Stream x Flink Stream.

Instalação do Ambiente Python e Spark.

  • Pré-requisitos.
  • Instalando o Python.
  • Instalando uma IDE Python.
  • Conhecendo o PyPI.
  • Instalando Pandas.
  • Instalando Numpy.
  • Instalando Pyarrow.
  • Instalando Py4J.
  • Instalando o Spark.
  • Modos do Spark.
  • Standalone Cluster.

Programação Funcional em Python e PySpark.

  • 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.
  • PySpark.
  • Python Package Management.
  • Virtualenv.
  • PEX.

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.

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 Python e Hadoop.
  • Arquivos de seqüência.
  • Usando Partitioner e seu impacto na melhoria do desempenho.

Formatos de Armazenamento

  • Trabalhando arquivos CSV com Spark.
  • Trabalhando arquivos JSON com Spark.
  • Trabalhando arquivos XML com Spark.
  • Parsing XML com Spark RDD.
  • Introdução ao Apache Parquet.
  • Trabalhando com arquivos Parquet.

Apache Spark SQL e PySpark.

  • DataFrame API.
  • Spark SQL.
  • Arquitetura Spark SQL.
  • Analyze Spark SQL.
  • Context em Spark SQL.
  • UDF.
  • Spark Session.
  • Column API.
  • Data Types.
  • Row.
  • Function.
  • Window.
  • Grouping.

Apache Spark e Pandas.

  • Apache Arrow.
  • Convertendo dados para o Pandas.
  • Pandas UDF.
  • Pandas Function.
  • PyArrow.

Analise de Dados com Python.

  • NumPy.
  • Pandas.
  • Slicing com NumPy.
  • Reshaping Arrays.
  • Pandas e Dataframes.
  • Pandas - Multi Dimension.
  • Pandas - Group By.
  • Pandas - Rashape.
  • Map,Filter e Reduce.
  • Lambda.
  • NumPy - Join,Split.
  • Array Numpy.
  • SQL Join Tables Pandas.
  • Pandas, NumPy e PySpark.

Apache Spark Streaming

  • Spark Streaming.
  • Query Management.
  • Fluxo do Streaming de Dados.

Apache Spark MLlib

  • Machine Learning com Apache Spark.
  • Aprendizagem Supervisionada.
  • Aprendizagem Não Supervisionada.
  • Aprendizagem por Reforço.
  • MapReduce com PySpark.
  • DStreams.
  • Spark MLLib - Regressão Linear.
  • Spark MLLib - Classificação com Algoritmo Decision Tree.
  • Spark MLLib - Classificação com Algoritmo Random Forest.
  • Spark MLLib - Classificação com Algoritmo Naive Bayes.
  • Spark MLLib - Clusterização com Algoritmo K-Means.
  • Spark MLLib - Algoritmos de Recomendações.

Data Visualization Tools.

  • Técnicas de Data Visualization.
  • Matplotlib.
  • Seaborn.
  • ggPlot.

Carga Horária:

  • 32 Horas.

Pré-requisitos dos Participantes:

  • Conhecimento em Programação e Python.
  • 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é 15 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.
  • 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 Python 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 (Quando presencial).

Metodologia

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

Diferenciais da Ambiente Livre.

A Ambiente Livre tem 17 anos no mercado, pioneirismo na oferta de consultoria, treinamentos, projetos e suporte em softwares de código-fonte aberto e software livre com um ecossistema voltado a negócios, e pode lhe ajudar a gerir complexidades, reduzir custos, permitindo adaptar e oferecer inovação inteligente necessária para o seu sucesso.

3.535 profissionais capacitados em 325 turmas ministradas.

Atuação global, 807 empresas impactadas em projetos, consultorias e treinamentos no Brasil, América Latina, Europa e África.

Networking entre profissionais, comunidades e startups de tecnologias Open Source e Free Software.

Treinamentos baseados em experiência de projetos e consultorias, 2.230 tutorais documentados, atualizados e disponibilizado de forma vitalícia em EAD.

Empresa 100% focada em Open Source e Free Software e contribuidora com equipe atuante nos projetos e eventos de código aberto e software livre.

Apoio na criação de 4 startups / Spin-off baseadas em soluções Open Source ou Free Software.

Instrutor

Marcio Junior Vieira

  • 20 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, Engenheiro de Dados e Arquiteto de Software.
  • Professor dos MBAs em Big Data & Data Science, Inteligência Artificial e Business Intelligence da Universidade Positivo.
  • Professor de BPM no MBA de 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.
  • Pesquisador pela Universidade de Brasília no Laboratório de Tecnologias da Tomada de Decisão - UnB/LATITUDE.
  • 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, PgDay 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, Natura, MP, Netshoes, Embraer entre outras.
  • Especialista em implantação e customização de Big Data com Hadoop, Spark, Pentaho, Cassandra e MongoDB.
  • Contribuidor de projetos open sources ou free software internacionais, tais como Pentaho, LimeSurveySuiteCRM e Camunda.
  • Especialista em implantação e customização de ECM com Alfresco e BPM com ActivitiFlowable e Camunda.
  • Certificado (Certified Pentaho Solutions) pela Hitachi Vantara (Pentaho inc).
  • Membro da The Order Of de Bee (Comunidade Alfresco trabalhando para desenvolver o ecossistema Alfresco independente)

Log in