Transcript

ESTADO DE MATO GROSSO

SECRETARIA DE ESTADO DE CIÊNCIAS, TECNOLOGIA E

EDUCAÇÃO SUPERIOR

UNIVERSIDADE DO ESTADO DE MATO GROSSO

FACULDADE DE CIÊNCIAS EXATAS

CAMPUS UNIVERSITÁRIO DE BARRA DO BUGRES

DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO

FELIPE ARGENTON PEREIRA

EXPLOSÃO DOS DADOS E O CONCEITO DE ANÁLISE DE DADOS

RELACIONADOS PARA GERAÇÃO DE INFORMAÇÕES (BIG DATA)

BARRA DO BUGRES – MT

2013

FELIPE ARGENTON PEREIRA

EXPLOSÃO DOS DADOS E O CONCEITO DE ANÁLISE DE DADOS

RELACIONADOS PARA GERAÇÃO DE INFORMAÇÕES (BIG DATA)

Monografia apresentada ao Departamento

de Ciência da Computação, da

Universidade do Estado do Mato Grosso,

Campus Universitário Dep. Estadual Rene

Barbour, como requisito para a obtenção do

título de Bacharel em Ciência da

Computação sob orientação do Prof. MSc.

Luciano Zamperetti Wolski.

BARRA DO BUGRES

2013

FELIPE ARGENTON PEREIRA

EXPLOSÃO DOS DADOS E O CONCEITO DE ANÁLISE DE DADOS

RELACIONADOS PARA GERAÇÃO DE INFORMAÇÕES (BIG DATA)

Banca Examinadora

____________________________________________

Prof. MSc. Luciano Zamperetti Wolski

Orientador

____________________________________________

Prof. MSc. Luciano Barco

Convidado

____________________________________________

Prof. Esp. Alexandre Berndt

Indicado pelo Departamento

Barra do Bugres/MT, __ de Dezembro de 2013

DEDICATÓRIA

Dedico este trabalho primeiramente à Deus, que sabe de todas as coisas e aos meus pais Nelson

Pereira e Sandra Mara Pereira que fizeram tudo para minha formação e tornaram possível esta etapa da

minha vida. Também dedico este trabalho à todas as pessoas que amam tecnologia e que desejam fazer

do mundo um lugar melhor.

AGRADECIMENTOS

Agradeço primeiramente a Deus que me permitiu completar mais esta etapa da minha

vida, e que tem me abençoado com sabedoria.

Agradeço a minha família por me darem suporte e motivação a continuar, mesmo nos

momentos de dificuldade, eles estiveram lá, garantindo minha formação.

Agradeço também a todos os meus amigos, Marlon A. V. de Lima, Diego Lima, Anna

Letícia, Marcell Duarte, Lizandra Carla, Joice M. Derlan, Arilda Riboski e muitos outros que

me acompanharam e me ajudaram neste período. Agradecimento especial ao professor e

orientador Luciano Z. Wolski e professora Raquel S. V. Coelho, que muito me auxiliou neste

projeto.

RESUMO

O objetivo deste presente trabalho é apresentar inicialmente a evolução da tecnologia e

dos dados que ocorreram nos últimos cinco anos, mostrando o salto tecnológico criado pela

polêmica Web 2.0, pesquisas e previsões em relação ao crescimento dos dados e como

surgiram as redes sociais, gerando assim um aumento dos dispositivos móveis e novos tipos

de dados desestruturados. Esta monografia apresenta o que é o Big Data, onde o mesmo é um

conceito da análise de dados relacionados na web para geração de valor, quais são seus

aspectos, ciclos e arquitetura de gerenciamento, exemplificando seu funcionamento, quais os

conceitos necessários e tecnologias disponíveis para sua aplicação na nuvem, e alguns

serviços oferecidos para dar suporte ao Big Data como armazenamento e gerenciamento dos

dados. Para finalizar este trabalho, é feita a apresentação de algumas ferramentas mais

utilizadas no ambiente tecnológico do Big Data e alguns exemplos de aplicação deste conceito

no meio organizacional apresentando seus benefícios.

Palavras-chave: Explosão de dados, NoSQL, Big Data, Cloud Computing.

ABSTRACT

This present college paper has the objective initially to show the technology and data

evolution that occurred in the last five years showing the technological leap created by

controversy Web 2.0, researchs and forecasts regarding data growth, how social networks

have emerged thus generating an increase of mobile devices and new types of unstructured

data. This paper presents what is Big Data, where it’s a concept of analysis of related data on

the web to creation of value, what are their aspects, cycles and management architecture,

exemplifying its operation, which the necessary concepts and technologies available for your

application in the cloud, and some services offered to support Big Data as storage and data

management. To conclude this work, is made the presentation of some of the most used tools

in the technological environment of the Big Data and some application examples of this

concept in the organizational environment showcasing its benefits.

Keywords: Data Explosion, NoSQL, Big Data, Cloud Computing.

LISTA DE FIGURAS

Figura 1 – Ciclo de gerenciamento do Big Data ........................................................... 19

Figura 2 – Arquitetura do Big Data .............................................................................. 20

Figura 3 – Típico ambiente de virtualização ................................................................ 28

SUMÁRIO

INTRODUÇÃO ................................................................................................................................................ 10

CAPÍTULO I ..................................................................................................................................................... 12

1 EXPLOSÃO DOS DADOS ................................................................................................................ 12

1.1 Pesquisas e previsões ............................................................................................................................. 14

1.2 Mídias sociais .......................................................................................................................................... 15

1.3 Dados desestruturados ......................................................................................................................... 15

1.4 NoSQL ..................................................................................................................................................... 16

1.5 Marketing Social .................................................................................................................................... 17

CAPITULO II ................................................................................................................................................... 18

2 ANÁLISE DE DADOS RELACIONADOS PARA GERAÇÃO DE INFORMAÇÕES ... 18

2.1 Os três vês ................................................................................................................................................ 18

2.2 Ciclo de gerenciamento ........................................................................................................................ 19

2.3 Arquitetura de gerenciamento ........................................................................................................... 20

2.3.1 Interfaces e feeds ..................................................................................................................................... 21

2.3.2 Infraestrutura Física Redundante ....................................................................................................... 21

2.3.3 Infraestrutura de segurança ................................................................................................................. 22

2.3.4 Banco de Dados operacionais ............................................................................................................... 23

2.3.5 Organizar Banco de Dados e ferramentas ......................................................................................... 24

2.3.6 Análises de Data Warehouses e Data Marts ...................................................................................... 24

2.3.7 Analytics (análise de Big Data) ............................................................................................................. 25

2.3.8 Aplicações de Big Data .......................................................................................................................... 26

2.4 Virtualização ........................................................................................................................................... 27

2.4.1 Virtualização de servidores .................................................................................................................... 29

2.4.2 Virtualização da infraestrutura de aplicação ..................................................................................... 29

2.4.3 Virtualização do processador ................................................................................................................ 30

2.4.4 Virtualização de dados e armazenamento .......................................................................................... 30

2.5 Abstração e virtualização ..................................................................................................................... 31

2.6 Implementando virtualização para trabalhar com Big Data ...................................................... 31

2.7 Cloud Computing (Computação em Nuvem) ................................................................................. 31

2.7.1 Modelos de Cloud Computing .............................................................................................................. 32

2.7.1.1 Nuvem pública ............................................................................................................................... 32

2.7.1.2 Nuvem privada .............................................................................................................................. 32

2.7.2 Características da Cloud importantes para o ecossistema de Big Data.......................................... 33

2.7.3 Big Data na Cloud Computing ............................................................................................................. 34

2.8 Produtos de Cloud Computing para Big Data no mercado ......................................................... 35

CAPÍTULO III ................................................................................................................................................. 37

3 FERRAMENTAS E CASOS DE USO DE BIG DATA .............................................................. 37

3.1 MapReduce ............................................................................................................................................. 37

3.2 Hadoop ..................................................................................................................................................... 38

3.3 Hive ........................................................................................................................................................... 38

3.4 MongoDB ................................................................................................................................................ 38

3.5 Pig...............................................................................................................................................................39

3.6 Casos de Uso de Big Data ..................................................................................................................... 40

CONSIDERAÇÕES FINAIS ........................................................................................................................ 42

REFERÊNCIAS BIBLIOGRÁFICAS ....................................................................................................... 43

10

INTRODUÇÃO

Atualmente estamos cercados de uma crescente onda de informações na web que são

veiculadas pelas mídias sociais, e-commerce, aplicativos e dispositivos móveis. Essas

informações são geradas através da atividade de usuários comuns que utilizam os blogs,

fóruns de discussões, redes sociais como Facebook, Twitter, Instagram, Tumblr, Flickr,

Foursquare, Linkedin, Google+ e várias outras.

Segundo uma pesquisa da IBM (International Business Machines), feita em janeiro de

2012 mostra que diariamente, nós criamos 2.5 quintilhões de bytes de dados, tanto que 90%

dos dados no mundo de hoje foram criados nos últimos dois anos. E conforme as previsões, só

tendem a aumentar com a “Internet das coisas”.

As grandes corporações descobriram cedo o potencial do Big Data, como é conhecido

hoje, e o que ele pode oferecer. Segundo Hurwitz et al.

O Big Data está se tornando uma das mais importantes tendências tecnológicas que

tem potencial para mudar dramaticamente a maneira como as organizações usam

informação para melhorar a experiência do cliente e transformar seus modelos de

negócios (2012, p. 01, tradução nossa).

As informações geradas pelas mídias sociais são dados totalmente distribuídos, de

vários formatos como textos, imagens, vídeos, e-mails, planilhas, informações de e-

commerce, dados de sensores, entre outros. Sendo assim, não possuem uma estrutura

definida, dificultando na solução de softwares para análise dos dados coletados. Deste modo,

muitas empresas tem encontrado dificuldades em utilizar o Big Data em benefício dos

negócios, e com a falta de conhecimento para uma melhor compreensão, não acreditam que

seja um bom investimento.

Este estudo, a partir de uma pesquisa bibliográfica, apresenta o surgimento dos dados

desestruturados, o conceito de Big Data, qual o seu ciclo de processamento e arquitetura de

gerenciamento, e algumas tecnologias disponíveis que oferecem suporte para sua análise.

Desta maneira, este estudo está organizado em três capítulos. No capítulo I é

apresentado um breve histórico da explosão dos dados e consequentemente surgimento dos

dados desestruturados.

No capítulo II é descrito o conceito de Big Data, apresentado seu ciclo e arquitetura de

gerenciamento e introduzido a virtualização e Cloud Computing com enfoque no Big Data,

concluindo com a apresentação de alguns produtos para Big Data no ambiente de nuvem.

11

O último capítulo apresenta algumas ferramentas para captura, organização, integração

e análise do Big Data e concluindo com alguns exemplos de empresas que já aplicaram e

utilizam Big Data

12

CAPÍTULO I

1 EXPLOSÃO DOS DADOS

Após o salto tecnológico da Web 2.01 em meados de 2005 gerar grande polêmica e um

enorme crescimento dos pontos de acesso à Internet, também trouxe grandes mudanças em

relação a web. Agora a web é dominada por conteúdo gerado pelos usuários, contrário a web

anterior, onde o conteúdo era de maior parte de empresas e instituições de ensino. Blogs e

conteúdos dinâmicos como Wikipédia tomavam espaço, sites e aplicativos online de

compartilhamento de dados surgiam, conteúdo das páginas eram compartilhados pelos

agregadores de conteúdo (RSS) e as mídias sociais tomavam forma caminhando em direção a

nova era da informação. Uma das redes sociais que mais teve sucesso foi o The facebook2,

criado por Mark Zuckerberg enquanto estudava na universidade de Harvard, em 2004

(ZOUAIN, 2006).

Com esta mudança na Internet, muitas empresas viram a oportunidade de utilizar esta

ferramenta para o comércio online, indústrias foram criadas para venda de equipamentos de

rede e empresas de telefonia ampliaram suas vendas. A Internet começa a caminhar com seus

próprios pés, e se torna uma plataforma. Algumas tarefas antes feitas apenas por programas

instalados nas máquinas, agora podem ser feitas através do navegador na Internet. E como

havia muito no que evoluir, comunidades de desenvolvedores começaram a surgir e empregar

a criação de softwares de códigos aberto, tendo como base a plataforma web.

Neste período, a quantidade de dados gerados na web ainda era muito inferior se

comparada com a dos dias atuais. Ao fim de 2005 estávamos saindo de uma crise financeira

mundial (MATESCO; SCHENINI, 2009), o que não interrompeu o crescimento da

informação digital, que teve um aumento significativo em relação ao comércio eletrônico,

mais pontos de acesso nas estações de trabalho, residências e também através dos notebooks,

que ofereciam acesso à Internet por conexão wi-fi.

A evolução dos dispositivos móveis trouxeram toda a tecnologia dos computadores

para os celulares, onde surgiram os conhecidos smartphones. Estes aparelhos aumentaram

1Termo cunhado por Dale Dougherty em 2004 se referindo a nova geração de websites, onde escreveu um artigo

intitulado: “What is Web 2.0: Design Patterns and Business Models for the Next Generation of Software”. 2Kiss, 2012, tradução nossa.

13

significativamente o tráfego de informações e número de usuários, causando um crescimento

nas redes 3G, que fornece transmissão por voz e dados para longas distâncias.

Uma outra tecnologia emergente vem ganhando espaço no contexto de

armazenamento de dados. A Cloud Computing (Computação em nuvem) são servidores que

fornecem armazenamento de dados, compartilhamento, gerenciamento remoto dos dados e

aplicações que rodam diretamente da web. Umas das primeiras empresas que utilizaram esta

tecnologia foi a Amazon, lançando a Amazon Web Service (AWS) que fornece até hoje

recursos computacionais de armazenamento e escalabilidade. Outra empresa que despontou

nesta área foi a Google, fornecendo além do Gmail diversos outros serviços. Com a constante

demanda de serviços, a Cloud Computing começou a tomar grandes proporções, e muitas

empresas surgiram para suprir as necessidades, oferecendo vários serviços, além dos serviços

para os dispositivos móveis (INPI, INSTITUTO NACIONAL DA PROPRIEDADE

INDUSTRIAL, 2011).

Em janeiro de 2010 a empresa Apple anuncia o iPad, um dispositivo móvel do

tamanho com um formato retangular de 9,7 polegadas, onde marcou a indústria de

dispositivos móveis. A partir deste ano, diversas outras empresas embarcaram na onda dos

tablets, fazendo com que o número de usuários destes dispositivos aumentasse

vertiginosamente ultrapassando assim o número de usuários de desktops e notebooks.

Com a busca dos usuários por conteúdos mais interativos, uma rede social começara a

se destacar das demais. Após seu surgimento e com o tempo, Thefacebook começou a ganhar

muitos adeptos e se expandir para fora das universidades. Sua fama fez com que seu nome

fosse alterado, tirando o The, e ficando apenas Facebook. Com o passar dos anos mais e mais

pessoas começaram a utilizar seus serviços, e em 2012 atingiu uma marca de 1 bilhão3 de

usuários ativos. Outras redes sociais como o Flickr, Google+, Twitter, Orkut, Last.fm,

Linkedin, Youtube, Foursquare, Myspace, Instagram entre vários outros se tornaram

conhecidas mundialmente, gerando grande quantidade de informações na web, o que tem sido

de grande importância para os usuários e empresas.

O crescimento das mídias sociais fizeram com que a Internet se tornasse o meio de

comunicação mais utilizado do mundo, superando todos os outros, acarretando em

exponencial aumento dos servidores para armazenagem de dados, crescente número de

dispositivos móveis e do marketing na web. Os analistas preveem um contínuo crescimento

em grandes proporções da área tecnológica, sem previsão de queda.

3Fowler, 2012, tradução nossa.

14

1.1 Pesquisas e previsões

Há dez anos atrás, ninguém imaginaria que a Internet iria crescer em tão grandes

proporções como tem ocorrido hoje. Em 2012 geramos exabytes (1,073,741,824 gigabytes) de

informações diariamente na Internet, e analistas tem previsto contínuo crescimento. Será

apresentado a seguir algumas pesquisas e previsões sobre o crescimento dos dados digitais.

Em junho de 2012, a empresa de inteligência de negócios, Domo, fez uma pesquisa e

criou um infográfico que mostra a quantidade de dados gerados em um minuto (versão

original: “Data Never Sleeps – How Much Data Is Generated Every Minute?”). Este

infográfico diz que em um minuto, usuários do Youtube fazem upload de 48 horas de vídeo, o

Google recebe mais de 2 milhões de consultas, usuários de e-mails enviam 204,166,667 de

mensagens, usuários do Facebook compartilham 684,478 partes de conteúdo, usuários do

Twitter enviam mais de 100 mil tweets, usuários do Instagram compartilham 3,600 novas

fotos, 571 novos websites são criados, a web mobile recebe 217 novos usuários, e vários

outros dados. A pesquisa diz que estas são apenas algumas das mais comuns maneiras dos

usuários da Internet adicionar dados à esta grande piscina de dados e dependendo do nicho de

negócios em que você está, há virtualmente incontáveis outras fontes de dados relevantes para

prestar atenção (JOSH, 2012).

Uma previsão feita pela Cisco4 (2012), diz que até em 2017 quase metade da

população mundial terá acesso a Internet, e se estas previsões ocorrerem, cerca de 121

exabytes de dados serão transmitidos mensalmente. Outro dado interessante da Cisco é que

em 2012, 26% do tráfego de dados foi gerado pelos dispositivos móveis, e a previsão aponta

para um crescimento de 49% até 2017.

Os usuários dos dispositivos móveis não são apenas consumidores finais, mas também

são as corporações. Muitas empresas já se adaptaram para o mercado, e fazem uso dessas

ferramentas para gerenciamento dos negócios. Outras empresas já estão vendo o crescimento

e estão se adaptando para utilizar essa tecnologia. Para saber como as empresas estão lidando

com a tendência à mobilidade, a Symantec, empresa de segurança da Internet, encomendou

uma pesquisa em 2012 que mostra que 71% das empresas em todo o globo pretendem usar

aplicações móveis personalizadas, 66% pretendem criar uma loja virtual corporativa e 59%

estão executando aplicações de negócios. Tudo isto tem um risco, e em questão de segurança

a mobilidade ainda está muito propensa a contaminações, o que pode causar grandes

problemas. Apesar destes riscos, ainda acham que valem os benefícios, tendo em vista 4Cisco System, Inc.

15

melhorar a segurança, reduzir os custos e complexibilidade dos sistemas móveis. A agilidade,

eficiência e efetividade da força do trabalho são alguns dos principais benefícios que estes

dispositivos oferecem.

As mídias sociais também oferecem um mar de possibilidades de ganhos as

organizações. Primeiramente porque é onde o público jovem está, e onde eles escrevem o que

pensam, o que estão sentindo, o que querem e onde expõem suas ideias. Milhares de empresas

já possuem suas páginas nas redes sociais com milhares de seguidores, onde fazem

promoções, apresentam suas novidades, e já recebem um feedback dos seus clientes. Todas as

publicações dos usuários e das empresas podem ser analisadas para verificar se os clientes

estão realmente satisfeitos com tal produto, ou se desejam algum produto diferente, o que

mostra que as redes sociais geram muitas informações.

1.2 Mídias sociais

A Internet está supersaturada de dados. Após as mídias sociais tornarem a Internet um

lugar mais familiar aos usuários, uma massiva quantidade de dados começou a ser despejada

aos montes na web. As suas fontes são variadas, como exemplo, podemos citar milhões de

usuários do Instagram postando suas fotos diariamente, álbuns onde compartilham com outros

usuários, e estes com outros, e assim por diante. Alguém famoso posta alguma frase no

Twitter e em questão de minutos, milhares de usuários compartilham. Um bom exemplo de

grande quantidade de dados gerados rapidamente foi quando ocorreu o terremoto no Haiti em

janeiro de 2010. Milhares de pessoas registrando o ocorrido e postando no youtube, outras

organizando ajuda pelo Twitter e Facebook, outras partilhando pelo que passou. Existem

muitos outros casos que mostram que as mídias sociais realmente fazem uma grande diferença

na geração de informações, onde cada pessoa com seu dispositivo é criador de seu próprio

conteúdo.

1.3 Dados desestruturados

A Internet é formada por dados que podem ser dos mais variados tipos. Por exemplo, o

Twitter gera milhões de dados do tipo texto com 144 caracteres, o Facebook gera dados em

textos, imagens, vídeos, entre outros. Quando é feita alguma pesquisa, dados são gerados,

quando é marcado um vídeo do Youtube com um “Like”, é gerado dados. Tudo o que é feito

na Internet gera algum tipo de dado. Mas estes tipos de dados não servem em um banco de

16

dados comum. São os conhecidos dados desestruturados, que possuem esse nome por não

servirem nos bancos de dados tradicionais. Segundo Manyika et al. (2011, p. 33, tradução

nossa) dados desestruturados são “dados que não residem em campos fixos.” Hurwitz et al.

confirma dizendo que

Algum dado é estruturado e armazenado em uma base de dados relacional

tradicional, enquanto que outros dados, incluindo documentos, gravações de

serviços ao consumidor, e até fotos e vídeos, são desestruturados. Companhias

também tem que considerar novas fontes de dados gerados por máquinas como, por

exemplo, sensores (2013, p. 09, tradução nossa).

Uma mensagem de e-mail é um exemplo de dado desestruturado. Segundo Zadrozny e

Kodali (2013, p. 01, tradução nossa), “o corpo do e-mail pode ser considerado desestruturado,

é parte de uma estrutura bem definida que segue as especificações da RFC-28225 e contém

um conjunto de campos que incluem De, Para, Assunto e Data.” Outro exemplo de fonte de

dados desestruturados são sensores, que podem ser usados com diversas finalidades. Sensores

que monitoram o trafego em rodovias, sensores que fazem leitura por RFID6 nos

supermercados, sensores de leitura de temperatura nas cidades, satélites que monitoram o

tempo e terremotos, entre outros.

1.4 NoSQL

Mas com tanta informação desestruturada que não serve nos banco de dados

tradicionais, nos perguntamos onde fica armazenado todos esses dados. Os conhecidos banco

de dados SQL7 não davam suporte a esses dados, então surgiu a ideia de criar um banco para

todos os tipos de dados, onde poderia ser populado tanto por dados relacionais (estruturados)

como por dados não-relacionais (desestruturados) e que oferecesse um alto grau de

escalabilidade. O NoSQL (Not only SQL) é um termo usado para se referir a qualquer

armazenamento de dados que não seguem o modelo tradicional RDBMS8.

Segundo Vaish (2013, p. 16, tradução nossa), “NoSQL não é um banco de dados. Não

é nenhum tipo de banco de dados. Na verdade, é um termo usado para filtrar um conjunto de

banco de dados fora do ecossistema.” NoSQL representa uma classe de produtos e uma

5Este documento especifica uma sintaxe para mensagens de texto que são enviadas entre usuários de

computador, no âmbito das mensagens de “correio eletrônico”. 6Identificação por Rádio Frequência – Radio-Frequency Identification. 7Linguagem de Consulta Estruturada – Structured Query Language. 8Relational Data Base Management System – sistema de gerenciamento de base de dados relacionais.

17

coleção de diversos, e as vezes relacionados conceitos sobre armazenamento e manipulação

de dados. Para empresas como Google, Facebook e Amazon, este conceito foi muito bem

recebido, principalmente por gerenciar um grande volume de dados desestruturados e possuir

alto grau de disponibilidade e escalabilidade.

Um dos principais geradores de dados desestruturados são as redes sociais, que como

foi dito anteriormente, está em contínua ascensão. Para muitos isto é um grande problema,

pois como indicam as pesquisas, o volume de dados gerados na web vem crescendo de um

modo acelerado, que o crescimento dos servidores não estão acompanhando no mesmo ritmo,

o que ocasionará a falta de espaço para armazenamento dos dados e haverá a necessidade de

gastos com mais servidores e consequentemente aumento dos custos de manutenção. Mas

para uns isto é um grande problema, para outros isto é uma solução.

1.5 Marketing Social

Muitas empresas tem visto que a mídia social é um campo fértil para se fazer

publicidade e cheio de informações sobre o que os usuários estão pensando a respeito de tudo,

o que eles frequentam, o que costumam comprar, o que estão querendo melhorar, etc. Então

veem uma grande oportunidade de crescimento. As organizações que investem em marketing

social, utilizam uma técnica de análise constante das informações geradas na rede para tomar

decisões na criação de algum produto ou publicidade. Os analistas de redes sociais tem a

responsabilidade de monitorar a web para saber como está a imagem da marca na web,

analisando os perfis dos possíveis clientes e ganhando espaço na web com publicidades

chamativas e bem elaboradas de acordo com o contexto do ambiente onde foi empregado. E

conforme aumenta o número de redes sociais e suas diferentes abordagens, aumenta o número

de oportunidades de negócios.

Não se pode negar que esta imensa quantidade de dados gerados diariamente

transforma a web em um caos total. São tantas informações geradas diariamente de tantas

fontes que os softwares usados para fazer suas análises e interpretações das informações não

estão dando conta do volume e velocidade com que são gerados. Em vista desta necessidade,

surgiram ferramentas voltadas para coletar e tratar dados massivos, que tem por objetivo fazer

análise de dados relacionados em tempo real para geração de valor. Assim surge o conceito de

Big Data.

18

CAPITULO II

2 ANÁLISE DE DADOS RELACIONADOS PARA GERAÇÃO DE INFORMAÇÕES

Big Data não é apenas um conjunto de dados desestruturados, mas o conceito que

mostra como tirar proveito desses dados. Em uma definição abrangente, Hurwitz et al. (2013,

p. 15, tradução nossa) afirmam que “Big Data não é uma simples tecnologia, mas a

combinação de velhas e novas tecnológicas que ajudam companhias a obterem conhecimentos

práticos.” Tecnologias como Data Warehouse, Data Mining e muitos outros conceitos formam

o conceito de Big Data. Nas definições de Dumbill (2012b, p. 03, tradução nossa), “Big Data

são dados que excedem a capacidade de processamento dos sistemas de banco de dados

convencionais.” Já Manyika et al. (2011, p. 33, tradução nossa) nos mostram que “Big Data

refere-se a conjuntos de dados, cujo tamanho é além da capacidade das ferramentas típicas de

software de banco de dados para capturar, armazenar, gerenciar e analisar.” Schneider (2012,

p. 05, tradução nossa) diz que “Big Data é descrito em pelo menos três separados, mas inter-

relacionados tópicos: Captura e gerenciamento de muita informação; trabalha com muitos

novos tipos de dados; e explorar essas massas de informações e novos dados como novos

estilos de aplicação.”

Então pode-se dizer que o Big Data é formado por grandes quantias e muitos formatos

de dados estruturados e desestruturados na web. Big Data é conhecido pela definição dos três

vês, onde Dumbill (2012b, p 04, tradução nossa) esclarece as questões dizendo que “os três

vês de volume, velocidade, e variedade são comumente usados para caracterizar os diferentes

aspectos do Big Data.” O objetivo das empresas hoje é como lidar com os aspectos do Big

Data. Hurwitz et al. (2013, p. 10, tradução nossa) afirmam que “o desafio hoje é, como as

companhias podem fazer sentido do cruzamento de todos estes diferentes tipos de dados [...] é

impossível pensar sobre gerenciamento de dados em modos tradicionais.”

2.1 Os três vês

Obter valor dos dados não é uma tarefa fácil. Big Data é cheio de desafios, pois lida

com diferentes conceitos e aspectos. Diferentes conceitos, pois não é apenas uma ferramenta,

mas sim um conjunto delas que trabalham de forma diferente, mas para alcançar um único

objetivo. Diferentes aspectos, pois lida com valores de âmbitos contrários.

19

Para entender sobre o Big Data, é necessário analisar seus principais aspectos:

Variedade: A utilização de diversos formatos de dados, derivadas de

diversas fontes, estruturados e desestruturados;

Volume: Grande quantidade de dados sendo analisada, e para o Big Data,

quanto mais dados, melhor será sua predição;

Velocidade: A rapidez com que os dados são analisados, e como se trata

de dados massivos, é preciso fazer análise praticamente em tempo real.

Na obtenção de valor através deste oceano de informações, existem alguns processos

que devem ser executados para se chegar a um resultado final. Imagine um grande quebra

cabeça, com tempo pode-se montar todo ele apenas coletando as peças do monte

embaralhado. No exemplo anterior, as peças são os dados, o monte de peças embaralhadas é a

Internet e o quebra cabeça montado é o valor ou resultado final. Agora imagine o mesmo

quebra cabeça, mas no monte de peças embaralhadas estão muitas outras peças de outros

quebra cabeças, e você precisa montá-lo em um curto espaço de tempo. É assim que o Big

Data trabalha, são imensos volumes de dados todos misturados, você precisa localizar as

peças certas, organizá-las para montar o quebra cabeça e integrá-las para obter o resultado

final, tudo isto em um curto espaço de tempo (DUMBILL, 2012b, tradução nossa).

2.2 Ciclo de gerenciamento

Para se chegar ao resultado final é importante cumprir todos os requisitos do Big Data.

Schneider (2012, p. 17, tradução nossa) diz que “os dados devem ser previamente capturados,

e, em seguida, organizados e integrados. Após esta fase ser implementada com sucesso, os

dados podem ser analisados com base no problema a ser abordado.” A Figura 1 representa o

ciclo de vida do gerenciamento do Big Data.

Figura 1 – Ciclo de gerenciamento do Big Data

20

Fonte: Adaptado de Hurwitz et al. (2013, p. 17)

Antes do processo de captura, é necessária definir o problema, para que o sistema

capture apenas os dados relacionados em questão. Hurwitz et al. (2013, p. 48, tradução nossa),

afirma que “como qualquer arquitetura de dados importantes, você deve criar um modelo que

tem um olhar holístico de como todos os elementos precisam se unir.” Deve-se pensar em Big

Data como uma estratégia, não como um projeto. E para se ter uma ótima estratégia, é

necessário uma arquitetura de gerenciamento que seja capaz de abordar todos os requisitos

fundamentais citados acima.

2.3 Arquitetura de gerenciamento

O Big Data possui uma arquitetura de gerenciamento dos dados, com ampla variedade

de serviços, permitindo assim, as empresas utilizarem diversas fontes de dados de forma ágil e

eficaz. Esta arquitetura está disposta em um diagrama de componentes que se relacionam

entre si. A Figura 2 mostra o diagrama e seus relacionamentos.

Figura 2 – Arquitetura do Big Data

Fonte: Adaptado de Hurwitz et al. (2013, p. 18)

Nas seções 2.3.1 à 2.3.8 serão apresentados cada camada do diagrama de arquitetura

do Big Data.

21

2.3.1 Interfaces e feeds9

Repare que em ambos os lados do diagrama existem interfaces de entrada e saída de

dados, e os dados internos são mantidos com grande quantidade de dados a partir de diversas

fontes externas. Esta interface fornece acesso bidirecional para todas as outras camadas de

componentes. Para Hurwitz et. al (2013, p. 18, tradução nossa), “as APIs10 serão núcleo para

qualquer arquitetura de Big Data.”

Programadores tem usado APIs para fornecer acesso a implementações de software,

mas as vezes é necessário profissionais da área de TI (Tecnologia da Informação) para criar

ou customizar APIs de acordo com as necessidades da empresa, com o objetivo de manter a

competitividade no mercado ou outra necessidade da organização. As APIs precisam estar

bem documentadas e preservar o valor da organização.

Os desafios do Big Data requer uma diferente abordagem para o desenvolvimento ou

adoção de uma API. A grande quantia de dados desestruturados que são gerados fora do

controle do seu negócio, faz com que haja a necessidade de uma técnica chamada

Processamento de Linguagem Natural (PLN) que está emergindo como interface entre o Big

Data e suas aplicações. A PLN permite formular consultas com a uma sintaxe de linguagem

natural ao invés de uma linguagem de consulta formal como SQL. Essa técnica, facilitará e

muito no processo de consulta, acelerando o entendimento da maioria dos usuários

(HURWITZ et al., 2013, tradução nossa).

2.3.2 Infraestrutura Física Redundante

Uma robusta infraestrutura física irá garantir o perfeito funcionamento de uma

arquitetura de Big Data. Porém é necessária uma infraestrutura baseada em um modelo de

computação distribuída. Isso garante que os dados sejam armazenados em diferentes locais e

se conectem pela rede. E da mesma forma, a necessidade de redundância, pois a infraestrutura

deve suportar grandes quantidades de dados provenientes de diversas fontes. “Em alguns

casos, esta redundância pode vir na forma de um software como uma oferta de serviço (SaaS)

que permite às empresas fazer sofisticadas análises de dados como um serviço.”11

9Feeds (do inglês alimentar) são ferramentas que facilitam o acesso a conteúdo da Internet. Os canais de

informações disponibilizam um feed no qual o usuário pode se inscrever e receber as notícias sem procurá-las. 10Interface de Programação de Aplicativos - Open Application Programming Interfaces. 11Id., 2013, p. 19, tradução nossa.

22

A alta performance dos sistemas de Big Data devem suportar a implementação e seus

três principais aspectos (velocidade, variedade e quantidade). Flexibilidade e redundância são

fatores decisivos. “A redundância garante que um tal funcionamento não irá causar uma

interrupção [...] e flexibilidade ajuda a eliminar pontos únicos de falha em sua

infraestrutura.”12

Quando se trata de uma aplicação para Big Data, existem alguns princípios que

devemos considerar (HURWITZ et al., 2013, tradução nossa):

Performance, no qual nos mostra o tempo de resposta do sistema.

Infraestruturas de baixa latência e alta performance costumam ser caras;

Viabilidade é a garantia de serviço que você precisa ou quanto tempo seu

negócio pode esperar em caso de interrupção ou falha no sistema.

Infraestruturas de alta viabilidade também são caras;

Escalabilidade mostra o quanto sua infraestrutura precisa ser grande,

quanto espaço em disco ou poder computacional você precisa.

Normalmente decidimos o quanto precisamos e adicionamos um pouco

mais para imprevistos;

Flexibilidade demanda velocidade em adicionar mais recursos a

infraestrutura ou se recuperar de alguma falha. Infraestruturas flexíveis

custam caro, mas com serviços na nuvem, podemos controlar os gastos

onde se paga apenas pelo que está sendo usado; e custo que dependerá se

você irá comprar a melhor infraestrutura ou gastar em armazenamento,

tudo depende de suas reais necessidades.

2.3.3 Infraestrutura de segurança

A infraestrutura de segurança é uma questão que deve ser tratada logo no começo do

projeto, sendo de estrema importância, pois irá manter a privacidade dos seus dados e atender

aos requisitos de conformidade.

Para que os requisitos de segurança estejam de acordo com as necessidades do

negócio, é necessário estar preparado para os desafios. Acesso aos dados: Apenas os que

possuem uma necessidade comercial legítima devem ter acesso aos dados. As empresas

possuem rigorosos regimes de segurança, garantindo que ninguém ou nada acesse os dados

12Ibid., p. 49, tradução nossa.

23

sem as devidas permissões. Acesso à aplicação: É algo relativamente simples, mas de grande

importância. APIs fornecem proteção contra acesso não autorizado, evitando riscos e

garantindo segurança as implementações. Criptografia dos dados: em um ambiente de Big

Data que trabalha com grandes quantidade, velocidade e variedade de dados, a criptografia

dos dados não é tão simples como em ambientes tradicionais. Uma simples abordagem pode

custar muito poder computacional. Por outro lado, deve-se apenas criptografar itens que

realmente precisam deste nível de segurança. Detecção de ameaças: conforme aumenta a

quantidade de dados gerados na web, aumenta a quantidade de ameaça à segurança. As

organizações devem ter várias abordagens para garantir a segurança dos dados e das

implementações (HURWITZ et al., 2013, tradução nossa).

2.3.4 Banco de Dados operacionais

Existem diversas arquiteturas de banco de dados que podem ser utilizadas. Porém a

que irá determinar a melhor, será a se enquadrar as reais necessidades da empresa.

Por exemplo, você pode estar interessado em modelos de funcionamento para

determinar se é seguro perfurar poços de petróleo em uma área do mar dado os

dados em tempo real de temperatura, salinidade, ressuspensão dos sedimentos, e

uma série de outras propriedades físicas biológicas, químicas, da coluna de água.

Pode levar dias para executar este modelo usando uma configuração de servidor

tradicional. No entanto, usando um modelo de computação distribuída, o que levou

dias agora pode demorar alguns minutos (HURWITZ et al., 2013 p. 20, tradução

nossa)

O Banco de Dados mais utilizado para dados desestruturados e estruturados é o

NoSQL que fornece alta grau de escalabilidade. Outro importante banco de dados muito

utilizado é o de modelo Colunar que armazena informações em colunas que segundo Hurwitz

et. al (2013, p. 21, tradução nossa), “esta abordagem conduz a um acelerado desempenho

porque a entrada/saída é extremamente rápida.” Deve-se levar em conta as principais

propriedades dos bancos de dados que são: escalabilidade, atomicidade, consistência,

isolamento e durabilidade, conhecidos como ACID13. Estes são fatores decisivos na escolha

do banco de dados.

13Termo usado pelos projetistas de banco de dados que demonstra os comportamentos dos bancos de dados.

24

Os Bancos de Dados são como motores centrais do Big Data. “Estes motores precisam

ser velozes, escaláveis e sólidos. Eles não são todos iguais e, em certos ambientes de Big Data

um se sairá melhor que outro, ou mais provavelmente uma mistura deles.” 14

2.3.5 Organizar Banco de Dados e ferramentas

A maioria dos dados gerados na Internet e que as organizações utilizam, estão

misturado e desorganizados provenientes de diferentes fontes. A alguns anos atrás as

empresas não tinham ferramentas especializadas para capturar esta grande quantidade de

dados. Algumas ferramentas que eram capazes de dar sentido aos dados e também não

produziam resultado em um prazo razoável. “Aqueles que realmente queriam fazer um

enorme esforço de analisar esses dados eram forçados a trabalhar com instantâneos de

dados.”15 Esta técnica deixava a desejar, pois fazia com que importantes eventos fossem

perdidos, porque eles não estavam em um determinado instantâneo.

Esta fase é de extrema importância, pois ela tem a responsabilidade de organizar os

serviços de dados e as ferramentas que capturam, validam e agregam vários elementos de Big

Data em conjuntos contextualmente relevantes. Uma das técnicas muito utilizada hoje é o

MapReduce16. Este modelo de programação influenciou muitos programas, que possuem a

função de otimizar a organização dos fluxos de Big Data. Na realidade, esta fase é todo um

ecossistema de ferramentas e tecnologias que tem por objetivo unir e agregar dados para

posterior processamento. Estas ferramentas proporcionam integração, tradução, normalização

e escala (HURWITZ et al., 2013, tradução nossa).

2.3.6 Análises de Data Warehouses e Data Marts

Data Warehouse são ferramentas que armazenam informações relevantes à

organização e as reúnem em uma relevante coleção contextualizada. Os dados são coletados

de diferentes tipos de bancos de dados e normatizados, facilitando assim, a criação de

relatórios. Este processo tem por objetivo otimizar a tomada de decisão na organização. As

implementações de Data Warehouse são atualizadas por processamento em lotes (HURWITZ

et al., 2013, tradução nossa).

14Ibid., p. 54, tradução nossa. 15Ibid., p. 21, tradução nossa. 16MapReduce é um modelo de programação e uma implementação associada para processamento e geração de

grandes conjuntos de dados (ver capítulo III).

25

Mas os Data Warehouses e os Data Marts podem não ser uma solução adequada para

Big Data, pois esta necessita de uma abordagem em tempo real. Segundo Ohlhorst (2013, p.

38, tradução nossa), “usando técnicas de um sistema de gerenciamento de banco de dados

relacionais convencionais, pode levar várias semanas para os administradores de banco de

dados obterem um data warehouse pronto para aceitar os dados alterados,” além de que não é

uma boa alternativa para trabalhar com dados desestruturados.

2.3.7 Analytics (análise de Big Data)

Para uma empresa trabalhar com Big Data, é necessário máquinas com grande poder

de processamento, que trabalhem paralelamente para lidar com dados altamente distribuídos,

e fornecer resultados otimizados de acordo com a necessidade da empresa.

O processo de análise de Big Data não é um processo típico, pois exige técnicas

avançadas de armazenamento. Para extrair as informações relevantes do Big Data, os dados

devem passar por vários processos e técnicas de análise. Hurwitz et al. dizem que:

Os dados devem primeiramente ser capturados, e então organizados e integrados.

Após esta fase estar implementada com sucesso, os dados podem ser analisados

baseados no problema a ser abordado. Finalmente, o gerenciamento toma medidas

com base no resultado dessa análise (2013, p. 16, tradução nossa).

Conforme a afirmação anterior, para obter o resultado final dos dados, deve ser feito

vários processos. Mas para lidar com o grande volume, variedade e velocidade dos dados,

devemos utilizar ferramentas específicas para suportar as principais características do Big

Data. Dumbill afirma que:

Assumindo que o volume de dados são maiores que essas infraestruturas de base de

dados relacionais convencionais podem lidar, opções de processamento em geral

dividem-se em uma escolha entre arquiteturas de processamento maciçamente

paralelo – data warehouse ou base de dados como Greenplum – e soluções baseadas

em Apache Hadoop (2012b, p. 05, tradução nossa).

Para análise do Big Data, além de utilizarmos ferramentas para processamento

massivo de informações, devemos pensar sobre o armazenamento dessas informações, e qual

o custo benefício que proporcionaria ao negócio. Hurwitz et al. explicam que:

Com Big Data, é possível virtualizar dados de modo que eles podem ser

armazenados eficientemente, e utilizando armazenamento baseado na nuvem, torna-

se mais rentável ainda. Além disso, melhorias na velocidade da rede e confiabilidade

26

removeram outras limitações físicas de serem capazes de gerenciar grandes

quantidades de dados em um ritmo aceitável. Adicione a isto o impacto das

mudanças no preço e sofisticação das memórias de computador. Com todas essas

transições tecnológicas, agora é possível imaginar maneiras que as empresas podem

aproveitar os dados que seriam inconcebíveis há apenas cinco anos atrás (2013, p.

14, tradução nossa).

No próximo capítulo será detalhado mais sobre a ferramenta Hadoop, e também sobre

as vantagens do uso da computação em nuvem para armazenamento de dados do Big Data.

Para suportar o as exigências e complexibilidade do Big Data, há três

classes de ferramentas que podem ser usadas independente ou em

conjunto:

Emissão de relatórios e dashboards17: “Estas ferramentas fornecem uma

representação “amigável” da informação a partir de várias fontes.”18

Algumas dessas ferramentas que estão sendo usadas, são tradicionais, e

tem acesso a bancos de dados como NoSQL.

Visualização: Estas ferramentas são a última etapa no processo de

criação de relatórios. A visualização deve ser interativa e dinâmica.

“Utilizando uma variedade de diferentes técnicas de visualização,

inclusive mapas mentais, mapas de calor, infográficos e diagramas de

ligação.”19

Analytics e análises avançadas: “Estas ferramentas alcançam o Data

Warehouse e processam os dados para o consumo humano. Análises

avançadas devem explicar tendências ou eventos que são

transformadoras, originais, ou revolucionárias”20 e como exemplo

existem as análises preditivas e de sentimento.

2.3.8 Aplicações de Big Data

O Big Data tem características muito diferentes das aplicações tradicionais, onde estas

aplicações tem se estendido em diversos campos como saúde, gerenciamento de tráfego,

gestão de produção, e muitos outros. Estas aplicações tem por objetivo resolver problemas em

17O termo Dashboards traduzido do inglês significa “painel de controle” e tem por objetivo apresentar as

informações virtualmente. 18Ibid., p. 58, tradução nossa. 19Ibid., p. 58, tradução nossa. 20Ibid., p. 58, tradução nossa.

27

setores específicos da organização ou em problemas de todos os setores, de diversas áreas,

desde registro de dados, a publicidade, mídia, marketing entre outros.

A criação de aplicações de Big Data deve ser definida por específicos critérios de

estrutura, baseada em rigorosas normas e com APIs bem definidas.

A maioria dos aplicativos dos negócios que desejam alavancar o Big Data, terá de

subscrever APIs em toda a pilha. Isso pode ser necessário para processar os dados

brutos a partir dos armazenamentos de dados de baixo nível e combinar os dados

brutos com saída sintetizada a partir de Warehouses (HURWITZ et al., 2013 p. 59,

tradução nossa).

Para lidar com o Big Data, o time de desenvolvimento de software precisa ser capaz de

responder rapidamente as mudanças no ambiente de negócios, através da criação e

implementação de aplicativos sob demanda. Seria mais apropriado pensar nestas aplicações

como semi personalizadas, pois envolvem mais montagem do que codificação. Esta camada

exige mais padronização e estrutura do que qualquer outra camada. Os desenvolvedores

precisam criar ambientes consistentes e padronizados, para desenvolver novas práticas de

rápida implantação de aplicativos de Big Data.

2.4 Virtualização

Virtualização é uma tecnologia que é indispensável para o uso do Big Data. Ela provê

uma plataforma que fornece acesso, armazenamento, análise e gerenciamento dos

componentes de computação distribuída em ambientes de Big Data. A virtualização permite a

criação de ambientes virtuais dentro de única estrutura física. Segundo Hurwitz et al. (2013 p.

59, tradução nossa) virtualização é “o processo de utilização de recursos de informática para

imitar outros recursos – é valorizado pela sua capacidade de aumentar a utilização dos

recursos de TI, eficiência e escalabilidade.” Sua aplicação é mais utilizada na consolidação de

servidores, pois possibilita um melhor uso dos recursos do servidor, economizando em

infraestrutura. Mas ela pode ser aplicada em todos os outros setores da estrutura de TI,

trazendo diversos benefícios com sua utilização. A Figura 3 mostra como um software

virtualização pode criar vários sistemas virtuais com apenas um único sistema físico.

28

Figura 3 – Típico ambiente de virtualização

Fonte: Adaptado de Hurwitz et al. (2013, p. 62)

A utilização de virtualização traz benefícios tanto na redução de custos na

infraestrutura e recursos físicos como na melhoria de produtividade, melhor controle de

desempenho dos recursos de TI, fornece um nível de automação e padronização para otimizar

seu ambiente de computação e dá suporte para Cloud Computing. Mas para alcançar todos

estes benefícios é necessário uma gestão segura dos recursos virtuais, onde qualquer dado

desprotegido, pode facilitar a invasão do sistema.

Para se trabalhar em um ambiente de virtualização com Big Data, é necessário um

ambiente de TI altamente eficiente. Embora a virtualização não seja um requisito para Big

Data, alguns softwares como MapReduce tem melhores desempenhos em ambientes

virtualizados. Existem três características da virtualização que oferecem suporte a

escalabilidade e eficiência do Big Data (HURWITZ et al., 2013, tradução nossa):

Particionamento: Muitas aplicações e sistemas operacionais podem ser

suportados por apenas um sistema físico particionando recursos

disponíveis;

Isolamento: Cada máquina virtual é isolada de seu sistema físico e de

outras máquinas virtualizadas. Caso uma instancia falhe, o isolamento

impede que isso afete as outras instâncias, além de que os dados não são

compartilhados entre uma instância e outra;

Encapsulamento: Uma máquina virtual pode ser representada em um

único arquivo encapsulado, o que a torna uma entidade completa para um

29

aplicativo. Desta maneira o encapsulamento irá evitar que um interfira

em outro.

Big Data exige um ambiente altamente escalável. A virtualização adiciona eficiência

em todas as camadas da estrutura de TI, fazendo com que seu ambiente alcance a

escalabilidade necessária para as análises de Big Data. Mas a virtualização deve ser otimizada

em todas as camadas da estrutura, desde a rede, bancos de dados, armazenamento, servidores,

dados, processadores, memórias e serviços. Se apenas um setor for virtualizado, pode ocorrer

gargalos em outros elementos da infraestrutura, não alcançando a eficiência e latência

necessária, aumentando assim os gastos e riscos de segurança (HURWITZ et al., 2013,

tradução nossa).

2.4.1 Virtualização de servidores

Na virtualização de servidores, um servidor físico pode ser dividido em vários

servidores virtuais, incluindo seus recursos como memória de acesso aleatório (RAM), CPU,

disco rígido e controlador de rede. Cada máquina virtual (VM) executa seus aplicativos e

sistema operacional. Existe um software que é instalado no hardware, chamado monitor de

máquina virtual ou Hypervisor. “O Hypervisor pode ser pensado como a tecnologia que

gerencia o tráfego entre as VMs e a máquina física.”21 Como é impossível saber a extensão do

volume ou variedade de dados com que você pode lidar, a virtualização garante fácil

escalabilidade caso seja necessário aumentar a capacidade para atender a demanda inesperada

(HURWITZ et al., 2013, tradução nossa).

2.4.2 Virtualização da infraestrutura de aplicação

A virtualização da infraestrutura de aplicação possibilita o encapsulamento de uma

forma que as dependências do sistema são removidas, melhorando a portabilidade e a

facilidade de gerenciamento da aplicação. Além disso, permite codificar a política de uso de

técnicas de negócios para que o uso dos recursos físicos e virtuais sejam previsíveis. A

eficiência também é alcançada porque a virtualização prioriza a execução de aplicações

críticas e permite o uso da capacidade de armazenamento disponível. Como a virtualização de

servidor não leva em conta a variação de prioridade do negócio, é viável utilizar em conjunto 21Ibid., p. 64, tradução nossa.

30

com a virtualização da infraestrutura de aplicação, que garante que as aplicações de alta

prioridade tenham acesso preferencial aos recursos. Outro benefício é o uso de aplicações

anteriormente incompatíveis, que agora podem rodar em uma única máquina física, sem a

necessidade de instalar versões diferentes de sistemas operacionais (HURWITZ et al., 2013,

tradução nossa).

“Em vez de confiar nas rede física para gerir o tráfego entre as conexões, você pode

criar múltiplas redes virtuais todos utilizando a mesma implementação física.”22 A

virtualização de rede pode ser útil caso seja necessário determinar características de

desempenho e capacidade diferentes para grupos diferentes de rede, eliminando assim

diversas limitações das redes físicas como gargalos com a análise de grandes volumes de

dados.

2.4.3 Virtualização do processador

“Virtualização do processador ajuda a otimizar o processador e maximizar o

desempenho. Virtualização de memória desacopla a memória dos servidores.”23 Cálculos de

avançados algoritmos e repetidas consultas aos dados, podem fazer o processador trabalhar

muito lentamente e consumir muita memória. Esta virtualização tem como benefício acelerar

o processamento dos dados e alcançar o resultado mais rapidamente.

2.4.4 Virtualização de dados e armazenamento

“A virtualização de dados pode ser usada para criar uma plataforma para serviços de

dados com ligações dinâmicas. Isso permite que os dados sejam facilmente pesquisados e

ligados através de uma fonte de referência unificada.”24 Em decorrência disso, a virtualização

disponibiliza os dados de forma consistente, em imagens virtuais de bancos de dados, sem

gasto de recursos adicionais.

A virtualização de armazenamento combina recursos de armazenamento físico para

um dinâmico compartilhamento, reduzindo custos e facilitando o gerenciamento. Também

facilita a armazenagem de dados desestruturados. “Virtualização de dados e armazenamento

22Ibid., p. 66, tradução nossa. 23Ibid., p. 66, tradução nossa. 24Ibid., p. 67, tradução nossa.

31

desempenha um papel significativo em tornar mais fácil e menos oneroso para armazenar,

recuperar e analisar grandes volumes de rápidos e variados tipos de dados.”25

2.5 Abstração e virtualização

Para os recursos e serviços de TI serem virtualizados, é necessário separá-los do

ambiente físico. Este processo de separação é chamado de abstração. Alguns detalhes são

abstraídos do ambiente para que o desenvolvedor ou analista não se preocupe onde os

elementos de dados estão. “A abstração minimiza a complexibilidade das coisas escondendo

os detalhes e fornecendo apenas as informações relevantes.”26

2.6 Implementando virtualização para trabalhar com Big Data

A virtualização deixa seu ambiente de TI mais inteligente para lidar com análise de

Big Data. Ao otimizar toda a infraestrutura de TI, há um ganho em eficiência em processar

grandes quantidades de dados distribuídos, estruturados e desestruturados.

Além disso, na prática MapReduce trabalha melhor com virtualização. Virtualização

trará melhores resultados em escala e desempenho para MapReduce. Se o motor MapReduce

for paralelizado e ser adaptado para trabalhar em um ambiente virtual, é possível gerenciar os

workloads (cargas de trabalho) aumentando ou diminuindo a sobrecarga de tarefa. Ao

encapsular o motor MapReduce em um recipiente virtual, você pode executar o que você

precisa quando você precisar (HURWITZ et al., 2013, tradução nossa).

2.7 Cloud Computing (Computação em Nuvem)

A Computação em nuvem é um ambiente onde recursos computacionais e de

armazenamento são fornecidos aos usuários. Uma de suas principais características é a fácil

escalabilidade. Recursos podem ser adicionados e extraídos praticamente em tempo real. “A

nuvem tem um papel importante dentro do mundo Big Data. Mudanças dramáticas acontecem

quando estes componentes de infraestrutura são combinados com os avanços na gestão de

dados.”27 Este ambiente é muito favorável para aplicações de Big Data.

25Ibid., p. 67, tradução nossa. 26Ibid., p. 69, tradução nossa. 27Ibid., p. 71, tradução nossa.

32

2.7.1 Modelos de Cloud Computing

Existem diversos modelos de Cloud Computing, mas será citado dois modelos

principais de nuvem, as públicas e as privadas. Cada modelo oferece um propósito específico.

2.7.1.1 Nuvem pública

“A nuvem pública é um conjunto de hardware, redes, armazenamento, serviços,

aplicações e interfaces de propriedade e operados por terceiros para uso por outras empresas e

indivíduos.”28 Esta central de dados é relativamente simples, exibindo ao cliente apenas os

serviços necessários para seu uso, sendo que todos os detalhes da infraestrutura é escondida

do consumidor. As nuvens públicas são normalmente fáceis de gerenciar, e trabalham bem

com serviços repetitivos, possuindo alta escalabilidade.

O armazenamento em nuvem pública tem o custo relativamente barato. Mas um

problema são os requisitos de segurança e latência. Cada nuvem tem suas características,

algumas fornecem serviços gerenciados escaláveis com alto nível de segurança. Outras são

mais baratas, mas fornecem menos segurança e são menos robustas. A escolha depende do

tipo do projeto de Big Data e a quantia de risco que a empresa pode assumir.

2.7.1.2 Nuvem privada

“Uma nuvem privada é um conjunto de hardware, redes, armazenamento, serviços,

aplicativos e interfaces de propriedade e operados por uma organização para o uso de seus

funcionários, parceiros e clientes.”29 Ao contrário da nuvem pública, a nuvem privada possui

um ambiente controlado fechado para consumo público, protegida por um firewall, podendo

ser gerenciada pela empresa cliente.

Possui processos automatizados, voltados para governança, segurança e conformidade,

de maneira que as normas dos processos de negócios são implementadas no software,

garantindo previsão e controle do ambiente. Caso a empresa esteja gerenciando um projeto

Big Data e precise processar enormes quantidades de dados, a nuvem privada seria a melhor

escolha em termos de segurança e latência (HURWITZ et al., 2013, tradução nossa).

28Ibid., p. 73, tradução nossa. 29Ibid., p. 74, tradução nossa.

33

Existe ainda a nuvem híbrida, que nada mais é que uma “combinação de uma nuvem

privada combinada com o uso de serviços de nuvem pública com um ou vários pontos de

contato entre os ambientes,”30 criando um ambiente diferenciado e unificado.

2.7.2 Características da Cloud importantes para o ecossistema de Big Data

Para que o Big Data possa realmente fornecer resultados positivos, o ambiente de

infraestrutura deve possuir clusters31 distribuídos com auto poder computacional. A Cloud

Computing fornece esse meio possuindo as seguintes características (HURWITZ et al., 2013,

tradução nossa):

Escalabilidade: Em relação ao hardware refere-se à capacidade de ir de

pequenas a grandes quantidades de poder de processamento com a

mesma arquitetura. Em relação ao software, se refere a consistência de

desempenho de acordo com o aumento de recursos de hardware. A

facilidade de escalonamento de pequena a grandes quantidades de dados,

e a computação distribuída, onde divide-se os dados entre vários

servidores em nuvem, são características da Cloud Computing;

Elasticidade: Refere-se à capacidade de aumentar ou diminuir a

demanda de recursos de computação em tempo real, com base na

necessidade. Isto traz benefícios para projetos Big Data, que conforme

aumenta a demanda e velocidade de dados, é necessária expandir a

quantidade de recursos computacionais;

Pool de recursos: A arquitetura de nuvem possibilita a criação eficiente

de grupos de recursos compartilhados que compõem a nuvem

economicamente viável;

Self-service: O usuário de um recurso em nuvem é capaz de usar um

navegador ou portal como interface para adquirir os recursos necessários,

como por exemplo, para executar um grande modelo preditivo. No caso

de um Data Center, o cliente seria obrigado a solicitar os recursos de

operações de TI necessário;

30Ibid., p. 74, tradução nossa. 31Conjunto de computadores trabalhando em uma mesma tarefa, onde cada nodo (computador) desempenha uma

parte do processo.

34

Muitas vezes, baixos custos iniciais: Se você usar um provedor de

nuvem, os custos iniciais muitas vezes pode ser reduzida, porque você

não está comprando grandes quantidades de hardware ou locação de um

novo espaço para lidar com o seu big data;

Pay as you go32: A opção de faturamento típico de um provedor de

nuvem é Pay as You Go (PAYG), o que significa que você é cobrado

pelo recursos utilizados com base em uma instância de preços;

Tolerância a falhas: prestadores de serviços em nuvem devem ter

tolerância a falhas construído em sua arquitetura, fornecendo serviços

ininterruptos, apesar da falha de um ou mais dos componentes do

sistema.

2.7.3 Big Data na Cloud Computing

Existem diversas maneiras de usar a nuvem como ambiente para Big Data, tudo

depende da necessidade da empresa e que tipo de serviço ela precisa. Alguns exemplos serão

citados a seguir:

IaaS33 em uma nuvem pública: pode oferecer virtualização, armazenamento quase

sem limites e poder computacional. “Você pode escolher o sistema operacional que quiser, e

ter a flexibilidade para redimensionar dinamicamente o ambiente para atender às suas

necessidades.”34

PassS35 em uma nuvem privada: “PassS permite que uma organização alavanque os

serviços de middleware36 sem ter que lidar com as complexibilidade do gerenciamento

individual de elementos de software e hardware.”37 Estas nuvens estão integrando tecnologia

como Hadoop e MapReduce, e o tempo de implantação é curto se comparado com outras

tecnologias.

SaaS38 em uma nuvem híbrida: a SaaS permite análise de dados gerados pelos

usuários e clientes. Estas informações são de extrema importância para uma empresa, e pode

32Similar a plano de celular pré-pago, com fácil cancelamento, sem multa e sem contrato. 33Infraestrutura como Serviço – Infrastructure as a Service. É um dos mais importantes serviços de Cloud

Computing. 34Ibid., p. 77, tradução nossa. 35Plataforma como Serviço – Platform as a Service. Serviço de Cloud Computing. 36Mediador entre software e demais aplicações envolvidas na computação distribuída. 37Ibid., p. 77, tradução nossa. 38Software como Serviço – Software as a Service. Serviço de Cloud Computing que fornece plataforma

multiusuário.

35

gerar valiosos insights sobre o comportamento, gostos e ações dos clientes em relação a esta

empresa. “Seu fornecedor SaaS fornece a plataforma para a análise, bem como os dados de

mídias sociais. Você pode utilizar seu dados de CRM39 da empresa em seu ambiente de

nuvem privada para inclusão na análise.”40

2.8 Produtos de Cloud Computing para Big Data no mercado

Existem diversas empresas que fornecem produtos e serviços na nuvem. Mas algumas

delas são especialmente para oferecer suporte para o Big Data (HURWITZ et al., 2013,

tradução nossa).

Amazon Elastic Compute Cloud (Amazon EC2): Fornece poder

computacional redimensionável, e de fácil escalabilidade. Aqui,

elasticidade refere-se à capacidade que os usuários do EC2 tem que

aumentar ou diminuir os recursos de infraestrutura atribuídas para

atender as suas necessidades;

Amazon Elastic MapReduce (Amazon EMR): Permite o

processamento de grandes quantidades de dados. EMR utiliza uma

estrutura Hadoop hospedada em execução no EC2 e Amazon Simple

Storage Service (Amazon S3);

Amazon DynamoDB: É um banco de dados do tipo NoSQL, tolerante a

falhas, possui serviço de armazenamento de dados altamente disponíveis

oferecendo auto provisionamento, escalabilidade transparente e simples

administração;

Amazon Simple Storage Service (Amazon S3): Fornece

armazenamento de dados para Internet, com auto desempenho e

escalabilidade. Os dados são armazenados em “baldes” e você pode

selecionar uma ou mais regiões do mundo para armazenamento físico

para enfrentar latência ou necessidades regulatórias;

Amazon High Performance Computing (HPC): Ajustado para tarefas

especializadas, este serviço fornece baixa latência sintonizados à clusters

de alto desempenho. Possibilita a execução de trabalhos acadêmicos e

39Gestão de Relacionamento com o Cliente – Customer Relationship Management. 40Ibid., p. 78, tradução nossa.

36

solução de problemas complexos, podendo ser reconfigurado com

facilidade para novas tarefas;

Amazon Redshift: Fornece um serviço de data warehouse, trabalhando

na escala de petabytes, construído em uma arquitetura MPP41 escalável

[...] oferece uma alternativa segura e confiável para Data Warehouses

internos e é compatível com diversas ferramentas populares de Business

Intelligence;

Google Compute Engine: Fornece um serviço seguro e flexível,

baseado em máquinas virtuais. O Google também fornece soluções de

gerenciamento de workloads de vários parceiros tecnológicos que tem

otimizado os seus produtos para o Google Compute Engine;

Google Big Query: Serviço que permite consultas SQL em grande

quantidade de dados. Considere Google Big Query como uma espécie de

sistema de processamento analítico online (OLAP) para Big Data. É bom

para relatórios ad hoc ou análise exploratória;

Google Prediction API: Serviço de aprendizagem de máquina, que

identifica e armazena padrões em grandes quantidades de dados. Os

padrões podem ser analisados para uma variedade de fins, incluindo a

detecção de fraude, a rotatividade de análise, e sentimento do cliente.

41Processamento Paralelo Massivo – Massive Parallel Processing.

37

CAPÍTULO III

3 FERRAMENTAS E CASOS DE USO DE BIG DATA

Depois de apresentado os processos e arquitetura do Big Data, será descrito

brevemente algumas das ferramentas mais conhecidas para capturar, organizar, integrar e

analisar dados. Estas ferramentas servem para resolver diversos problemas com análise de

dados distribuídos. Existem diversas ferramentas no mercado para análise de Big Data, mas

apenas algumas serão apresentadas.

Também será a citado alguns casos de usos de empresas que já implantaram e fazem

uso do conceito do Big Data, qual sua finalidade na organização e os benefícios obtidos com

sua aplicação.

3.1 MapReduce

MapReduce foi desenvolvida pela Google como um modelo de programação e uma

implementação associada para processamento e geração de grandes conjuntos de dados. Ela se

tornou um modelo para as demais implementações por utilizar clusters como plataforma e por

processar imensas quantidades de dados distribuídos.

Segundo Capriolo, Wampler e Rutherglen (2012, p. 03, tradução nossa) MapReduce

“decompõe trabalhos de manipulação de dados em tarefas individuais que podem ser

executadas em paralelo em um cluster de servidor. Os resultados das tarefas podem ser unidas

para computar o resultado final.”

O MapReduce é formado por duas principais tarefas, Map e Reduce. A função map

(mapa) converte elementos de dados de uma coleção de um formato para outro. Esta lista é

identificada por entradas de par chave-valor, que é convertido de zero-para-muitos pares

chave-valor de saída. As chaves de entrada e saída geralmente são totalmente diferentes e as

entradas e saídas dos valores geralmente são totalmente diferentes. Todos os pares de chaves

de uma determinada chave são enviados para a mesma função reduce. A função reduce

(redutor) recebe todos os conjuntos de valores que são convertidos para um valor, com a soma

ou média do conjunto ou para outra coleção. O par chave-valor final é emitido pelo redutor,

sendo que as chaves de entrada e saída podem ser diferentes (CAPRIOLO; WAMPLER;

RUTHERGLEN, 2012, tradução nossa).

38

3.2 Hadoop

Hadoop é um framework open source desenvolvido pela Yahoo! mas gerenciado como

um projeto da Apache Software Foundation. Este framework foi inspirado no MapReduce e

Google File System da Google. Tem por função o processamento de grandes conjuntos de

dados. Possui fácil escalabilidade e permite processamento distribuído em clusters de

computadores. Tem a capacidade de detecção de mudanças ou falhas, garantindo ajustes para

operar sem interrupções. (MANYIKA et al., 2011, tradução nossa).

De acordo com Hurwitz et al. (2013, tradução nossa) o Hadoop possui dois

componentes principais:

Hadoop Distributed File System (HDFS): Um sistema de

armazenamento de dados distribuídos que fornece alta largura de banda e

confiabilidade para transferência de dados relacionados entre máquinas;

MapReduce engine: Uma implementação paralela distribuída de alto

desempenho de processamento de dados do algoritmo MapReduce.

O Hadoop foi criado para processar uma grande escala de dados estruturados e

desestruturados e isso faz com que ele faça uma grande diferença em relação a outros

softwares que se restringem a somente dados estruturados.

3.3 Hive

Segundo Hurwitz et al. (2013, p. 122, tradução nossa) “Hive é uma camada de data

warehouse orientada a lotes, construída sobre os principais elementos do Hadoop (HDFS e

MapReduce).” Criada pela Apache, o Hive possibilita consultas e gestão de grandes conjuntos

de dados distribuídos. De acordo com Capriolo, Wampler e Rutherglen (2012, p. 01, tradução

nossa) “Hive fornece um dialeto SQL, chamado Hive Query Language (HiveQL ou HQL)

para consultar dados armazenados em um Cluster Hadoop.”

Hive não foi projetado para responder rapidamente à consultas. Ele é melhor usado

com mineração de dados e análises mais profundas que não exigem comportamentos em

tempo real. Diferente dos Data Warehouses comuns, o Hive é flexível, extensível e escalável.

3.4 MongoDB

39

MongoDB é um banco de dados NoSQL open source orientado a documentos,

mantido pela companhia MongoDB42 que fornece suporte para versões comerciais.

MongoDB é composto por bancos de dados que contém coleções que contém

documentos que por sua vez contém campos. Permite indexar uma coleção aumentando o

desempenho da pesquisa de dados, trazendo como retorno um “cursor” que serve como

indicador para os dados, que proporciona a contagem ou classificação dos dados sem precisar

extraí-lo. Nativamente, MongoDB suporta o BSON que é a implementação binária de

documentos JSON43. O ecossistema do MongoDB fornece alta disponibilidade, escalabilidade

e um sistema de arquivos baseado em GriDFS44 que permite a divisão de arquivos grandes em

pequenos documentos. Possui o núcleo do MapReduce para suportar análise e agregação de

diferentes coleções/documentos, um serviço de fragmentação de banco de dados em um

cluster de servidores para um ou diversos data centers e provê suporte à consultas ad hoc,

distribuídas e pesquisa de texto completo. As implementações do MongoDB incluem

gerenciamento de conteúdo de alto volume, análises em tempo real, arquivamento, e redes

sociais (HURWITZ et al., 2013, tradução nossa).

3.5 Pig

Pig é uma plataforma criada pela Apache que analisa grandes conjuntos de dados e

simplifica as tarefas comuns do trabalho com o Hadoop. Ele faz o uso do Hadoop mais

acessível e utilizável por não desenvolvedores. Fornece um ambiente de execução interativa,

dando suporte ao Pig Latin, uma linguagem utilizada para expressar os fluxos de dados. A

linguagem Pig Latin suporta o carregamento e processamento de entrada de dados produzindo

o resultado desejado (DUMBILL, 2012a, tradução nossa).

O usuário Pig é absolvido de escrever código, compilar, empacotar, enviar e recuperar

os resultados. A linguagem Pig Latin fornece uma forma abstrata de obter respostas do Big

Data, tendo como foco os dados. Esta linguagem também suporta operações como

carregamento e armazenamento de dados, transmissão, filtragem, agrupamento e união,

classificação, combinação e divisão de dados (HURWITZ et al., 2013, tradução nossa).

42Antiga 10gen, que alterou o nome para MongoDB. Ver www.mongodb.org. 43Notação de Objeto – JavaScript JavaScript Object Notation. É um formato padrão aberto que usa texto legível

para transmitir objetos de dados consistindo de pares chave-valor. 44GridFS é uma especificação para armazenamento e recuperação de arquivos que excedam o limite de tamanho

BSON-documento de 16MB.

40

3.6 Casos de Uso de Big Data

Um exemplo de sucesso na análise de Big Data é a Amazon, que armazena todos os

dados dos seus clientes, desde o que ele pesquisou, comprou, quando e onde. Utilizando estas

informações a Amazon aplica algoritmos para comparar esta informação de um cliente com a

informação de todos os outros clientes. O objetivo é saber qual produto seus clientes irão

comprar. Um outro exemplo seria um cliente que está comprando uma jaqueta em uma região

muito fria onde faz neve. O sistema analisa os dados do cliente e sugere luvas para combinar,

ou botas, ou outros produtos relacionados. Estes dados combinados com outros dados

públicos como sensos, meteorológicos e até dados de redes sociais, criam uma capacidade

única de entender os clientes, fornecendo assim o melhor produto (OHLHORST, 2013,

tradução nossa).

Luiza Dalmazo, editora da revista online Exame.com, em uma publicação chamada

“Um fenômeno chamado Big Data” apresentou alguns exemplos de empresas americanas e

brasileiras que estão fazendo uso desse conceito e quais os benefícios obtidos dessa

tecnologia. Luiza cita que a empresa americana Walmart, que é a maior varejista do mundo,

utiliza softwares que monitoram por exemplo, quando discussões sobre o campeonato de

futebol americano se intensifica na Internet em diferentes cidades dos Estados Unidos. Com

esses dados, em questão de horas as lojas dessas regiões passam a expor nas vitrines produtos

relacionados com determinados times. A Walmart possui mais de 12 sistemas diferentes que

processam cerca de 300 milhões de atualizações das redes sociais, como Facebook e o Twitter

(DALMAZO, 2012).

A Lojas Renner, uma das maiores redes no setor de vestuário do país, utiliza desde

2010 um sistema que analisa em tempo real as vendas de suas mais de 150 lojas. Nos dias em

que as lojas que se localizavam em lugares frios vendiam muitos casacos, os gerentes das

lojas com desempenho abaixo da média recebiam um aviso do sistema para mudar de posição

os produtos que estavam nas vitrines. Ao lançar uma nova coleção, a Renner posta algumas

fotos de peças no Facebook, para verificar a aceitação. Isto ajuda a prever o estoque

necessário de cada produto (DALMAZO, 2012).

Outro exemplo é a empresa americana EMC, especializada em tecnologias de

armazenamento, que investiu recentemente 100 milhões de dólares em uma central de

pesquisas no Rio de Janeiro, com o objetivo de dar suporte para empresas do setor de petróleo

e gás, como a Petrobras. A estatal brasileira utiliza softwares de Big Data que analisam

milhares de dados sobre o desempenho de suas máquinas e as condições dos poços. Em junho

41

de 2012 a Petrobras investiu 15 milhões de reais em um supercomputador para processar

informações colhidas na camada do pré-sal. Segundo Karin Breitman, diretora do centro de

pesquisa da EMC, “sem o Big Data seria impossível planejar a exploração do pré-sal, com

seus milhares de variáveis relacionadas a áreas como segurança e resistência dos

equipamentos.” (DALMAZO, 2012).

42

CONSIDERAÇÕES FINAIS

Neste novo mundo do Big Data, a quantidade de dados na web vem crescendo

constantemente, e com o surgimento de novas tecnologias é gerado novos formatos de dados.

Essa é uma oportunidade que está disponível a todos, e qualquer pessoa com iniciativa pode

tirar proveito dela. Várias organizações enchergaram o potencial do Big Data e estão criando

iniciativas para utilizar esta imensidão de dados e gerar algum valor para seus negócios.

Sendo assim, o objetivo deste estudo é mostrar como a evolução da web e o

crescimento exponencial dos dados desestruturados podem ser agregados e revelar

relacionamentos e padrões de informações nunca vistos anteriormente.

Big Data não é um tema novo, mas seu conceito está adquirindo maturidade agora,

desta maneira, não encontra-se muito material disponível, limitando assim a abordagem aqui

utilizada. Outro porém é o limite de tempo, que impediu maior abrangência do tema com

maior cautela e profundidade.

Utilizando pesquisa bibliográfica, foi apresentado quais os processos devem ser

levados em conta para geração de informação, qual ciclo de gerenciamento do Big Data e

quais são as tecnologias disponíveis que oferecem suporte ao Big Data.

O Big Data está mudando a maneira como as empresas lidam com os dados. Muitas

corporações tem transformado o conceito de análise de dados e utilizado Big Data para obter

insights sobre seus clientes ou criar seus produtos, gerando assim uma nova abordagem para

tomada de decisão. Além disso, na análise do Big Data os setores de marketing, negócios e TI

estão trabalhando em conjunto na geração de valor para a empresa, acarretando na criação de

novos cargos e empregos e também influenciando na competitividade entre as corporações.

Diversas abordagens podem ser analisadas para dar continuidade a este documento, e

por ser um tema relativamente inovador, pode-se dar prosseguimento apresentando um

projeto de implementação da análise do Big Data para solução de algum problema ou para

criação de algum produto. Também seria interessante aprofundar na análise dos processos do

ciclo de gerenciamento do Big Data, assim como sua real aplicação em algum ambiente

interativo.

43

REFERÊNCIAS BIBLIOGRÁFICAS

CAPRIOLO, Edward; WAMPLER, Dean; RUTHERGLEN, Jason. Programming Hive.

Sebastopol - CA: O’Reilly Media, Inc., 2012.

DALMAZO, Luiza. Um fenômeno chamado Big Data. Exame.com, São Paulo, out. 2012.

Disponível em: <http://exame.abril.com.br/revista-exame/edicoes/1025/noticias/para-nao-se-

afogar-em-numeros?page=1>. Acesso em: 08 nov. 2013.

DUMBILL, Edd. Planning for Big Data. Sebastopol – CA: O’Reilly Media, Inc., 2012.

DUMBILL, Edd. What is Big Data? 2012: In: O’Reilly Media, Inc. Big Data Now. 2. ed.

Sebastopol - CA: O’Reilly Media, Inc., 2012.

FACHIN, Odília. Fundamentos de Metodologia. 5. ed. [rev.] – São Paulo: Saraiva, 2006.

FOWLER, Geoffrey A. Facebook: One Billion and Counting. The Wall Street Journal, New

York, 4 Oct. 2012. Disponível em:

<http://online.wsj.com/news/articles/SB10000872396390443635404578036164027386112>.

Acesso em: 23 mai. 2013.

HURWITZ, Judith et al. Big Data For Dummies, a Wiley Brand. New Jersey: John Wiley &

Sons, inc., 2013.

IBM – International Business Machines. What is Big Data. [s.l]. 2012. Disponível em:

<http://www-01.ibm.com/software/data/bigdata/>. Acesso em: 19 maio 2013. Não Paginado.

INPI, INSTITUTO NACIONAL DA PROPRIEDADE INDUSTRIAL. Cloud Computing.

[FERNÁNDEZ, Alberto; MARCELINO, João; MARQUES, Patrícia, Examinadores da

patente]. [s.l]. 2011. Disponível em:

<http://www.marcasepatentes.pt/files/collections/pt_PT/1/300/301/Cloud%20Computing.pdf

>. Acesso em: 14 set. 2013.

JOSH, James. How much data is created every minute? Domosphere, American Fork, 8 June.

2012. Disponível em: < http://www.domo.com/blog/2012/06/how-much-data-is-created-

every-minute/?dkw=socf3>. Acesso em: 29 mai. 2013.

KISS, Jemima. Facebook hits 1 billion users a month - Founder Mark Zuckerberg confirms

that the social network now has 1 billion active users a month, theguardian, London, 4 Oct.

2012. Disponível em: < http://www.theguardian.com/technology/2012/oct/04/facebook-hits-

billion-users-a-month>. Acesso em 14 set. 2013.

MANYIKA, James et al. Big Data: The next frontier for innovation, competition, and

productivity, San Francisco, June. 2011. Disponível em:

44

<http://www.mckinsey.com/insights/business_technology/big_data_the_next_frontier_for_inn

ovation>. Acesso em: 23 set. 2013.

MARCONI, M. A.; LAKATOS, E. M. Técnicas de pesquisa: planejamento e execução de

pesquisas, amostragens e técnicas de pesquisa, elaboração, análise e interpretação de dados. 2.

ed. São Paulo: Atlas, 1990.

MATESCO, Virene R.; SCHENINI, Paulo H. Economia para não economistas – Princípios

básicos de economia para profissionais empreendedores em mercados competitivos. 4. Ed.

Rio de Janeiro: Senac-Rio, 2009.

OHLHORST, Frank, Big Data Analytics: Turning big data into big money. Hoboken, NJ:

John Wiley & Sons, Inc., 2013.

REIS, Linda G. Produção de monografia: da teoria à prática. 2. ed. Brasília: Senac-DF,

2008.

SCHNEIDER, Robert D. Hadoop for Dummies. Mississauga, ON: John Wiley & Sons

Canada, Ltd., 2012.

VAISH, Gaurav, Getting Started with NoSQL – Your guide to the world and technologiy of

NoSQL. Birmingham, UK: Packt Publishing Ltd., 2013.

ZADROZNY, Peter; KODALI, Raghu, Big Data Analytics Using Splunk – Deriving

Operational Intelligence from Social Media, Machine Data, Existing Data Warehouses, and

Other Real-Time Streaming Sources. San Jose, CA: Apress, 2013.

ZOUAIN, Roberta R. As Armas da Raposa: Como os novos produtores de conteúdo estão

mudando a comunicação – e o que a publicidade tem a ver com isso. Trabalho de conclusão

de curso. Universidade de São Paulo – Escola de Comunicação e Artes. São Paulo, 2006.

Disponível em: <http://www.slideshare.net/joaogpublicitario/web-20-1107989>. Acesso em:

13 set. 2013.


Top Related