Diferença entre banco de dados relacionais e não relacionais

Entenda a diferença entre banco de dados relacionais e não relacionais, representação SQL e NoSQL, e o conceito de Big Data como as empresas utilizam.

Leia também:

Os bancos de dados estudados anteriormente, eram bancos de dados relacionais, ou seja, existiam relações entre as tabelas que formavam estes bancos de dados. Entretanto, atualmente, fica cada vez mais necessária a análise de grande quantidade de dados e, a partir destes dados se obter respostas praticamente em tempo real

Estas necessidades restauraram o antigo conceito de banco de dados não relacionais NoSQL que, muitas vezes podem fornecer análises mais rápidas, porém, sem os rígidos requisitos de Bancos de Dados Relacionais extremamente estruturados como são o SQLs bem configurados.

Tipos de Bancos de Dados


Entendendo:
  • NoSQL representa Not Only SQL, que em tradução livre pode ser considerado como “não somente SQL”. Uma interpretação errada, muitas vezes feitas por tradutores ou mesmo pessoas que desconhecem o assunto pode levar a se entender que NoSQL representa negar totalmente os conceitos de banco de dados estruturados, isto não é correto pois os bancos de dados NoSQL possuem dados estruturados, semi estruturados e não estruturados


Conceito de Bandos de dados não relacionais

Sistemas de Bancos de Dados não relacionais, utilizam um modelo mais flexível que o modelo tradicional de tabelas que contêm linhas e colunas, para armazenar dados. Este modelo permite um armazenamento mais dinâmico, portanto mais rápido de ser efetivado e consultado, possibilitando que a coleta de dados se dê em tempo menor. Desta maneira a análise de grande quantidade de dados pode ser feita com maior velocidade o que se torna muito importante nos dias de hoje.

Conceito de Bandos de dados não relacionais

Podemos afirmar que, bancos de dados relacionais acabam lidando com muitas entradas e saídas de dados, enquanto que, Bancos de Dados não relacionais podem ser mais rápidos no processamento de grande quantidade de dados visto que, o rigor do armazenamento é menor, permitindo a utilização de menos campos visto que, as configurações destes podem ser mais flexíveis.

Um exemplo que pode explicar a diferença no rigor do armazenamento entre banco de dados relacionais e não relacionais pode ser a utilização de um campo data que, em um banco de dados relacional foi definido para aceitar o valor de uma data no formato DDMMAAAA. Se em determinado momento precisamos que este campo aceite também um fuso horário no formata GMDXX, a alteração do formato deste campo em um banco de dados relacional irá gerar um grande retrabalho em todo o banco e nos comandos do software que está conversando com este banco. 

  • NoSQL
    • Representa
      • Not Only SQL
        • Utilizam um modelo mais flexível
          que facilita armazenar dados diversificados.
        • Mais dinâmico e mais rápido de ser
          consultado

Se ao invés de um banco de dados relacional se estiver trabalhando com um banco de dados não relacional, é possível flexibilizar este campo para a partir do momento começar a receber os dados como se deseja e as instruções que irão manipular estes dados terão que ter a opção de entender dados antigos somente com DDMMAAAA e dados novos já com o acréscimo do GMDXX. Este exemplo nos mostra que a utilização de bancos de dados não relacionais permite a utilização mais flexível, característica esta que é muito requisitada em momentos de tantas mudanças como os atuais. 

Segundo Henchen, 2013, Banco de Dados NoSQL são capazes de receber informações estruturadas, semiestruturadas e não estruturadas, sem a necessidade do processo tedioso, caro e demorado de mapeamento do banco para que os dados sejam normalizados para um esquema rígido, tal como exigido pelos bancos de dados relacionais.


Exemplos de NoSQL

Existem diversos tipos de NoSQL, o comportamento e as regras podem ser diferentes, mas na maioria, não há necessidade de predefinir uma estrutura formal do banco assim como não é necessário alterar as configurações caso novos conjuntos de dados surjam.

Alguns exemplos:

  • Oracle NoSQL da Oracle;
  • SimpleDB da Amazon;
  • DynamoDB da Amazon;
      • DynamoDB é para usuários com mais necessidades que os de SimpleDB pois:
        • Disponibilizado para serviços com maior escalabilidade
        • Executação em SSDs (discos de estado sólido)
  • MongoDB de código aberto;

Quando se trabalha com grandes bancos de dados algumas características são importantíssimas, rapidez de processamento, que pode ser alcançado com processamentos em disco de estado sólido SSDs e escalabilidade que é a condição do sistema ser expandido à medida que o cliente precisa de mais recursos, resultando, portanto, em aumento de custos, mas também de ser contraído caso o usuário não esteja utilizando. Esta propriedade é muito importante em casos de picos de vendas como períodos específicos no ano.


Como empresas usam NoSQL

Banco de dados não relacionais podem ser utilizados por empresas para prever tendências de mercado momentâneas, identificar preferências de clientes e mostrar opções quando clientes estão em condições de melhor aceitar estas ofertas.

Exemplos:

  • Um viajante se aproxima de uma loja de vinhos
    • Em seu SmartPhone aparecem lembretes que o vinho que ele mais compra está em oferta na loja.
  • Uma pessoa entra no Shopping
    • Em seu SmartPhone aparece uma promoção da loja de sapatos onde ele sempre compra. 

Uma pessoa entra em um shopping e recebe informações sobre sapatos em promoção, visto que a última vez que ele visitou este shopping ele comprou um par de sapatos.

Estas ofertas, também podem ser feitas utilizando Banco de Dados Relacionas, mas, a estrutura de Banco de Dados não Relacionais, facilita a identificação destes possíveis clientes e pode oferecer os lembretes ou promoções em tempo real, ou seja, quando ele está se aproximando do local que vende os produtos. 

 

Big Data

A grande quantidade de dados que trafega, especialmente na Web no mundo de hoje, começa a ser um desafio para empresas que desejam analisá-las e a partir destas análises obter dados que possam ajudar em seus negócios com previsões e oportunidades.

Estes dados, podem ser alocados em bancos de dados estruturados, mas, devido a sua grande diversidade e a constante ocorrência de novos eventos, fica muito difícil alterar estruturas de banco de dados para alocar corretamente novas ocorrências, ou também pode acontecer que, estas ocorrências tenham duração e interesse por tempo muito escasso, então, é necessário conhecer estas informações rapidamente e tirar proveito destas informações, enquanto elas são válidas, pois, em momentos próximos elas podem não ser mais tão relevantes.

  • A grande quantidade de dados que trafega, especialmente na Web no mundo de hoje é um:
    • Desafio para empresas que desejam analisá-las.
    • A partir destas análises obterem dados que possam ajudar em seus negócios com previsões e oportunidades.
    • Na maioria das vezes...
      • Respostas precisam ser rápidas

Veja no exemplo a seguir:
Um sistema detecta que aconteceu uma falha no sistema de distribuição de água potável em um bairro, que irá durar um dia. Um supermercado possui em seu estoque muito próximo à sua loja deste bairro, uma grande quantidade de garrafas de água. Se este supermercado ficou sabendo do problema imediatamente ele pode mover este estoque para fazer uma grande venda que irá durar um dia. Por outro lado, obter esta informação um dia após, quando o abastecimento de água já estiver normalizado, de nada vai adiantar. 


Como são os dados em Big Data

Atualmente, 85% dos dados analisados em Big Data não são estruturados, são obtidos por filmes, vídeos, comportamento de pessoas que muitas vezes dependem do contexto em que elas estão inseridas. É muito importante observar que pode ser fundamental o comportamento das pessoas, visto que à medida que sistemas conseguem identificar tendências de comportamentos o leque de opções para o oferecimento de serviços e produtos para estas pessoas aumenta muito, sendo, portanto, está uma das principais áreas de Big Data dos dias de hoje auxiliados por conhecimentos de inteligência artificial.

  • Exemplo:
  • Sistema detecta que aconteceu uma falha no sistema de distribuição de água potável em um bairro, Previsão de conserto em um dia. 
  • Um supermercado possui em seu estoque muito próximo à sua loja deste bairro, uma grande quantidade de garrafas de água.
      • O supermercado ficou sabendo e transferiu rapidamente o estoque e fez uma grande venda do produto que estava estocado.
          • ou
      • O supermercado ficou sabendo um dia depois e de nada adiantou a informação pois o abastecimento já estava normalizado


Quem utiliza Big Data

Não somente grandes empresas, mas empresas de médio e até de pequeno porte estão utilizando largamente Big Data em suas forças de vendas e em determinar desejos e comportamentos de usuários. Redes sociais procuram direcionar propagandas e postagens que atendam os interesses e desejos de clientes. Estes procedimentos devem ser considerados cada vez mais pela humanidade pois, além de se induzir consumo muitas vezes pode se estar induzindo comportamentos o que pode ser extremamente perigoso na manipulação de massas.

Nenhum comentário:

Postar um comentário