Modelagem - NoSQL - Experimentando novos sabores - Introdução

/*
Olá senhores, senhoras e senhoritas DBAs!!!


 Recentemente recebi uma solicitação de um leitor do blog. Ele me pedia uma comparação entre o MS-SQL, Oracle e o DB2, quais são suas características, quais são suas vantagens, o que eles comem, como eles vivem, tudo isso e muito mais no Globo Reporter.

  Infelizmente, caro leitor, para uma analise desse nível eu teria que conhecer profundamente cada uma delas. E teria que ser profundamente pelo simples motivo de que na essência elas são iguais!

  Explico melhor. Tanto Oracle, MS-SQL ou MySQL são bancos de dados relacionais, todos possuem tabelas, chaves primárias e estrangeiras,índices e demais objetos relacionais. A linguagem é padrão (SQL) com acréscimos de funções para diferenciar um fornecedor do outro, mas em teoria, se você conhecer apenas o padrão ANSI já estará qualificado a trabalhar com qualquer uma delas.

  Tenho comigo também que na maioria dos casos tanto faz qual dessas ferramentas você usará, sua escolha estará mais baseada em critérios não técnicos (licenciamento, mão de obra disponível ou cultura organizacional) do que em requisitos específicos da solução que você quer prover.

  De forma que a orientação simples é: Escolha uma que tenha mercado ou aquela que a vida te impôs e fique bom nela, mais tarde e opcionalmente, você pode adicionar outra a sua bagagem e se tornar um DBA bilíngue.

  Agora se você quer ir além do DBA SQL Server e tentar ser um provedor de soluções de plataforma de dados, minha sugestão é dar uma espiadela fora do mundo relacional.

noSQL

  Não vou ficar de histórinha, pois tudo isso já está muito bem definido e explicado na Wikipedia ou em livros sobre o assunto, mas basicamente você deve entender como noSQL um grupo bem diversificado de SGBDs que não usam o modelo relacional, alguns deles, inclusive, nem mesmo possuem as propriedades ACID (atomicidade, consistencia, isolamento e durabilidade) em sua totalidade. E não é porque eles são grandes rebeldes ou querem reinventar a roda, mas sim porque eles podem responder de maneira mais eficiente alguns problemas que são “possíveis mas dolorosos” no modelo relacional.

  Existem vários tipos de bancos NoSQl (key-value, document based, graph, entre outros) e apenas uma vez vi uma solução completamente baseada em um deles, nos outros casos a combinação de SQL e NoSQL é que entregava o pacote completo.

  Estou planejando pelo menos mais um post prático ou quem sabe até uma série sobre esse tipo de banco, então não perca os próximos capítulos!

Abraços!

Felipe Antunes
twitter: @felipe_store
email: fjantunes@gmail.com