Este documento fornece uma introdução ao processamento de Big Data com PySpark. Resume os principais conceitos como MapReduce, Apache Spark, Resilient Distributed Dataset (RDD), e demonstra exemplos práticos de transformações e ações com RDD usando PySpark.
Presentation sur l'hébergement web et du cpanelGilbert Girard
Plusieurs hébergeurs web utilisent le logiciel en ligne Cpanel pour l'administration des différents serveurs mis à la disposition des administrateurs de sites web. Vous y découvrerez les serveurs web, courriel, courriel web, noms de domaine, ftp etc...
Presentation sur l'hébergement web et du cpanelGilbert Girard
Plusieurs hébergeurs web utilisent le logiciel en ligne Cpanel pour l'administration des différents serveurs mis à la disposition des administrateurs de sites web. Vous y découvrerez les serveurs web, courriel, courriel web, noms de domaine, ftp etc...
Palestra apresentada no Darkmira Tour BR 2016, fala sobre como conseguir processamento paralelo e distribuído utilizando PHP.
Código apresentado no GitHub: https://github.com/dianaarnos/darkmiratourbr-2016
Para avaliação da palestra, visite o Joind: https://joind.in/event/darkmira-tour-php-2016/sistemas-distribudos-e-php
Os videos com o curso completo podem ser encontrados em: https://osantana.me/curso-de-python-e-django
Tudo sobre Python, Django, carreira e empreendedorismo na minha newsletter quinzenal "O Melhor da Internet". ASSINE:
https://osantana.me/o-melhor-da-internet-newsletter/
Ce document vise à présenter la programmation fonctionnelle sous Scala.
Les points abordés sont le paradigme fonctionnel, fonction anonyme, fonction d’ordre supérieur, Clôture, fonction partielle, la récursivité, Curryfication. Chaque notion est accompagnée par des exemples.
Dans ce cours, on découvre comment lire et écrire des fichiers à l'aide de Python. Il est possible de créer des fichiers texte ou des fichiers binaires. Pour manipuler un fichier, il faut d'abord l'ouvrir, puis on peut faire les opérations et enfin on doit le refermer.
Slides da disciplina de Análise de Algoritmos, ministrada pelo Prof. Marcelo H. Carvalho no curso de Pós-Graduação em Ciência da Computação, FACOM - UFMS.
Esse material tem o objetivo de ser uma introdução as principais características da linguagem Python, tais como sintaxe básica, tipos de dados, operadores, estrutura condicional, estrutura de repetição e orientação a objetos. Após a introdução a linguagem, o Django é apresentado de maneira pratica, desenvolvendo um CRUD para exemplificar suas principais características e vantagens, esse CRUD é feito passo a passo e após seu termino é feito uma introdução básica aos recursos do Admin do Django.
Modelos de computação distribuída no Hadoop
O desenvolvimento de uma aplicação distribuída requer diversos conhecimentos para lidar com problemas como: particionamento de entrada, escalonamento da execução, comunicação entre as máquinas e falhas no cluster. Para que o desenvolvedor possa focar somente na aplicação que está sendo desenvolvida, diversos modelos para processar os dados distribuídos foram criados. Cada modelo tem suas características, pontos fracos e fortes, que os fazem apropriados para determinados tipos de aplicações. A apresentação irá abordar os temas: Hadoop 2/Map Reduce; Bulk Synchronous Parallel; Pregel; Dremel; Processamento de Stream; Próximas tecnologias.
Tiago Cardoso
Co-fundador e CTO da Zahpee.
Mestre em Ciência da Computação pela UFMG. Co-fundador e CTO da Zahpee, trabalha há mais de quatro anos no desenvolvimento de produtos para coleta, processamento e visualização de dados.
Palestra apresentada no Darkmira Tour BR 2016, fala sobre como conseguir processamento paralelo e distribuído utilizando PHP.
Código apresentado no GitHub: https://github.com/dianaarnos/darkmiratourbr-2016
Para avaliação da palestra, visite o Joind: https://joind.in/event/darkmira-tour-php-2016/sistemas-distribudos-e-php
Os videos com o curso completo podem ser encontrados em: https://osantana.me/curso-de-python-e-django
Tudo sobre Python, Django, carreira e empreendedorismo na minha newsletter quinzenal "O Melhor da Internet". ASSINE:
https://osantana.me/o-melhor-da-internet-newsletter/
Ce document vise à présenter la programmation fonctionnelle sous Scala.
Les points abordés sont le paradigme fonctionnel, fonction anonyme, fonction d’ordre supérieur, Clôture, fonction partielle, la récursivité, Curryfication. Chaque notion est accompagnée par des exemples.
Dans ce cours, on découvre comment lire et écrire des fichiers à l'aide de Python. Il est possible de créer des fichiers texte ou des fichiers binaires. Pour manipuler un fichier, il faut d'abord l'ouvrir, puis on peut faire les opérations et enfin on doit le refermer.
Slides da disciplina de Análise de Algoritmos, ministrada pelo Prof. Marcelo H. Carvalho no curso de Pós-Graduação em Ciência da Computação, FACOM - UFMS.
Esse material tem o objetivo de ser uma introdução as principais características da linguagem Python, tais como sintaxe básica, tipos de dados, operadores, estrutura condicional, estrutura de repetição e orientação a objetos. Após a introdução a linguagem, o Django é apresentado de maneira pratica, desenvolvendo um CRUD para exemplificar suas principais características e vantagens, esse CRUD é feito passo a passo e após seu termino é feito uma introdução básica aos recursos do Admin do Django.
Modelos de computação distribuída no Hadoop
O desenvolvimento de uma aplicação distribuída requer diversos conhecimentos para lidar com problemas como: particionamento de entrada, escalonamento da execução, comunicação entre as máquinas e falhas no cluster. Para que o desenvolvedor possa focar somente na aplicação que está sendo desenvolvida, diversos modelos para processar os dados distribuídos foram criados. Cada modelo tem suas características, pontos fracos e fortes, que os fazem apropriados para determinados tipos de aplicações. A apresentação irá abordar os temas: Hadoop 2/Map Reduce; Bulk Synchronous Parallel; Pregel; Dremel; Processamento de Stream; Próximas tecnologias.
Tiago Cardoso
Co-fundador e CTO da Zahpee.
Mestre em Ciência da Computação pela UFMG. Co-fundador e CTO da Zahpee, trabalha há mais de quatro anos no desenvolvimento de produtos para coleta, processamento e visualização de dados.
Aula da disciplina de Uso de dados espaciais para estudos ambientais. Universidade Federal do ABC, São Bernardo do Campo, fevereiro de 2020.
Gravação de aula disponível em: https://youtu.be/R3D2qlJSjVA
Base de dados disponível em: https://app.box.com/s/rlp75p8gvl1v363g1v4m6xbb4rdlz91y
Abordagem criativa sobre o ecossistema hadoop
No atual mundo captalista, M Bison, dono do maior e-commerce mundial chamado Shadaloo, decide analisar o perfil de todos os seus clientes; não apenas mostrando os dados comuns do BI, mas analisar também:
- Dados de TODOS os sistemas Legados
- Dados de Navegação
- SAC e Midias Sociais.
Dessa forma ele poderia:
- Criar mecanismo de ofertas personalizadas
- Retenção de clientes que realizam reclamações no SAC
- Identificar relação de entre reclamações no SAC e mídias sociais.
- Analisar fluxo de navegação e proporcionar navegação personalizada por tipo de clientes
Apache Foundation que tem como propósito fornecer uma implementação de código aberto do modelo de programação MapReduce de forma confiável e escalável. O Hadoop é projetado para ampliar o processamento de um único servidor em milhares de máquinas, onde cada uma das máquinas oferecem poder de processamento e armazenamento local. Esta ferramenta é utilizada para processamento em batch de grandes volumes de dados (Big Data). Atualmente, o Apache Hadoop é uma das ferramentas mais conhecidas para processamento distribuído, mas existem outras ferramentas similares que se integram ao Hadoop, como o Apache Spark, Apache Storm e dentre outros. Nesse slide você entenderá os conceitos básicos relacionados ao Hadoop, o paradigma de programação MapReduce e HDFS.
Implantação da ferramenta para manutenção de serviços "UFT Serviços" baseado ...Vinícius Barros
Apresentação da monografia na área de Gestão de TI e Engenharia de Software apresentado no semestre 2015/2 do curso de Ciência da Computação da Universidade Federal do Tocantins.
2. Sobre
Vinícius Aires Barros
Ciência da Computação 2016 - UFT
Mestrando em Ciência da Computação - ICMC USP
Laboratório de Sistemas Distribuídos e Programação Concorrente -
LaSDPC
Áreas de Interesse: IoT, Distributed Systems, Big Data e Data Science.
GitHub: @v4ires
Website: http://viniciusaires.me
E-mail: v4ires@gmail.com
4. “Big Data é definido como um
conjunto de dados estruturados ou
não estruturados que não puderam
ser percebidos, adquiridos,
gerenciados e processados pelos
modelos tradicionais de hardware e
software”.
5. Conceitos
● Grandes Volumes de Dados
● Programação de Alto Desempenho
(HPC)
● Dados Estruturados, Não
Estruturados e Semiestruturados
● Bancos de Dados SQL e NoSQL
● MapReduce
● Apache Hadoop, Spark, etc.
15. O que é o Apache Spark?
O Apache Spark é um software de código aberto
mantido pela Apache Foundation que tem como
propósito fornecer uma implementação livre e
melhorada do modelo de programação MapReduce.
16. Características
❏ Implementação em Scala
❏ Arquitetura Mestre Escravo (Master/Slave)
❏ Modelo de Programação MapReduce
❏ Resilient Distributed Dataset (RDD)
❏ Memória Principal (RAM)
❏ Processamento Distribuído
❏ Processamento em Tempo Real
❏ Escalável
❏ Tolerante a Falhas
❏ Integração com HDFS
17. O que não é?
❏ Linguagem de Programação
❏ Solução Definitiva
❏ Substituto do Apache Hadoop
22. Execução do Apache Spark
1. Acessem:
http://github.com/v4ires/caipyra-2
018-pyspark
2. Tenham o docker instalado
3. Executem o Container
4. Pronto :)
23. PySpark (Python + Spark)
● Interface de programação em
Python
● Py4J (Interface de integração
do Java com Python)
● Modo Iterativo de Programação
● Suporte a Python 2 e 3
● Integração com Jupyter
● Integração com bibliotecas
Python (Scipy, Matplotlib,
Seaborn...)
29. Map
A função de map é repetida em todas as linhas do RDD e gera um novo RDD como
saída. Usando a transformação map(), utilizamos qualquer função, e essa função é
aplicada a todos os elementos do RDD. Por exemplo, temos um RDD [1, 2, 3, 4, 5]
se aplicarmos “rdd.map(x => x + 2)”, será obtido o resultado (3, 4, 5, 6, 7).
30. FlatMap
Na função flatMap() para cada elemento de entrada temos muitos elementos em um
RDD de saída. O uso mais simples de flatMap() é dividir cada string de entrada em
palavras. Map e flatMap são semelhantes na maneira que eles pegam uma linha da
entrada RDD e aplicam uma função nessa linha. A principal diferença entre map() e
flatMap() é que a função map() retorna apenas um elemento, enquanto flatMap()
pode retornar uma lista de elementos.
31. Filter
A função RDD filter() retorna um novo RDD, contendo apenas os elementos que
atendem a um predicado. Por exemplo, suponha que o RDD contenha primeiro
cinco números naturais (1, 2, 3, 4 e 5) e o predicado é verificar os números pares.
O RDD resultante após aplicar a função filter() conterá apenas os números pares,
ou seja, 2 e 4.
32. GroupByKey
Quando usamos groupByKey() em um conjunto de dados de pares (K, V), os
dados são embaralhados de acordo com o valor da chave K em um outro RDD.
33. ReduceByKey
Quando usamos reduceByKey em um dataset (K, V), os pares na mesma
máquina com a mesma chave são combinados antes que os dados sejam
embaralhados.
34. Union
Com a função union(), obtemos a união de dois RDD em um novo RDD. A principal
regra dessa função é que os dois RDDs devem ser do mesmo tipo. Por exemplo, os
elementos do RDD1 são {“Spark”, “Spark”, “Hadoop”, “Flink”} e os do RDD2 são {“Big
data”, “Spark”, “Flink”}, portanto, o rdd1.union(rdd2) resultará nos seguintes
elementos {“Spark”, “Spark”, “Spark”, “Hadoop”, “Flink”, “Flink”, “Big Data”}.
35. SortByKey
Quando aplicamos a função sortByKey() em um conjunto de dados de pares
(K, V), os dados são classificados de acordo com a chave K em outro RDD.
37. Take N
A ação take(n) retorna n primeiros elementos do RDD. Por exemplo, considere o
RDD {1, 2, 3, 4, 5, 6} neste RDD “take(4)” dará resultado {1, 2, 3, 4}.
38. Top N
A ação top(n) retorna n últimos elementos do RDD. Por exemplo, considere o
RDD {1, 2, 3, 4, 5, 6} neste RDD “top(4)” dará resultado {6, 5, 4, 3}.
39. Count
A ação count() retorna o número de elementos no RDD. Por exemplo, o RDD
possui valores {1, 2, 3, 4, 6} neste RDD a função “count ()” irá retornar o valor 6.
40. Collect
A ação collect() é a operação comum e simples que retorna todo o conteúdo de
um RDD para um contexto de memória local. A ação collect() tem como
restrição a capacidade de memória local de armazenar todos dos dados
contidos em um RDD.
41. Reduce
A função reduce() pega grupos de elementos como entrada do RDD e, em
seguida, produz a saída do mesmo tipo. Diversos operadores podem ser
utilizados na operação de redução, por exemplo, adição, subtração,
multiplicação, divisão, dentre outros.
42. ForEach
Quando temos uma situação em que queremos aplicar a operação em cada
elemento do RDD, mas não deve retornar o valor para o driver. Neste caso, a
função foreach() é útil. Por exemplo, inserindo um registro no banco de dados.
44. K-Means
● Algoritmo de aprendizagem de
Máquina Não Supervisionado
● Algoritmo de Agrupamento ou
Clusterização
● Versão otimizada para uso de
programação paralela/concorrente
● Medida de Distância (Similaridade
de Dados)