NoSQL
NoSQL
!= Não SQL
Ao
vermos o termo NoSQL podemos pensar que se trata de banco de dados
que não utilizam o SQL, mas, nos enganamos. NoSQL é a abreviação
de Not Only SQL (Não Somente SQL), termo usado para definir banco de
dados não-relacionais.
Banco
de dados NoSQL tem um modelo completamente diferente do
modelo relacional. E se você ainda acha que NoSQL está
associado a Sem SQL… Temos os banco de dados Cassandra e OrientDB,
que usam SQL. Então... tire essa associação da sua cabeça.
Banco
de dados relacionais possuem suas vantagens como a propriedade ACID
(Atomicidade, Consistência, Isolamento e Durabilidade), mas esse
tipo de modelagem não resolvem todos os problemas com eficiência.
Por exemplo, imagine uma rede social. Imagina como seria a modelagem?
Não seria bom usar a ideia de Grafos? Como ficaria a implementação?
Difícil.
NoSQL
é só para usar em redes sociais?
Não
senhor. NoSQL veio com o objetivo de solucionar os problemas em que a
modelagem relacional não é muito eficaz, por isso existem vários
tipos de banco de dados NoSQL, cada um voltado para um tipo de
problema.
Bancos
NoSQL possuem alta performance e escalabilidade, além de facilidade
com distribuição horizontal (quanto mais dados, mais servidores,
não necessariamente de alta performance), replicação e tolerância
a erros.
Os
bancos NoSQL são divididos de acordo com a forma de manipulação
dos dados. São divididos em: Wide Column Store / Column Families,
Document Store, Key Value / Tuple Store, Graph Databases, Object
Databases, entre outros. Você pode ver as divisões e os bancos no
site do nosql-database.
Grandes
empresas já aderiram ao NoSQL. Por exemplo: A Google criou o seu
banco BigTable; Facebook que já usou o Cassandra, em 2014 anunciou o
novo banco chamado Apollo; empresas como Twitter, Netflix,
Decolar.com também já usaram o Cassandra.
Esse
conceito não é tão novo e é normalmente usado em empresas que
possuem uma grande quantidade de dados e que precisam de uma forma
eficiente e escalável.

0 comentários:
Postar um comentário