Introdução

Nesse texto vamos conversar um pouco sobre o BigData, passaremos pelos conceitos iniciais, o que ele resolve e como podemos iniciar. Não é mais possível lidar com os dados como lidávamos antigamente, o grande volume de dados que temos é hoje é muito superior ao que tínhamos no passado recente. Hoje uma empresa produz dados de diversas fontes diferentes, como: vídeos, imagens, postagens e comentários em redes sociais e claro seus sistemas internos.

img | 500

Tirar proveito desses dados é essencial para qualquer empresa, tudo sempre está interligado, todas as ações nas redes sociais devem ter algum tipo de impacto na operação da empresa, e com os conceitos de BigData podemos ter uma visão bem mais realista e baseada em dados.

Conceitos Iniciais

Para que possamos dar início ao entendimento sobre BigData, precisamos entender suas características, características essas chamadas de 5Vs.

Vs Descrição
Volumes Quantidade de dados na escala de Terabytes ou mais
Variedade Capacidade de lidar com vários tipos de dados, sendo eles estruturados, semi estruturados ou não estruturados
Velocidade Velocidade em que essas dados são gerados, consumidos e armazenados
Veracidade Capacidade de cruzamento de dados com bases públicas para garantir que estamos sempre lidando com verdade, qualidade dos dados, onde todos os valores fazem sentido quando analisados juntos.
Valor Quando os dados são categorizados de forma que agreguem valor para o negócio

O uso do BigData ainda é pouco entendido, ainda temos empresas com um grande volume de dados mas ainda não tira proveito desse modelo, podendo está ocasionando riscos ao negócio.

O que o BigData resolve ?

A abordagem de BigData trás um grande potencial de negócio para as empresas, como entendimento mais refinado do mercado com o uso de Machine Learn, com um bom volume de dados podemos rodar alguns algoritmos que executam tarefas como uma análise preditiva que nos ajuda a entender futuros comportamentos e tendências, facilitando assim a tomada de decisão, e tudo usando como base o dados históricos.

Como podemos iniciar ?

Para iniciar um projeto de BigData não é tarefa tão simples e nem tão rápida, podemos dividir as ferramentas sobe dois pontos de vista, de Analytics e o Infraestrutura, no ponto de Analytics, temos duas ferramentas principais que é o Hadoop e o MapReduce que lidam diretamente com o dado e no ponto de Infraestrutura, que é o que sustenta tudo, temos o destaque dos bancos não relacional, que são usados para conseguirmos lidar com todos os 5v pontuados no início.

Bancos de dados NoSQL

Para lidar melhor a variedade e velocidade que os dados chegam, usar banco de dados relacional pode ser um “gargalo” dando espaço para o surgimento de banco de dados NoSQL, que são banco de dados mais flexíveis.

Existem alguns tipos de bancos NoSQL, esses tipo são:

Tipo Exemplo
Colunares Cassandra
Chave Valor Redis
Documento MongoDB
Grafos Neo4J

Referência: https://aws.amazon.com/pt/nosql/

Apache Hadoop

Hadoop é uma ferramenta open source, na prática tira proveito do MapReduce que em resumo é um framework para processamento paralelo de dado e o Hadoop Distributed File System (HDFS) que é um sistema de arquivos distribuído para lidar com dados não estruturados.

Dados não estruturados: são dados que não seguem um padrão como um banco de dados relacional ou um CSV, por exemplo imagem, áudio e vídeo, cada informação tem suas especificidades, como um vídeo, eles tem diversos tons, frequências que são informações difíceis de armazenas.

Hadoop faz parte de um ecossistema que tem outras ferramentas com:

  • Hive
  • Pig
  • Spark

Disponibilidade

Hadoop consegue garantir a disponibilidade do dado, pois ele armazena o mesmo dado em nós diferentes para quando um determinado nó estiver off ele conseguirá pegar o mesmo dado em outro local.

Ele tem um ambiente formado por clusters, onde teremos um nó principal e outros secundários. Com esses clusters compartilhando Hardware é possível processar toda a informação necessária.

hadoop.png

Fonte: https://www.geeksforgeeks.org/hadoop-architecture/

Ele usa a estrutura de MapReduce que divide o processamento em dois, o Mapper e depois o resumo reduce, é pego um grande volume de dado, é mapeado para uma perspectiva e depois é aplicado uma redução ou seja um resumo ou agregação para chegar em um resultado mais objetivo.

Big Data Analytics

Basicamente lida com a análise do um grande volume dados estruturados, semi-estruturados e não estruturado envolvendo diversas tecnologias como Hadoop, Spark, NoSQL.

Para iniciar um projeto de BigData Analytics é preciso mapear todas as fontes de dados, podendo ser estruturada ou não estruturada.

Precisamos também de ferramentas de ETL para automatizar todo o processo de inserção de dados, como pode exemplos:

  1. Apache Hop
  2. Apache AirFlow
  3. Apache Flame

Por fim as ferramentas de visualização dos dados, como Power BI, Qlik, Tebleau e etc