MONGODB E BIG DATA: UMA ANÁLISE DE PERFORMANCE
Por: rafa1303 • 15/9/2017 • Artigo • 1.424 Palavras (6 Páginas) • 367 Visualizações
MONGODB E BIG DATA: UMA ANÁLISE DE PERFORMANCE
Aluno
Email do aluno
Abstract. This article demonstrates the importance of using NoSQL databases for performance on Big Data structures.
Key-words: Big Data, NoSQL, MongoDB
Resumo. Este artigo demonstra a importância do uso de bancos de dados NoSQL para desempenho em estruturas de Big Data.
Palavras-chaves: Big Data, NoSQL, MongoDB
Introdução
Nos últimos tempos, houve uma grande evolução da internet, da informática, da quantidade de dados que são criados, tratados e trafegados diariamente, de forma não padronizada. Com a necessidade de ter tudo isso feito de forma ágil, gerou-se o termo Big Data.
A partir de todo esse armazenamento de dados, observou-se a oportunidade da utilização de dados para gerar informações gerenciais pertinentes à melhoria de geração de receita, desempenho, tráfego, visitas, melhor adaptação do produto ao cliente, etc.
Visto que a quantidade de informações é gigantesca e, consequentemente, a necessidade de processamento e armazenamento, é trazido junto com o Big Data a necessidade de um modelo de Banco de Dados mais dinâmico, que aceite a entrada de informações não padronizadas. Na maioria dos casos, no Big Data, é utilizado o modelo de Banco de Dados NoSQL (Not Only SQL) para que essa demanda seja atendida.
A seguir, veremos a importância do uso do MongoDB.
Big Data
Não é certa a origem da expressão “Big Data”, mas é sabido que, nos dias atuais, o termo refere-se a: “imenso volume de dados – estruturados e não estruturados – que impactam os negócios no dia a dia” [sas.com].
Big Data fundamenta-se em 5 V’s apresentados a seguir.
Volume
O primeiro V é para Volume: volume de dados gerados constantemente. Trata-se de todo tipo de informação gerada a cada segundo como e-mails, pesquisas feitas, mensagens trocadas, interações em redes sociais, fotos, registro de localização, temperatura e quaisquer outras coisas geradas por sensores ou interações na internet. Há a necessidade da análise de cada uma dessas informações, se possível.
Velocidade
O segundo V é para Velocidade: velocidade em que as informações são geradas e são armazenadas/processadas. É de suma importância que as informações sejam analisadas rapidamente porque se, por exemplo, um programa que faz a gestão de bolsas de valores não se atualizar no tempo necessário, poderá haver uma grande perda de dinheiro.
Variedade
O terceiro V é para Variedade: a variedade de informações que existe e que é necessária para ser armazenada. Assim como citado no item “volume”, além do volume de informações ser grande, ele é muito diversificado.
Veracidade
O quarto V é para Veracidade: a veracidade está vinculada a confiabilidade do que é entendido das informações armazenadas. Por exemplo, podemos converter um arquivo de voz para texto para que o computador consiga processar aquilo de forma entendível, mas, não necessariamente, esse arquivo será convertido para texto da forma correta. Esse é um desafio em Big Data pois, se o que está armazenado não for bem compreendido, não terá adiantado muito o tempo investido nisso.
Valor
O último V é para Valor. A partir de uma análise conjunta dos 4 V’s anteriores, pode ser gerado um Insight, que é o entendimento da informação armazenada e a possibilidade de gerar algum valor à quem interessa aquela informação (valor agregado ou valor econômico). Por exemplo, eu tiro uma foto de um amigo meu. A partir de uma quantidade de fotos armazenadas no Facebook sobre essa pessoa, o Facebook, automaticamente, sugere que eu envie essa determinada foto para esse determinado amigo e isso pode ocorrer, quase que instantaneamente, com todos os usuários.
Gráficos
A seguir veremos alguns dados que reforçam a importância de Big Data.
Na figura 1, podemos visualizar uma estimativa de dados armazenados de acordo com UNECE.
Figura 1. Evolução de dados armazenados
Grande parte desses dados armazenados são não estruturados, de formatos não padronizados e de difícil assimilação, conforme figura 2.
Figura 2. Evolução de dados armazenados
Com a necessidade de armazenamento de dados acima apresentados, existe a necessidade do uso de bancos de dados NoSQL em grande parte do armazenamento de dados de big data. Alguns dados ainda são importantes de serem armazenados de forma estruturada, visto que é possível ter uma melhor assimilação das informações.
A seguir, veremos qual a utilidade e desempenho do MongoDB, um dos exemplos de bancos de dados NoSQL e o mais utilizado atualmente, conforme ranking exibido abaixo:
Figura 3. Ranking de DB-Engines mais populares
Soluções em Big Data
Além de lidar com volumes extremamente grandes de dados dos mais variados tipos, soluções de Big Data também precisam trabalhar com distribuição de processamento e elasticidade, isto é, suportar aplicações com volumes de dados que crescem substancialmente em pouco tempo.
O problema é que os bancos de dados "tradicionais", especialmente aqueles que exploram o modelo relacional, como o MySQL, o PostgreSQL e o Oracle, não se mostram adequados a estes requisitos, já que são menos flexíveis.
Isso acontece porque bancos de dados relacionais normalmente se baseiam em quatro propriedades que tornam a sua adoção segura e eficiente, razão pela qual soluções do tipo são tão populares: Atomicidade, Consistência, Isolamento e Durabilidade. Esta combinação é conhecida como ACID, sigla para o uso destes termos em inglês: Atomicity, Consistency, Isolation e Durability. Vejamos uma breve descrição de cada uma:
...