1 - MongoDB como gestor de base de datos NoSQL

El gestor de base de datos MongoDB se lo puede asociar a un conjunto de gestores de bases de datos que no tienen como lenguaje principal el SQL para su manipulación.

Los gestores de bases de datos NoSQL no requieren estructuras fijas como tablas, normalmente no soportan operaciones join y presentan como gran ventaja que pueden escalar en forma sencilla.

Ventajas

  • Permiten escalar en forma sencilla.
  • Tienen un lenguaje adaptada al modelo de datos que implementa el gestor de base de datos.
  • Permiten administrar grandes cantidades de datos no estructurados.

Desventajas

  • No hay al momento gran cantidad de desarrolladores que conozcan este tipo de gestores de bases de datos, a diferencia a lo que ocurre con los gestores clásicos como Oracle, SQL Server, MySQL, etc.
  • La compatibilidad entre los distintos gestores de bases de datos NoSQL es nula.
  • Los gestores NoSQL son una tecnología relativamente nueva por lo que le falta alguna madurez a algunos de ellos.
  • La cantidad de herramientas para administrarlos por el momento es muy limitado.

Los gestores NoSQL más destacados:

Estos y muchos otros gestores de bases de datos son alternativas a los gestores de bases de datos relacionales tradicionales (SQL Server, MySQL, Oracle etc.) y pretenden superarlos en velocidad de acceso a los datos, manejo de grandes volúmenes de datos y la posibilidad de tener sistemas distribuidos.

Por el momento no hay un claro ganador en este movimiento de los gestores de bases de datos NoSQL, pero podemos ver que grandes empresas como Google, Amazon, Ibm etc. están invirtiendo en este sector de la tecnología.

El sitio oficial de MongoDB define a su producto: "MongoDB es una base de datos de documentos que ofrece una gran escalabilidad y flexibilidad, y un modelo de consultas e indexación avanzado."

Sus características son:

  • MongoDB almacena datos en documentos JSON,es decir, cada documento puede contener diferentes campos y las estructuras de datos se pueden ir modificando.
  • MongoDB es una base de datos distribuida,por lo que es fácil de usar y proporciona una elevada disponibilidad, escalabilidad horizontal y distribución geográfica.
  • MongoDB es una base de datos de código abierto y de uso gratuito.