Documentos: Información agrupada con
cierta codificación (JSON, YAML, XML, etc).
◦Información anidada.
◦Menos rígido que en BDs relacionales (schemaless).
Claves: Al igual que en BDs relacionales,
existen “claves primarias”.
Recuperación: Cada motor tiene su API.
Orientada a Documentos
◦Un solo documento por transacción.
◦Fácilmente “mapeable” a objetos (ODM).
Código Abierto
Metas de MongoDB
◦High-performance
◦High-availability
◦Easy-scalability
Almacenamiento orientado a documentos.
Permite indexación.
Permite replicación.
Particionamiento automático (sharding).
Permite consultas avanzadas.
Actualizaciones atómicas en un documento.
Map/Reduce.
GridFS.
Soporte comercial.
mongod (núcleo de la base de datos)
mongos (controlador de particionamiento)
GridFS & mongofiles
Herramientas:
◦mongo
◦mongostat
◦mongoimport
◦mongoexport
◦mongodump
◦mongorestore
◦bsondump
Es el motor central de la base de datos.
Es el símil de mysqld en MySQL.
Puede correr como programa o demonio.
Puede tener 3 funcionalidades:
◦Standalone Server
◦Config Server (índica en que shard está la data)
◦Shard Partition
“Database Router”
Transparencia a las aplicaciones cliente.
Responsabilidades:
◦Recepción/Entrega data/consultas.
◦Balanceo de data (chunks).
◦Mantención de MongoCfg.
GridFS: Sist. de almacenamiento de mongoDB
◦Permite dividir archivos grandes en pequeños
trozos.
◦Es transparente al usuario.
◦Es una especificación de almacenamiento.
mongofiles
◦Utilidad para manipulación de un sistema de
almacenamiento tipo GridFS.
◦Incluída con la instalación de mongoDB.
mongoimport: Archivos CSV/JSON/TSV
bsondump: Convierte de BSON a JSON
mongoexport: Archivos CSV/JSON
mongodump: Hot Backup (binary)
mongorestore: Utiliza un archivo generado
por mongodump y rescata la información.