sparsi big data
TRANSCRIPT
Big Data: Desafios e Soluções
CENÁRIO ATUAL
• Desafios• Definição de Big Data• Características: Volume, Velocidade, Variedade• Utilidade• Áreas de conhecimento • Tecnologias
– Processamento– Armazenamento
• Adoção• Considerações finais
Indice
CENÁRIO ATUAL
• 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
Desafios
CENÁRIO ATUAL
• 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
Desafios
CENÁRIO ATUAL
• 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
Desafios
CENÁRIO ATUAL
• 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)
Desafios
CENÁRIO ATUAL
• 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
Desafios
CENÁRIO ATUAL
• Desafios• Definição de Big Data• Características: Volume, Velocidade, Variedade• Utilidade• Áreas de conhecimento • Tecnologias
– Processamento– Armazenamento
• Adoção• Considerações finais
Indice
BIG DATA
• 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
Definição
BIG DATA
• 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
Características
BIG DATA
• 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
Volume
BIG DATA
• 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
Velocidade
BIG DATA
• 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
Variedade
CENÁRIO ATUAL
• Desafios• Definição de Big Data• Características: Volume, Velocidade, Variedade• Utilidade• Áreas de conhecimento • Tecnologias
– Processamento– Armazenamento
• Adoção• Considerações finais
Indice
BIG DATA
• 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
Utilidade
BIG DATA
• 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
Áreas de conhecimento
CENÁRIO ATUAL
• Desafios• Definição de Big Data• Características: Volume, Velocidade, Variedade• Utilidade• Áreas de conhecimento • Tecnologias
– Processamento– Armazenamento
• Adoção• Considerações finais
Indice
BIG DATA
• 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
Tecnologias envolvidas
BIG DATA
• 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
Tecnologias envolvidas - Processamento
BIG DATA
• 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
Tecnologias envolvidas - Processamento
BIG DATA
• 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
Tecnologias envolvidas - Processamento
BIG DATA
Tecnologias envolvidas - Processamento
Fonte: Wikipedia
BSP (Bulk Synchronous Parallel)
BIG DATA
• 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
Tecnologias envolvidas - Processamento
BIG DATA
• 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
Tecnologias envolvidas - Processamento
BIG DATA
• 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
Tecnologias envolvidas - Processamento
BIG DATA
• Apache HadoopTecnologias envolvidas - Processamento
Fonte: http://www.information-management.com/issues/21_5/big-data-is-scaling-bi-and-analytics-10021093-1.html
BIG DATA
Tecnologias envolvidas - ProcessamentoCategoria Características Uso Tecnologias
Online Os dados são processados na medida em que chegam
Financial trading, online gaming, e-commerce
Complex event processing, Stream processing
Batch Os dados são acumulados e processados de uma única vez
Back-office de bancos, indexação de páginas web, processamento analítico de BDs
Hadoop, BSP
CENÁRIO ATUAL
• Desafios• Definição de Big Data• Características: Volume, Velocidade, Variedade• Utilidade• Áreas de conhecimento • Tecnologias
– Processamento– Armazenamento
• Adoção• Considerações finais
Indice
BIG DATA
• 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
Tecnologias envolvidas - Armazenamento
BIG DATA
• 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
Tecnologias envolvidas - Armazenamento
BIG DATA
• 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
Tecnologias envolvidas - Armazenamento
BIG DATA
• 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
Tecnologias envolvidas - Armazenamento
BIG DATA
• 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
Tecnologias envolvidas - Armazenamento
BIG DATA
Tecnologias envolvidas - ArmazenamentoCategoria Uso Vantagens Desvantagens Exemplos
Key/value stores
Cache de conteúdo (e.g. carrinho de compras)
Pesquisas rápidas
Dados sem esquema
Redis, Voldemort
Document databases
Aplicações orientadas a documentos (e.g. Curricula vitae)
Toleram dados incompletos
Desempenho pobre para pesquisas, não tem linguagem de consulta padrão
CouchDB, MongoDB
Graph databases
Redes sociais Performance em algoritmos para grafos
Precisa percorrer o grafo inteiro para chegar numa resposta definitiva. Não são fáceis de colocar em clusters.
Neo4J, InfoGrid, InfiniteGraph, Pregel
BIG DATA
Tecnologias envolvidas - ArmazenamentoCategoria Uso Vantagens Desvantagens Exemplos
XML Databases
Publishing Mecanismos de pesquisa maduros, validação de esquema XML
Desempenho, segurança
Exist, MarkLogic
Distributed peer stores
Sistemas de arquivos distribuídos
Desempenho, tolerância a falhas, escalabilidade
API de baixo nível Cassandra, HBase
Object stores
Biologia molecular, telecomunicações
Fácil de integrar com programas OO, tecnologia madura, ACID com baixa latência
Consultas e updates em batch limitados
Oracle Coherence, db4o
CENÁRIO ATUAL
• Desafios• Definição de Big Data• Características: Volume, Velocidade, Variedade• Utilidade• Áreas de conhecimento • Tecnologias
– Processamento– Armazenamento
• Adoção• Considerações finais
Indice
BIG DATA
• 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
Adoção
BIG DATA
• 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!
Considerações
FIM
[email protected]@sparsi.com