Aula Magna Sobre BI & BigData na UNIA, Luanda - Angola
Bigdata gameverse
1. Big Data e Sistemas de
Recomendação
12/09/2013
Joel Pinho Lucas
1
Saturday, September 14, 13
2. Agenda
•
•
•
•
•
•
•
•
Who am I?
O que é Big Data?
Introdução ao NoSQL
Big Data no mercado de trabalho
Visão geral de MongoDB e Hadoop
Sistemas de Recomendação
Gameverse
Como entrar no mundo e mercado de Big Data?
2
Saturday, September 14, 13
4. Lean Start-up vs. Pesquisa/Ciência?
Scientific Thinking
vs
4
Saturday, September 14, 13
5. Big Data
•
“Termo usado para descrever o crescimento, a disponibilidade e o uso
exponencial de informações estruturadas e não estruturadas”. SAS Business Analytics software
5
Saturday, September 14, 13
6. Big Data - Aplicações
✓ Medicina
✓ Mercado Financeiro
✓ Detecção de Fraude
✓ Análise de Sentimento
✓ Marketing
✓ Sistemas de Recomendação
6
Saturday, September 14, 13
7. Big Data - Volume
O volume de informação no mundo ocuparia o equivalente a 295 trilhões de megabytes
(University of Southern California - 2011)
A quantidade de informação no mundo dobra a
cada 20 meses (Breese, et. al. - 2010)
"The New York Times" tem mais conteúdo do que um
inglês médio teria acesso em toda sua vida no início do
século XVII
7
Saturday, September 14, 13
8. Big Data - Variedade
8
Saturday, September 14, 13
9. Big Data - Velocidade
• Análise de dados:
✓ Processamento em “batch”
✓ Processamento em tempo real
9
Saturday, September 14, 13
10. Big Data - 3Vs
Fonte: http://www.datasciencecentral.com
10
Saturday, September 14, 13
11. Big Data - Etapas
Coleta
{
Processamento
Análise / Buscas
Visualização
11
Saturday, September 14, 13
12. Big Data - Áreas
✓Banco de Dados
✓Text-Mining
✓Infra-Estrutura / DevOps
✓Aprendizado de Máquina (Machine Learning)
✓Estatística
✓Data Analytics
✓Visualização
12
Saturday, September 14, 13
13. NoSQL
•
“Termo genérico para uma classe definida de banco de dados
não-relacionais que rompe uma longa história de banco de
dados relacionais com propriedades ACID” - (Wikipedia, 2013)
?
?
?
?
13
Saturday, September 14, 13
16. NoSQL - Teorema CAP
•
“Estabelece que é impossível para um sistema distribuído garantir
simultaneamente disponibilidade, consistência e tolerância a
falhas” (Wikipedia, 2013)
16
Saturday, September 14, 13
17. NoSQL
Atomicidade - A
Consistência - C
Isolamento - I
Durabilidade - D
B
A
S
E
vs.
RDBMS
NoSQL
17
Saturday, September 14, 13
- Basicamente Disponível
(Basically Available)
- Estado Suave
- Consistência Eventual
18. NoSQL
✓Indicado para aplicações com grandes volumes de
dados
✓Não
possui esquema (schema) rigoroso como
RDBMS
✓Não exige a integridade dos dados
✓Não indicado para transações sensíveis
18
Saturday, September 14, 13
19. Big Data/NoSQL no Mercado
•
“80% das informações que a companhia possui estão
completamente desestruturadas” (Jeff Jones, IBM - 2011)
•
“Computadores ficam mais rápidos e empresas, mais
burras” (Jeff Jones, IBM - 2011)
19
Saturday, September 14, 13
20. Big Data/NoSQL no Mercado
•
“Até 2015 serão criados 4.4 milhões de empregos
para suportar as iniciativas de Big Data (1.9 milhões
nos EUA)” (Gartner, Inc. - 2012)
•
“A falta de profissionais de TI no Brasil será de 800 mil postos
em 2014” (FGV - Fundação Getúlio Vargas)
20
Saturday, September 14, 13
26. Sistemas de Recomendação
• Cenário em E-Commerce:
A “explosão
✓quantidade deda informação” resultou em uma enorme
produtos ao alcance do usuário
✓Dificuldade na escolha para compra de produtos
✓Falta de personalização
✓Email / SPAM
26
Saturday, September 14, 13
27. Sistemas de Recomendação
“Se tenho 3 milhões de clientes na Web,
tenho de ter 3 milhões de lojas on-line” Jeff
Bezos, CEO - Amazon.com
•
“Combina várias técnicas computacionais para selecionar itens
personalizados com base nos interesses dos usuários e conforme o
contexto no qual estão inseridos” (Wikipedia)
•
Modelo de aprendizagem focado no perfil de usuário (predictive analytics)
e não num sumário geral dos dados (BI)
27
Saturday, September 14, 13
28. Sistemas de Recomendação
✓Métodos baseados em Conteúdo:
✓Filtragem Colaborativa:
‣
‣
Baseada em Usuário
Baseada em Item
28
Saturday, September 14, 13
31. Sistemas de Recomendação
Figura: Recomendação baseada em Item - Filtragem Colaborativa (Amazon.com,)
31
Saturday, September 14, 13
32. Sistemas de Recomendação
Figura: Recomendação baseada em Usuário - Filtragem Colaborativa (Netflix.com)
32
Saturday, September 14, 13
33. Tecnologias - MongoDB
•
•
•
•
•
Banco de dados Orientado a Documento
Trabalha com o formato BSON (Binary JSON)
Schema-free
Escalabilidade horizontal facilitada
Linguagem rica para consulta
33
Saturday, September 14, 13
36. Tecnologias - MongoDB
RDBMS
Base de Dados
Tabela
Registro
Atributo
Índice
Join
Chave Estrangeira
MongoDB
Base de Dados
Coleção
Documento
Chave-valor
Índice
Embedded doc
Referencia
36
Saturday, September 14, 13
37. Tecnologias - MongoDB
post
- title
- content
- status
- create_time
- update_time
- author_name
vs.
Comment[ ]
- content
- status
- create_time
- author_name
- email
- url
Tags[ ]
Relacional
NoSQL
37
Saturday, September 14, 13
user
username
password
salt
email
profile
39. Tecnologias - MongoDB
Sharding (Escalabilidade Horizontal)
✓ Deploy:
1) Definir os servidores: host
2) Disparar o início de cada “shard”: sh.addShard(host)
3) Escolher uma “shard key”
4) Habilitar sharding na collection: sh.shardCollection("pessoas", {nome:1})
39
Saturday, September 14, 13
40. Tecnologias - MongoDB
• Características:
✓Esquema ou Esquema Flexível
✓Escalabilidade Horizontal
✓Suporte nativo a Replicação
✓Consistência Eventual
40
Saturday, September 14, 13
41. Tecnologias - MongoDB
Suporte a Alta Disponibilidade - Replicação
✓ Deploy:
1) Iniciar o “replica set”: rs.initiate()
2) Definir os servidores: host
3) Disparar cada réplica: rs.add(host)
41
Saturday, September 14, 13
42. Tecnologias - Hadoop
•
Framework baseado em MapReduce mantido em código
aberto pela Apache
•
Foi concebido a partir dos papers de MapReduce e
GoogleFS (GFS) do Google
•
Usado em pesquisa (e produção) no Yahoo, Facebook e
Microsoft Bing
•
Promove escalabilidade horizontal em “hardware de
comodity”
42
Saturday, September 14, 13
47. Gameverse - Desafios
• Pontencial para crescimento exponencial de
usuários
• Falsos Positivos x Falsos Negativos
• Domínio de games para recomendação
• 128,000 games na AppStore
• Dados fornecidos/captados do iTunes
47
Saturday, September 14, 13
48. Gameverse - Desafios
•
Dispersão de dados (sparsity): usuários conseguem
avaliar (rating) em média1% dos itens disponíveis
•
•
•
Escalabilidade
Ovelha Negra
Primeiro Rating (early-rater)
48
Saturday, September 14, 13
51. “É complexo definir similaridade, mas…
você sabe quando você a vê.” (Dr. E. Keogh)
51
Saturday, September 14, 13
52. Como entrar no mundo de Big Data?
✓Cursos online
✓Blogs
✓“Hands On”
✓Eventos
52
Saturday, September 14, 13
53. Como entrar no mundo de Big Data?
✓Coursera (http://www.coursera.org):
• Introduction to Data Science
• Recommender Systems
• Machine Learning
MongoDB University:
✓https://education.mongodb.com/
Amazon EMR Training:
✓http://aws.amazon.com/elasticmapreduce/training/
53
Saturday, September 14, 13
54. Como entrar no mundo de Big Data?
✓Cursos online
✓Blogs
✓“Hands On”
✓Eventos
54
Saturday, September 14, 13
55. Como entrar no mundo de Big Data?
✓Gigaom: http://gigaom.com/channel/data/
✓Netflix Tech Blog: http://techblog.netflix.com/
GroupLens - University of
✓http://www.grouplens.org/Minnesota, EUA:
55
Saturday, September 14, 13
56. Como entrar no mundo de Big Data?
✓Cursos online
✓Blogs
✓“Hands On”
✓Eventos
56
Saturday, September 14, 13
57. Como entrar no mundo de Big Data?
✓ Weka Machine Learning:
http://www.cs.waikato.ac.nz/ml/weka/
✓ Amazon Public datasets:
http://aws.amazon.com/publicdatasets/
✓ GroupLens Public Data Sets:
http://www.grouplens.org/
✓ Tableau:
http://www.tableausoftware.com
57
Saturday, September 14, 13
58. Como entrar no mundo de Big Data?
58
Saturday, September 14, 13
59. Como entrar no mundo de Big Data?
✓Cursos online
✓Blogs
✓“Hands On”
✓Eventos
59
Saturday, September 14, 13
60. Como entrar no mundo de Big Data?
✓KDnuggets: www.kdnuggets.com
✓Meetup.com:
‣ São Paulo Hadoop Users Group
‣ São Paulo MongoDB User Group
60
Saturday, September 14, 13
61. Perguntas - Contato
‣ Linkedin: http://br.linkedin.com/in/joelplucas/
‣ Email: joel.lucas@mobjoygames.com
‣ Oportunidades na Mobjoy:
start@mobjoygames.com
61
Saturday, September 14, 13