O documento discute os desafios e soluções relacionados a Big Data. Apresenta o cenário atual de geração e armazenamento de dados, as características de Big Data (volume, velocidade e variedade), áreas de aplicação, tecnologias envolvidas no processamento e armazenamento de grandes volumes de dados e considerações sobre a adoção de soluções de Big Data.
3. CENÁRIO ATUAL
Indice
• Desafios
• Definição de Big Data
• Características: Volume, Velocidade, Variedade
• Utilidade
• Áreas de conhecimento
• Tecnologias
– Processamento
– Armazenamento
• Adoção
• Considerações finais
4. CENÁRIO ATUAL
Desafios
• Crescimento acelerado da quantidade de dados
– Coletados
– Sensores
– Satélites
– Logs (websites, ligações telefônicas, comércio
eletrônico)
– Criados
– Interações em redes sociais
– Videos
– Fotos
– Pesquisa científica
– Documentos na Web
5. CENÁRIO ATUAL
Desafios
• Capacidade per capita para armazenar dados
dobrou a cada 40 meses desde os anos 80
• Capacidade para trocar dados através de redes
de telecomunicações
– 1986: 281 petabytes (1015 bytes)
– 1993: 471 petabytes
– 2000: 2.2 hexabytes (1018 bytes)
– 2007: 65 hexabytes
– 2013: 667 hexabytes
6. CENÁRIO ATUAL
Desafios
• Em 2012, aproximadamente 2.5 hexabytes
(2.5x1018) de dados são criados diariamente
• Empresas norte-americanas com mais de 1000
empregados têm, em média, 235 terabytes (1012)
de dados armazenados
• Universo digital (quantidade de dados no mundo)
– 2010: >1 zetabyte (1021 bytes = 125 bilhões de iPods de
8Gb)
– 2012: 2.7 zetabytes
7. CENÁRIO ATUAL
Desafios
• Os quatro principais detectores do LHC (Large
Hadron Collider) produzem 40 terabytes (1012
bytes) por segundo durante experimentos
• Walmart processa mais de 1 milhão de
transações por hora
• Twitter
– 200 milhões de usuários
– 90 milhões de "tweets" diários
– Gera 8 terabytes de dados por dia (NYSE gera 1
terabyte diário)
8. CENÁRIO ATUAL
Desafios
• Motores Boeing
– 10 terabytes a cada 30 minutos
– Avião com 4 motores gera 640 terabytes de dados ao
cruzar o Atlântico
– 25.000 vôos diários
• Facebook
– 750 milhões de usuários ativos
– 40 bilhões de fotos
– 30 bilhões de itens de conteúdo gerados por mês
9. CENÁRIO ATUAL
Indice
• Desafios
• Definição de Big Data
• Características: Volume, Velocidade, Variedade
• Utilidade
• Áreas de conhecimento
• Tecnologias
– Processamento
– Armazenamento
• Adoção
• Considerações finais
10. BIG DATA
Definição
• Conjuntos de dados de tamanho e complexidade
tal que não podem ser gerenciados usando
ferramentas convencionais (e.g. RDBMS) dentro
de um prazo razoável de tempo
– Dificuldades: captura, armazenamento, pesquisa,
compartilhamento, análise e visualização dos dados
• Quando é "Big"?
– 2012: terabytes até petabytes
– Depende da capacidade de gerenciamento da organização
detentora dos dados
11. BIG DATA
Características
• Gartner definiu os desafios e oportunidades
associados a Big Data em 3 dimensões:
– Volume: a complexidade associada aos dados é causada
pela sua quantidade, tanto em dados tradicionais quanto
em novos tipos de dados
– Velocidade: envolve a rapidez com que os dados são
produzidos e precisam ser analisados
– Variedade: diz respeito aos diferentes tipos de
informação (tabular, hierárquica, vídeo, aúdio, fotos, e-
mails, logs, etc) que precisa ser processada
12. BIG DATA
Volume
• Principal atrativo de Big Data
– Ter mais dados é preferível a modelos melhores (?)
– Armazenamento escalável
– Consultas distribuídas
• Soluções
– Bancos de dados maciçamente paralelos
– BSP: Bulk Synchronous Processing
– MapReduce: Apache Hadoop
13. BIG DATA
Velocidade
• Velocidade com a qual os dados "entram" na
organização
• Cada vez mais relevante
– Exemplo: vendedores online que processam dados de
compra imediatamente e recomendam novas compras
– Você tomaria a decisão de atravesar uma estrada
baseado em dados de tráfego de 15 minutos atrás?
• Soluções
– Complex Event Processing
– Stream Processing
14. BIG DATA
Variedade
• Dados produzidos por fontes diferentes: redes
sociais, imagens, sensores, áudio, etc
– não estão prontos para serem armazenados/processados
• É necessário extrair informação relevante
– Exemplo: “sessionization” análise de logs de um
servidor e extração de dados relacionados a uma sessão
– Tipicamente implementado usando Hadoop
• Dados processados são usualmente armazenados
em BDs relacionais
– Alternativas: XML, Grafos, chave/valor, objetos
15. CENÁRIO ATUAL
Indice
• Desafios
• Definição de Big Data
• Características: Volume, Velocidade, Variedade
• Utilidade
• Áreas de conhecimento
• Tecnologias
– Processamento
– Armazenamento
• Adoção
• Considerações finais
16. BIG DATA
Utilidade
• Analítica
– Exemplo: influência de pares (peer influence) entre
consumidores através da análise de dados de compras,
redes sociais e geográficos
• Novos produtos
– Exemplo: Facebook desenvolveu um novo mecanismo de
anúncios publicitários combinando o comportamento de
usuários e seus amigos
• Caso famoso: a cadeia de lojas Target detectou a
gravidez de uma menina antes do pai dela saber
17. BIG DATA
Áreas de conhecimento
• Não é só coletar, precisa analisar e agir
– A/B testing
– Association rule learning
– Classification
– Pattern recognition
– Natural language processing
– Time series analysis
– Signal Processing
– Visualization
18. CENÁRIO ATUAL
Indice
• Desafios
• Definição de Big Data
• Características: Volume, Velocidade, Variedade
• Utilidade
• Áreas de conhecimento
• Tecnologias
– Processamento
– Armazenamento
• Adoção
• Considerações finais
19. BIG DATA
Tecnologias envolvidas
• Processamento
– Complex Event Processing
– Stream Processing
– BSP
– MapReduce (Hadoop)
• Armazenamento
– Database appliances
– BDs maciçamente paralelos
– BDs baseados em colunas
– BDs em memória
– BDs NoSQL
20. BIG DATA
Tecnologias envolvidas - Processamento
• Complex event processing
– Monitorar e analisar eventos
– Inferir eventos complexos
– Exemplo: detectado “sinos dobrando”, “homem de
fraque”, “mulher de branco” gerar evento “casamento”
– Automação, algorithmic trading
– Streambase, Websphere Business Events, Sybase ESP
21. BIG DATA
Tecnologias envolvidas - Processamento
• Stream processing
– Paradigma de programação relacionado ao SIMD
– Dado um conjunto de dados (stream), aplica-se a cada
elemento um conjunto de funções (kernel functions)
– As funções são comumente executadas em “pipeline”
– Recente popularização pelo uso de GPUs em computação
paralela convencional
– Processamento de imagens e video, algorithmic trading
– CUDA, Twitter Storm, IBM InfoSphere Streams, Yahoo S4
22. BIG DATA
Tecnologias envolvidas - Processamento
• BSP (Bulk Synchronous Parallel)
– Execução consiste em uma seqüência de "supersteps"
– Computação concorrente
– Comunicação (usualmente através de MPI)
– Sincronização de barreira
– Util para algoritmos complexos nos quais os
processadores precisam se comunicar eficientemente
– Simulação, dinâmica de fluidos
– BSPLib, MulticoreBSP
23. BIG DATA
Tecnologias envolvidas - Processamento
BSP (Bulk Synchronous Parallel)
Fonte: Wikipedia
24. BIG DATA
Tecnologias envolvidas - Processamento
• MapReduce
– Modelo de programação para processar conjuntos
grandes de dados
– Tipicamente implementado em clusters de computadores
– Map: um nó mestre divide a entrada em sub-problemas
menores e os passa aos trabalhadores, que resolvem
cada sub-problema
– Reduce: o nó mestre coleta as respostas aos sub-
problemas e as combina para gerar a resposta final
– Eficiente apenas para conjuntos de dados realmente
grandes
25. BIG DATA
Tecnologias envolvidas - Processamento
• Apache Hadoop
– Dois subprojetos
– MapReduce
– HDFS: sistema de arquivos distribuído
– Resolução de problemas dividida tipicamente em 3 etapas
– Carregar dados no HDFS
– Processá-los usando MapReduce
– Recuperar resultados do HDFS
– Escalável, flexível e tolerante a falhas
– O HDFS pode ser substituído por BDs
26. BIG DATA
Tecnologias envolvidas - Processamento
• Apache Hadoop
– Adequado para processamento batch
– Não é solução de banco de dados ou data warehousing
– Apache Hive: Data warehousing
– Pig: Linguagem de alto nível para criar programas
MapReduce
– Distribuições: IBM, Hortonworks, Cloudera, MapR
– Yahoo!: 100.000 CPUs em 40.000 servidores para
pesquisa Web e anúncios publicitários
– eBay: 20 petabytes para processamento analítico de
dados não estruturados
27. BIG DATA
Tecnologias envolvidas - Processamento
• Apache Hadoop
Fonte: http://www.information-management.com/issues/21_5/big-data-is-scaling-bi-and-analytics-10021093-1.html
28. BIG DATA
Tecnologias envolvidas - Processamento
Categoria Características Uso Tecnologias
Online Os dados são Financial trading, online Complex event
processados na medida gaming, e-commerce processing,
em que chegam Stream
processing
Batch Os dados são Back-office de bancos, Hadoop, BSP
acumulados e indexação de páginas
processados de uma web, processamento
única vez analítico de BDs
29. CENÁRIO ATUAL
Indice
• Desafios
• Definição de Big Data
• Características: Volume, Velocidade, Variedade
• Utilidade
• Áreas de conhecimento
• Tecnologias
– Processamento
– Armazenamento
• Adoção
• Considerações finais
30. BIG DATA
Tecnologias envolvidas - Armazenamento
• Bancos de dados maciçamente paralelos
– Baseados em clusters de servidores comuns
– "Shared nothing"
– Redes de conexão de alta velocidade
– Tabelas particionadas horizontalmente entre servidores
(sharding)
– Consultas executadas em todos os servidores
simultaneamente
– Apropriado para consultas analíticas complexas
– Aster Data’s nCluster, Greenplum Database, Vertica
31. BIG DATA
Tecnologias envolvidas - Armazenamento
• Database appliances
– Software, servidores, armazenamento e rede integrados
numa única caixa
– OLTP, OLAP, Data Warehousing
– Inclui software para provisionamento, gerenciamento e
diagnóstico de servidores
– Usualmente "pay as you grow"
– Oracle Exadata and Exalytics, SAP BW Accelerator e
HANA, IBM Neteeza, EMC Greenplum appliance
32. BIG DATA
Tecnologias envolvidas - Armazenamento
• Bancos de dados baseados em colunas
– Dados são armazenados por colunas, não por linhas como
nos sistemas relacionais tradicionais
– Vantajoso para operações que comparam um
determinado atributo em todas as linhas da tabela
– Dados de uma coluna são do mesmo tipo --> melhor
compressão
– Normalmente são usados em conjunto com sistemas
tradicionais baseados em linhas
– Tenbase, Sybase IQ, Vertica, Aster Data, Greenplum,
Microsoft SQL Server 2012
33. BIG DATA
Tecnologias envolvidas - Armazenamento
• Bancos de dados em memória
– Usam RAM para armazenar os dados
– Muito mais rápidos e previsíveis
– ACID
– Durability
– Checkpoints
– Transaction logs
– NVRAM
– Replicação com fail-over
– Oracle Berkeley DB, ParAccel, Polyhedra, TimesTen, Redis
34. BIG DATA
Tecnologias envolvidas - Armazenamento
• Bancos de dados NoSQL (Not Only SQL)
– Não usam SQL como linguagem de consulta
– Não garantem ACID (AID em um nó, eventualmente
consistente entre todos os nós)
– Distribuídos, eficientes e tolerantes a falhas
– Várias categorias
– Key/value stores
– Document databases
– Graph databases
– XML Databases
– Distributed peer stores
– Object stores
35. BIG DATA
Tecnologias envolvidas - Armazenamento
Categoria Uso Vantagens Desvantagens Exemplos
Key/value Cache de Pesquisas Dados sem Redis,
stores conteúdo (e.g. rápidas esquema Voldemort
carrinho de
compras)
Document Aplicações Toleram Desempenho pobre CouchDB,
databases orientadas a dados para pesquisas, não MongoDB
documentos incompletos tem linguagem de
(e.g. Curricula consulta padrão
vitae)
Graph Redes sociais Performance Precisa percorrer o Neo4J,
databases em grafo inteiro para InfoGrid,
algoritmos chegar numa InfiniteGraph,
para grafos resposta definitiva. Pregel
Não são fáceis de
colocar em clusters.
36. BIG DATA
Tecnologias envolvidas - Armazenamento
Categoria Uso Vantagens Desvantagens Exemplos
XML Publishing Mecanismos Desempenho, Exist,
Databases de pesquisa segurança MarkLogic
maduros,
validação de
esquema XML
Distributed Sistemas de Desempenho, API de baixo nível Cassandra,
peer stores arquivos tolerância a HBase
distribuídos falhas,
escalabilidade
Object Biologia Fácil de Consultas e Oracle
stores molecular, integrar com updates em batch Coherence,
telecomunicações programas limitados db4o
OO, tecnologia
madura, ACID
com baixa
latência
37. CENÁRIO ATUAL
Indice
• Desafios
• Definição de Big Data
• Características: Volume, Velocidade, Variedade
• Utilidade
• Áreas de conhecimento
• Tecnologias
– Processamento
– Armazenamento
• Adoção
• Considerações finais
38. BIG DATA
Adoção
• Gartner: Big Data é uma das 10 tecnologias
estratégicas para 2012
• GE: investimento de 1 bilhão de dólares em
software de gerenciamento de dados
– novo HQ global
– Big data, customer experience and predictive analytics
• Oracle, IBM, Microsoft, SAP e HP: mais de 15
bilhões em empresas de gerenciamento de dados
• Valor da indústria estimado em 100 bilhões de
dólares
– crescimento de 10% ao ano, o dobro do ritmo do
software como um todo
39. BIG DATA
Considerações
• Big data: o fim da teoria?
– contexto social, econômico e político dos dados
– Mensagens do Twitter sobre as revoltas em Londres
– 1/3 dos usuários de internet na Inglaterra tem conta
no Twitter
– subconjunto deles produz a maior parte do conteúdo
– apenas 1% usa geo-localização
– Dados representam apenas uma parte da realidade
– É necessário escolher amostras representativas
– dados distorcidos podem amplificar o impacto de uma
minoria
– Big Data --> Big Judgement!
40. FIM
eduardo.huerta@sparsi.com
fabiano.lucchese@sparsi.com