¿Qué es MongoDB?

Hoy en día con el auge de las bases de datos NoSQL es difícil no conocer MongoDB, es una base de datos orientada a documentos, esto implica que en vez de guardar registros como hacemos en las bases de datos relacionales guardamos documentos. Es open source y está diseñada para el fácil desarrollo y escalabilidad.

MongoDB logo enterprise

Documentos

Un registro de MongoDB es un documento, estructura de datos compuesta por pares de campos y de valor, estos documentos son similares a los objetos JSON. Los valores de los campos pueden incluir otros documentos, matrices y conjuntos de documentos. Puedes verlo en este ejemplo disponible en la documentación de MongoDB:

{
  "address": {
     "building": "1007",
     "coord": [ -73.856077, 40.848447 ],
     "street": "Morris Park Ave",
     "zipcode": "10462"
  },
  "borough": "Bronx",
  "cuisine": "Bakery",
  "grades": [
     { "date": { "$date": 1393804800000 }, "grade": "A", "score": 2 },
     { "date": { "$date": 1378857600000 }, "grade": "A", "score": 6 },
     { "date": { "$date": 1358985600000 }, "grade": "A", "score": 10 },
     { "date": { "$date": 1322006400000 }, "grade": "A", "score": 9 },
     { "date": { "$date": 1299715200000 }, "grade": "B", "score": 14 }
  ],
  "name": "Morris Park Bake Shop",
  "restaurant_id": "30075445"
}
Algunas ventajas de usar documentos
  • Los documentos vistos como objetos se corresponden con los datos nativos en muchos lenguajes de programación
  • La incrustación de documentos y arrays reduce el coste de los joins de las bases de datos relacionales
  • Esquema dinámico
Características
  • Alto rendimiento: MongoDB proporciona la persistencia de datos de alto rendimiento.
  • EL soporte para los modelos de datos incrustados reduce la actividad de E/S.
  • Los índices soportan consultas más rápidas y pueden incluir claves de documentos y arrays embebidos.
  • Escalado automático horizontal como parte de su funcionamiento
Colecciones

MongoDB almacena documentos en colecciones, estás son análogas a las tablas en las bases de datos relacionales, con la diferencia de que no tienen que tener la misma esctructura.

En MongoDB, documentos almacenados en una colección deben tener un campo _id única que actúa como una clave principal.

Publicaciones sobre MongoDB

Estas son las publicaciones sobre MongoDB:

Empezando con MongoDB en Java en 5 pasos

  1. Instalación
  2. Creamos el proyecto en Netbeans y añadimos las librerías
  3. Estableciendo la conexión con MongoDB desde Java
  4. MongoDB INSERT
  5. Consultas y filtros

Documentación

MongoDB

MongoDB database logo

MongoDB is an open-source, document database designed for ease of development and scaling.MongoDB