MONGO DB:
PRÓS, CONTRAS E SHOWCASES
por Leonardo Quevedo
Welkin.co
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
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
MONGODB: SHOWCASES
Welkin.co
Âmbito nacional:
• Globo.com
• EasyTaxi
• Oi
• iG
• Leroy Merlin
Âmbito Internacional:
• SAP
• eBay
• Github
• Buzzfeed
• Adobe
• McAfee
• The Guardian
• LinkedIn
• Foursquare
• eHarmony
• Bosch
• Forbes
• Mtv
• ADP
• The Weather Channel
• SourceForge
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

MongoDB: Prós, Contras e Showcases.

  • 1.
    MONGO DB: PRÓS, CONTRASE SHOWCASES por Leonardo Quevedo Welkin.co
  • 2.
    MONGODB: PRÓS • Custo:Totalmentelivre 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 • Lockde 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
  • 4.
    MONGODB: SHOWCASES Welkin.co Âmbito nacional: •Globo.com • EasyTaxi • Oi • iG • Leroy Merlin Âmbito Internacional: • SAP • eBay • Github • Buzzfeed • Adobe • McAfee • The Guardian • LinkedIn • Foursquare • eHarmony • Bosch • Forbes • Mtv • ADP • The Weather Channel • SourceForge
  • 5.
    LINKS ÚTEIS  Conhecendoo 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