Skip to content

Tutorial: Desenvolvendo Aplicações baseadas em Big Data com PySpark

License

Notifications You must be signed in to change notification settings

v4ires/caipyra-2018-pyspark

Repository files navigation

Tutorial Caipyra 2018 - Desenvolvendo Aplicações baseadas em Big Data com PySpark

Esta repositório é uma coleção de IPython notebook/Jupyter notebooks destinados a treinar o leitor em diferentes conceitos Apache Spark, do básico ao avançado, usando a linguagem Python.

Nota: Este repositório é uma tradução e adaptação do repositório Spark Py Notebooks desenvolvido por @jadianes.

Instruções

Este repositório disponibiliza uma imagem em docker para execução dos notebooks disponíveis no tutorial. Para executar a imagem do docker, primeiro temos que compilar o arquivo Dockerfile. Neste arquivo, todas as instruções necessárias para a geração do contêiner. Execute o seguinte comando:

~$ docker build -f Dockerfile -t caipyra-2018-pyspark:latest .

Depois de compilar a imagem, basta executar o seguinte comando para execução do container e do Notebook Jupyter.

~$ docker run -dp 8888:8888 -v $(pwd):/caipyra-2018-pyspark caipyra-2018-pyspark pyspark

Depois de executar o comando, basta abrir o navegador e acessar o URL:

http://localhost:8888

Datasets

Neste tutorial nós usaremos alguns conjuntos de dados da KDD Cup 1999. Os resultados desta competição pode ser encontrada aqui.

Referências

O livro de referência para esses e outros tópicos relacionados ao Spark é:

  • Learning Spark by Holden Karau, Andy Konwinski, Patrick Wendell, and Matei Zaharia.

Notebooks

Os seguintes notebooks podem ser examinados individualmente, embora haja um ou menos uma sequência linear. Foi utilizado um mesmo conjunto de dados para resolver um conjunto de problemas relacionado com o Spark.

Sobre a leitura de arquivos e paralelizar.

Exemplos de utilização das operações map, filter e collect.

Exemplificação da operação RDD sampling.

Breve introdução a algumas das operações do pseudo-conjunto de RDD.

Exemplos de aplicação das Actions RDD reduce, fold e aggregate.

Como lidar com pares chave/valor para agregar e explorar dados.

Um notebook introduzindo tipos de Local Vector, estatísticas básicas em MLlib para Análise Exploratória de Dados e seleção de modelos.

Neste notebook, um esquema é inferido para nosso conjunto de dados de interações de rede. Com base nisso, usamos a abstração SQL DataFrame do Spark para executar uma análise de dados exploratória mais estruturada.

Aplicações

Além do básico. Perto de aplicativos reais usando o Spark e outras tecnologias.

A mesma pilha de tecnologia, desta vez, com um aplicativo cliente AngularJS.

Este tutorial pode ser usado independentemente para criar um modelo de recomendação de filme com base no conjunto de dados MovieLens. A maior parte do código na primeira parte, sobre como usar o ALS com o conjunto de dados público MovieLens, vem da minha solução para um dos exercícios propostos no CS100.1x Introdução ao Big Data com o Apache Spark de Anthony D. Joseph no edX , que também está disponível publicamente desde 2014 no Spark Summit.

Contribuições

Contribuições são bem vindas! Para relatórios de bugs ou solicitações, por favor envie um problema.

Contato

Sinta-se à vontade para entrar em contato comigo para discutir quaisquer questões, perguntas ou comentários.

Licença

Este repositório contém uma variedade de conteúdo; alguns desenvolvidos por Jose A. Dianes e alguns de terceiros. O conteúdo de terceiros é distribuído sob a licença fornecida por essas partes.

O conteúdo desenvolvido por Vinícius Aires Barros é distribuído sob a seguinte licença MIT Licença.

About

Tutorial: Desenvolvendo Aplicações baseadas em Big Data com PySpark

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published