Relacional x NoSQL
Por: Amamiya Laianna • 22/11/2015 • Resenha • 494 Palavras (2 Páginas) • 345 Visualizações
Modelo Relacional e NoSQL
Nas últimas décadas o mercado de armazenamento de dados vinha sendo dominado pelos bancos de dados relacionais. O modelo relacional surgiu como uma alternativa aos modelos de rede e hierárquico e cresceu devido às vantagens que possuía em relação a estes. Contudo a quantidade de dados armazenados vem crescendo junto com a tecnologia, fazendo com que o desempenho das aplicações, que utilizam grandes bancos de dados, diminua. Pensando na crescente demanda por dados um novo modelo está se destacando, o NoSQL.
Organizações que lidam diariamente com grandes quantidades de dados, como por exemplo, a Google que em 2009 processava cerca de 20 Petabytes de informações por dia [1], buscaram uma nova estratégia de armazenamento que minimizasse os problemas de flexibilidade que o modelo relacional possui. Devido à natureza estruturada, percebeu-se a dificuldade que há neste modelo em organizar os dados em um sistema distribuído com particionamento de dados. Dessa necessidade, surgiu a ideia do NoSQL (Not Only SQL – Não apenas SQL) uma alternativa ao modelo Relacional utilizado principalmente nos casos em que este não apresenta bom desempenho. [2]
Ao tratar de sistemas distribuídos existe um teorema, CAP (Consistency, Availability e Partition Tolerance), que afirma que qualquer sistema de dados compartilhados em rede pode ter apenas duas de três propriedades desejáveis: consistência, disponibilidade e tolerância ao particionamento [3]. No modelo relacional há consistência das informações; no NoSQL há a disponibilidade e tolerância ao particionamento, porém este possui uma consistência eventual, onde não existe garantia na consistência dos dados após uma operação de escrita ser realizada no banco.
Sistemas baseados no modelo NoSQL vem sendo utilizados e desenvolvidos por empresas mundialmente famosas: Em 2004 a Google lançou o BigTable, um sistema orientado a colunas (assim como o Cassandra); em 2007 a Amazon apresentou o Dynamo, baseado em armazenamento chave-valor; em 2008 foi projetado o Cassandra, o sistema de banco de dados do Facebook, utilizado posteriormente também pelo Twitter desbancando o MySQL; em 2009, o MongoDB, um banco de dados orientado a documentos e de alta performance. Cada uma dessas soluções apresenta características em comum e particulares que as diferenciam, evidenciando a flexibilidade do NoSQL.
Ainda é necessário pensar qual o modelo de banco de dados se adequa melhor a cada aplicação. O banco de dados relacional tem desvantagens quando o termo de comparação é a escalabilidade e disponibilidade do sistema, visto que este tem dificuldades relacionadas à natureza estruturada, porém tem vantagem sobre o NoSQL quando a análise é sobre a consistência dos dados, sendo este o ponto mais forte do modelo relacional.
Referências:
[1] ISSA, Felipe. ESTUDO COMPARATIVO ENTRE BANCO DE DADOS RELACIONAIS E BANCO DE DADOS NoSQL NA UTILIZAÇÃO POR APLICAÇÕES DE BUSINESS INTELLIGENCE.
...