Poderiam ser chamados de bancos de dados não-relacionais (afinal apresentam este formato de funcionalidade), no entanto as databases NoSQL, independentemente de sua nomenclatura, têm um papel importante na formatação e armazenamento de dados para o mundo web (e não apenas para ele). Entenda basicamente no artigo de hoje o que é o “NoSQL”, quais são suas principais diferenças para bancos de dados ‘strict SQL’, além de grandes websites que já quebraram o tabu e começaram a utilizar bancos não relacionais.
Ué, NoSQL?
Peraí… Os bancos de dados não-relacionais não trabalham com linguagem de consulta estruturada (SQL)? Na verdade, sim, por isto mesmo o seu criador (Carlo Strozzi) tem preferência pelo termo No-Rel em substituição ao NoSQL.
Sem delongas, uma das principais vantagens no uso de bancos de dados não-relacionais está no fato de sua utilização horizontal, ou seja, a distribuição de dados através de bancos disseminados em diferentes servidores, ao contrário do padrão dos bancos mais utilizados e relacionais (MySQL, MS SQL Server, PostgreSQL, etc.), em que é necessário promover o seu crescimento verticalizado. Claro, é possível utilizar os bancos relacionais em diferentes servidores, no entanto o seu suporte não é nativo como ocorre nos bancos não-relacionais integrantes do mundo ‘NoSQL’.
Qual é uma das principais vantagens do NoSQL?
Assim como o modelo de Cloud Computing, os bancos não-relacionais têm a vantagem de serem escaláveis, ou seja, você pode distribuí-lo em diferentes servidores (com a cópia das informações entre os bancos ou não) e manter o seu sistema ativo mesmo que a instância que suporta um de seus bancos de dados seja interrompida ou o servidor tenha problemas no seu funcionamento. Mas deve-se tomar a escalabilidade do NoSQL como uma possibilidade e não necessariamente como uma facilidade tranquila de ser implementada.
Posso utilizá-lo com o Apache?
Sem dúvida! O NoSQL não faz qualquer distinção no uso do seu webserver, ou seja, você pode utilizá-lo com o Apache, Lighttpd, Nginx, enfim, você possui liberdade de escolha do servidor que hospedará os arquivos que farão integração com o seu banco de dados não-relacionado.
O cPanel/WHM possui suporte?
Nativamente, não. Há reportes em vários fóruns sobre o sucesso de instalação e adaptação dos bancos de dados não-relacionais ao cPanel, no entanto não há suporte nativo do cPanel/WHM para tal. Você pode, sem problema, iniciar estudos para implantação em seus servidores.
Bancos de dados NoSQL
- MongoDB
- CouchDB
- Cassandra
- Project Valdemort (by Linkedin)
- Redis (by Google)
- HBase (by Apache)
- Dynamo (by Amazon)
- dentre muitos outros…
Principais utilizadores
- Twitter, Facebook, Digg, IBM, Netflix, Formspring, Plaxo e Redit (Cassandra)
- MTV, Disney, Foursquare, Bit.ly, TNYT, Sourceforge (MongoDB)
Onde obter maiores informações?
A maioria dos bancos não-relacionais possuem vasta documentação sobre a sua utilização e implantação. Se você está iniciando no mundo NoSQL, um site interessante que pode te ajudar é o escalabilidade.com, com foco na seção de NoSQL.