Temario del curso
Módulo 1: Introducción y Arquitectura de MongoDB (4h)
Contenido:
- Historia y ecosistema de MongoDB
- Casos de uso típicos, ventajas y desventajas
- Arquitectura general: instancias, procesos y configuración
Práctica:
- Exploración interactiva: conectando con Mongo Shell/CLI
- Creado de una base de datos y colección de ejemplo
Módulo 2: Instalación y Configuración Inicial (6h)
Contenido:
- Requisitos de hardware y recursos
- Instalación en Linux (deb/rpm), Windows y macOS
- Archivos de configuración YAML (mongod.conf): dataDir, logDir, bindIp, port
- Opciones de inicio y administración de systemd/service
Práctica:
- Implementar instancias en VMs locales o contenedores Docker
- Ajuste de configuraciones para desarrollo vs. producción
- Verificación de conectividad remota segura
Módulo 3: Modelado de Datos y Operaciones Básicas (5h)
Contenido:
- Documentos BSON, colecciones, bases de datos
- Modelado: incrustación vs. referencia; patrones de diseño de datos
- Índices básicos (introducidos previamente)
- Operaciones con Mongo Shell y ejemplos de scripting usando drivers
Práctica:
- Modelado de un caso de uso: sistema de inventario o facturación
- Implementación de operaciones CRUD
- Validación de esquemas utilizando JSON Schema en MongoDB
Módulo 4: Índices y Rendimiento (4h)
Contenido:
- Índices simples, compuestos, multikey, texto y geoespaciales
- Uso de explain() y análisis de métricas
- Papel de los índices en el rendimiento de escritura y memoria
Práctica:
- Creado de colecciones con datos de prueba
- Probar consultas con y sin índices; interpretación de explain()
- Ajustar índices basándose en patrones de acceso
Módulo 5: Seguridad (5h)
Contenido:
- Mecanismos de autenticación: SCRAM, LDAP/Kerberos (introducción)
- Definición de usuarios y roles personalizados
- TLS/SSL entre clientes y servidores
- Cifrado en reposo: configuración de claves
- Registro básico de auditoría
Práctica:
- Creado de usuarios con privilegios mínimos
- Configuración de TLS en instancias locales
- Verificación del acceso no autorizado y revisión de registros de auditoría
Módulo 6: Replicación y Alta Disponibilidad (6h)
Contenido:
- Conceptos de replicación: Primario, Secundario, oplog
- Configuración del conjunto de réplicas: iniciación, membresía, arbitraje
- Monitoreo de estado y elecciones
- Mantenimiento: agregar/eliminar miembros, reasignar prioridades
Práctica:
- Distribución de un conjunto de réplicas con tres nodos (local o VMs)
- Simular fallo primario y observación del cambio de estado
- Reconstrucción de nodos secundarios y recuperación de réplicas
Módulo 7: Fragmentación y Escalabilidad Horizontal (6h)
Contenido:
- Conceptos de fragmentación: clave shard, servidores config, ruteador mongos
- Selección de la clave shard y riesgos asociados
- Distribución de servidores config, shards y mongos
- Reequilibrado y migración de segmentos
Práctica:
- Configuración de un clúster fragmentado simple
- Inserción de datos a gran escala y observación de la distribución
- Introducir cambios en las claves shard y entender sus limitaciones
Módulo 8: Copias de Seguridad, Restauración y Recuperación ante Desastres (4h)
Contenido:
- Herramientas nativas: mongodump/mongorestore, instantáneas del sistema de archivos
- Copias de seguridad en conjuntos de réplicas y clústeres fragmentados
- Uso básico de Cloud Manager/Ops Manager para copias de seguridad
- Planificación de recuperación ante desastres (DR): RTO, RPO
Práctica:
- Realizar copia de seguridad y restauración en una base de datos de prueba
- Simular fallo y recuperación a partir de la copia de seguridad
- Diseñar un plan de DR para un caso hipotético
Módulo 9: Monitoreo y Alertas (4h)
Contenido:
- Herramientas: mongostat, mongotop, monitoreo de Cloud Manager/Atlas
- Integración con Prometheus + Grafana (conceptos y ejemplos)
- Métricas clave: CPU, memoria, I/O, tamaño del oplog, latencias
- Alertas: definición de umbrales y notificaciones
Práctica:
- Distribución de un agente de monitoreo local o basado en contenedores
- Configuración de paneles básicos con métricas de muestra
- Simular carga y observar alertas
Módulo 10: Mantenimiento, Actualizaciones y Mejores Prácticas (4h)
Contenido:
- Estrategias de actualización para conjuntos de réplicas y clústeres fragmentados
- Limpieza de datos, compactación e integridad
- Análisis de registros y auditorías regulares
- Automatización de tareas rutinarias (scripts, cronjobs, Ansible, Terraform)
- Políticas de retención y archivado de datos
Práctica:
- Simular actualizaciones menores y mayores en un entorno controlado
- Creado de scripts automatizados para copias de seguridad y monitoreo
- Desarrollar una lista de verificación periódica de mantenimiento
Resumen y Próximos Pasos
Requerimientos
- Un conocimiento de los conceptos generales de bases de datos y estructuras de datos
- Familiaridad con el uso de la línea de comandos de Linux
- Conocimientos básicos de redes y administración de sistemas
Audiencia
- Administradores de bases de datos e ingenieros de sistemas que trabajan con MongoDB
- Equipos de DevOps e infraestructura que despliegan y mantienen entornos de MongoDB
- Desarrolladores interesados en los aspectos internos de MongoDB y las mejores prácticas de implementación
Testimonios (5)
Kamil hizo un gran trabajo. Hizo preguntas para averiguar lo que ya sabíamos y en qué necesitábamos centrarnos, y adaptó fácilmente la formación a nuestras necesidades.
Susanna - USAF
Curso - MongoDB Advanced Administrator
Traducción Automática
La situación era atípica porque se iba a impartir una formación intensiva a los desarrolladores con personas que no eran desarrolladores. Lukasz asumió este reto con empatía y mucho humor. A través de su manera inteligente y flexible, fue capaz de garantizar que se lograra un aprendizaje concreto para todos. Lo disfruté mucho y con mucho gusto volvería a asistir a un seminario con Lukasz.
Christoph - Honda Bank GmbH
Curso - MERN Fullstack Development
Traducción Automática
El entorno de laboratorio
Samer Roshdi - epic ltd
Curso - MongoDB for Analysts
Traducción Automática
It was very flexible and adapted to our expectations and skill level.
Raul Alberto Canales Requena - Kiloo
Curso - MongoDB for Advanced Users
Traducción Automática
I generally was benefit from the open mind and communication.
Oleksiy Deliyev
Curso - MongoDB for Developers
Traducción Automática