5. MongoDB
• Base de Datos
• Open Source
• De alto desempeño
• Orientada a Documentos
MongoDB
6. BD Orientada a Documentos
• Si, no hay tablas sino documentos
• No hay relaciones
• No hay joins!!!
• No hay SQL
• No hay SQL Injection
MongoDB
7. MongoDB
MongoDB SQLs
Base de datos Base de datos
Collections Tablas
Documentos Bson Registros
MongoDB
8. Replicación
• Poner copias de tus datos en lugares separados para
ser tolerante al fallo
• Sobreponerse a fallas
• Electricidad
• Red
• Fallas de Hardware
MongoDB
9. Replica Sets
• Un grupo de procesos mongod
• Permite que los datos sean duplicados
• Un cluster master-slave con fail-over automático
• Los nodos se conocen y replican la información
escrita
• Master es Primary
• Slaves son Secondaries
MongoDB
10. Automatic Failover
• Todo esta automatizado
• Cuando el primary falla hay elecciones.
• Se elegirá por mayoría
• 1 server, 1 es mayoria
• 2 servers,2 son mayoria
• 3 servers,2 son mayoria
• 4 servers,3 son mayoria
• Por default, todos tienen la misma prioridad
• Cuando el ex-primary regrese será secundario
MongoDB
11. Replica sets y los clientes
• Un cliente (driver) se conecta a un replica set es
ruteado al primary
• Lectura
• Escritura
• rs.slaveOk()
• Escalamiento de Lectura
MongoDB
12. Mecanismos internos
• El registro de operaciones es llamado Oplog
• Db local, collection oplog.$main
• Cada documento representa una operación de escritura
• Mantener sincronía con los nodos
• Sincronía
• La primera vez se copiara todos los documentos.
• Cuando este en sincronizado usará el oplog
• Si queda fuera de sincronía, se detiene las actualizaciones
• Necesitará un reSync
MongoDB