O documento descreve os principais prós e contras do MongoDB, incluindo custo zero, integração com MEAN stack, escalabilidade e estrutura flexível como vantagens, e ausência de suporte a transações e joins como desvantagens. Ele também lista várias empresas que usam MongoDB.
2. MONGODB: PRÓS
• Custo:Totalmente livre de custo, independente do volume de dados para
servidores auto hospedados. Custo de hospedagem – e.g. Mongolab –
aplicáveis.
• MEAN.io: Naturalmente integrado com as tecnologias da stack MEAN.io
(sistemas feitos puramente com JavaScript), evitando incompatibilidades e
parsing de dados entre camadas.
• Independente do Sistema Operacional: Dá ao desenvolvedor a liberdade de
escolher entre distribuiçõesWindows, Mac OS X e Linux em geral.
• Curva de Aprendizado: Extremamente rápida e descomplicada.
• Escalável (sharding): Bases de dados prontas para operar em diversos nós –
distribuindo a carga de processamento – a qualquer momento.
• Estrutura flexível (schema-less):Alterações na definição dos dados em fase de
desenvolvimento são transparentes.Welkin.co
3. MONGODB: CONTRAS
• Lock de Escrita: Para operações de leitura, diversas consultas podem utilizar o
mesmo lock. Mas para operações de escrita, atualmente a base de dados
inteira fica em estado de lock até que o registro seja escrito na base – diferente
de SGBDs tradicionais, aonde apenas as tabelas afetadas ficam em estado de
lock.
• Transações e Joins: Ausência de suporte nativo a transações e joins, obrigando
o desenvolvedor a fazê-los manualmente.
• Consumo de memória RAM: Tendência a ser uma engine de base de dados
mais pesada do que a maioria dos SGBDs em termos de memória RAM. Neste
caso, a inclusão de novos nós de processamento pode ser efetuada através de
sharding, como citado no slide anterior.
• Documentação: Documentação ainda em desenvolvimento para algumas
uncionalidades, fazendo com que o desenvolvedor tenha de buscar
informações em ferramentas como o Stackoverflow.
Welkin.co
5. LINKS ÚTEIS
Conhecendo o MongoDB: http://www.dev.mayogax.me/conhecendo-mongodb
3 razões para usar MongoDB: http://imasters.com.br/artigo/18334/mongodb/3-razoes-
para-usar-mongodb/
The Pros and Cons of MongoDB: http://halls-of-valhalla.org/beta/articles/the-pros-and-
cons-of-mongodb,45/
Thoughts on MongoDB from a SQL Server Dev:
http://www.adathedev.co.uk/2011/02/thoughts-on-mongodb-from-sql-server-dev.html
OrganizationsCreatingApplications Never Before Possible:
http://www.mongodb.com/who-uses-mongodb/
“Does it make sense to use MongoDB instead of MySQL as the main database for a
Website?” (via Quora) http://www.quora.com/Does-it-make-sense-to-use-MongoDB-
instead-of-MySQL-as-the-main-database-for-a-website
A DatabaseThat Moves AtYour Speed: http://www.mongodb.com/industries/high-tech
Welkin.co