Domina MongoDB con PyMongo y desarrolla aplicaciones basadas en datos.
Introducción
MongoDB es una base de datos NoSQL orientada a documentos, ideal para aplicaciones modernas que requieren flexibilidad y escalabilidad. PyMongo es el cliente oficial de MongoDB para Python, lo que permite a los desarrolladores trabajar con bases de datos MongoDB de forma eficiente desde sus aplicaciones en Python. En este curso se abordarán desde los fundamentos de MongoDB hasta el uso avanzado de PyMongo, incluyendo operaciones CRUD, consultas, agregaciones y modelado de datos.
Objetivos
Formar a los participantes en el uso de MongoDB mediante la librería PyMongo, permitiéndoles diseñar, consultar y manipular bases de datos NoSQL desde aplicaciones Python, con un enfoque práctico y orientado a proyectos reales.
Índice de Contenidos
Módulo 1: Introducción a MongoDB y PyMongo
- Qué es MongoDB (NoSQL, documentos BSON)
- Ventajas frente a bases relacionales
- Instalación y configuración de MongoDB y PyMongo
- Conexión desde Python, bases de datos y colecciones
- Tipos de datos BSON
Módulo 2: Operaciones CRUD con PyMongo
- Inserción de documentos: insert_one, insert_many
- Búsqueda de documentos: find_one, find, filtros y proyecciones
- Actualización de documentos: update_one, update_many
- Eliminación de documentos: delete_one, delete_many
- Uso de operadores lógicos y de comparación
Módulo 3: Consultas y manejo avanzado de datos
- Ordenación y paginación de resultados
- Índices: creación, uso y tipos (simples, compuestos, únicos)
- Modelado de datos en MongoDB: referencias vs. documentos embebidos
- Manejo de errores y buenas prácticas en PyMongo
Módulo 4: Framework de agregación
- Concepto de pipeline de agregación
- Operadores comunes: $match, $group, $project, $sort, $limit
- Agregaciones avanzadas y condicionales
- Casos prácticos: estadísticas, agrupaciones, transformaciones
Módulo 5: Integración, testing y despliegue
- Uso de MongoDB Atlas en la nube
- Exportación e importación de datos (JSON, CSV)
- Pruebas con bases de datos de test
- Integración de PyMongo en scripts y aplicaciones Python
- Seguridad: autenticación, roles y conexiones cifradas