2. ¿Qué es?
• MongoDB es un sistema de base de datos NoSQL orientada a
documentos, desarrollada bajo el concepto de código abierto.
• Esto nos permite ofrecer un alto rendimiento y facilita el desarrollo de
aplicaciones.
• Se encuentra disponible para Windows, Linux y OS X
3. ¿Cómo Funciona?
• MongoDB almacena documentos en formato BSON que es un
superconjunto de JSON.
• BSON es un formato binario que optimiza espacio, rendimiento y
aporta funciones extra sobre JSON.
• La consola nos ofrece una potencia enorme para realizar
operaciones de inserción, selección y manipulación de datos.
5. Estructura
• Bases de datos: conjunto de colecciones. Son dinámicas, solo
existen si hay almacenadas en ellas, colecciones o documentos.
• Colecciones: es el equivalente a una tabla para las bases de datos
relacionales. Están compuestas de documentos.
• Documentos: son un conjunto de líneas en formato JSON. Cada
línea JSON está compuesta atributos y cada atributo está compuesto
de un par clave-valor.
6. NoSQL vs SQL
Base de Datos Relacional Base de datos NoSQL (MongoDB)
Requiere Operaciones Join.
Escala verticalmente, a través de nuevas tablas y
relaciones.
No requiere operaciones Join.
Escala horizontamente.
Los datos se parten en diferentes tablas.
Estos datos se procesan en un servidor y se traducen a
objetos de la vida real.
Simplemente guardas todos los datos, ya que NoSQL es
libre de esquemas, luego no se diseñan las tablas por
adelantado.
El principal problema de este modelo es que todo esto es
costoso en términos de rendimiento.
Obtenemos rapidez y flexibilidad a costa de renunciar a
tablas perfectamente definidas.
7. ¿Dónde se puede utilizar MongoDB?
• MongoDB se puede utilizar en muchos de los proyectos que
desarrollamos en la actualidad.
• MongoDB es especialmente útil en entornos que requieran
escalabilidad(replicación y sharding).
• Tu dataset tiene grandes cantidades de texto o imágenes en columnas
del tipo BLOBs.
• Tu sistema de información genera mucho datos temporales que no
corresponden al almacén de datos principales(ej. Carritos de la
compra)
10. Instalación
• La instalación en sistemas Linux, OS X y Windows la podéis
encontrar en la siguiente dirección:
https://github.com/Manuss20/Intro-a-MongoDB
11. Comandos Básicos
• ¿Cómo creamos una BD?
• ¿Cómo utilizar una BD Dinámica?
• Para almacenar un documento.
• Para almacenar estos documentos en las bases de datos
• Para guardar
#!/bin/bash
12. Consultas en MongoDB
SELECT * FROM Pruebas WHERE name = “mongo”;
db.Pruebas.find({name:”mongo”}).forEach(printjson);
printjson(db.Pruebas.findOne({name:”mongo”}));
db.Pruebas.find().limit(3);
db.Pruebas.remove({name:”mongo”});
13. Ejemplo: App Web
Respuesta de la BD (objeto) Devuelve un objeto en JSON
Base de Datos API FrontEnd
+
Express
Consulta a la BD Llamada Ajax al API