Roadmap del Curso¶
Vision completa de todos los ejercicios, tecnologias y el plan de aprendizaje recomendado.
Niveles de Aprendizaje¶
graph TD
A[NIVEL 1: Fundamentos<br/>2-3 semanas] --> B[NIVEL 2: Escalando<br/>3-4 semanas]
B --> C[NIVEL 3: Big Data Real<br/>4-5 semanas]
C --> D[NIVEL 4: Visualizacion<br/>3-4 semanas]
A1[SQLite<br/>Pandas<br/>Git/GitHub] --> A
B1[Dask<br/>Parquet<br/>Optimizacion] --> B
C1[PySpark<br/>SQL Avanzado<br/>Pipelines] --> C
D1[Dashboards<br/>APIs<br/>Deploy] --> D NIVEL 1: Fundamentos¶
Duracion: 2-3 semanas | Dificultad: 🟢 Basico
Objetivos¶
- Dominar las bases de datos relacionales con SQLite
- Aprender analisis de datos con Pandas
- Entender control de versiones con Git/GitHub
Tecnologias¶
| Tecnologia | Proposito | Recursos |
|---|---|---|
| SQLite | Base de datos embebida | Docs oficiales |
| Pandas | Analisis de datos en memoria | Pandas docs |
| Git | Control de versiones | Git handbook |
Ejercicios¶
Ejercicio 01: Carga de Datos con SQLite¶
Detalles
- Tiempo estimado: 2-3 horas
- Dataset: NYC Taxi (10MB muestra)
- Nivel: 🟢 Basico
Que aprenderas:
- Cargar datos desde CSV a base de datos
- Queries SQL basicas (SELECT, WHERE, GROUP BY)
- Optimizacion con indices
- Exportar resultados
Habilidades:
- Cargar CSV en chunks
- Crear base de datos SQLite
- Ejecutar queries SQL
- Crear indices
- Exportar resultados a CSV
Ejercicio 02: Limpieza y Transformacion¶
Detalles
- Tiempo estimado: 3-4 horas
- Dataset: NYC Taxi (datos sucios)
- Nivel: 🟢 Basico
Que aprenderas:
- Detectar y manejar valores nulos
- Identificar outliers
- Transformaciones de datos
- Validacion de tipos
NIVEL 2: Escalando¶
Duracion: 3-4 semanas | Dificultad: 🟡 Intermedio
Objetivos¶
- Procesar datos mas grandes que tu RAM
- Entender procesamiento paralelo
- Optimizar rendimiento
Tecnologias¶
| Tecnologia | Proposito | Cuando Usarla |
|---|---|---|
| Dask | Procesamiento paralelo | Datos > RAM (5-100GB) |
| Parquet | Formato columnar | Almacenamiento eficiente |
| Optimizacion | Performance | Siempre |
Ejercicios¶
Ejercicio 03: Procesamiento con Parquet y Dask¶
Detalles
- Tiempo estimado: 4-5 horas
- Dataset: NYC Taxi completo (121MB)
- Nivel: 🟡 Intermedio
Que aprenderas:
- Por que Parquet es mejor que CSV
- Procesamiento paralelo con Dask
- Lazy evaluation
- Optimizacion de memoria
Comparativa de Formatos:
| Metrica | CSV | Parquet |
|---|---|---|
| Tamano en disco | 121 MB | 45 MB |
| Tiempo de lectura | 8.5 seg | 1.2 seg |
| Compresion | No | Si |
| Tipos de datos | No preserva | Si preserva |
NIVEL 3: Big Data Real¶
Duracion: 4-5 semanas | Dificultad: 🔴 Avanzado
Objetivos¶
- Dominar procesamiento distribuido
- Trabajar con datos masivos (>100GB)
- Construir pipelines de produccion
Tecnologias¶
| Tecnologia | Proposito | Escala |
|---|---|---|
| PySpark | Procesamiento distribuido | > 100GB |
| SQL Avanzado | Queries complejas | Cualquier tamano |
| Pipelines ETL | Automatizacion | Produccion |
Ejercicios¶
Ejercicio 04: Queries Complejas con PySpark¶
Detalles
- Tiempo estimado: 5-6 horas
- Dataset: NYC Taxi + Weather (multiple fuentes)
- Nivel: 🔴 Avanzado
Que aprenderas:
- Introduccion a Spark
- DataFrames distribuidos
- SQL en Spark
- Joins de multiples fuentes
- Particionamiento de datos
Ejercicio 06: Pipeline ETL Completo¶
Detalles
- Tiempo estimado: 10-12 horas
- Dataset: Multiples fuentes
- Nivel: 🔴 Avanzado
Arquitectura del Pipeline:
graph LR
A[CSV 100GB] -->|Extract| B[Dask]
B -->|Transform| C[PySpark]
C -->|Load| D[Parquet 10GB]
D -->|Serve| E[API Flask]
E -->|Visualize| F[Dashboard] NIVEL 4: Visualizacion y Deploy¶
Duracion: 3-4 semanas | Dificultad: 🔴 Avanzado
Objetivos¶
- Crear dashboards profesionales
- Servir datos via API
- Deploy a produccion
Tecnologias¶
| Tecnologia | Proposito | Uso |
|---|---|---|
| Flask | Backend web | APIs y dashboards |
| Chart.js | Visualizaciones | Graficos interactivos |
| Docker | Contenedores | Deploy |
Ejercicios¶
Ejercicio 05: Dashboard Interactivo¶
Detalles
- Tiempo estimado: 8-10 horas
- Proyecto: Dashboard EDA NYC Taxi
- Nivel: 🔴 Avanzado
Funcionalidades:
Visualizacion de 10M+ registros
Filtros dinamicos por fecha/hora
Mapas de calor
Analisis de tendencias
Tech Stack:
Frontend: HTML + Bootstrap + Chart.js
Backend: Flask + Pandas/Dask
Data: SQLite/Parquet
Deploy: Docker
Plan de Estudio Recomendado¶
Para Principiantes (10-12 semanas)¶
gantt
title Plan de Estudio - Principiantes
dateFormat YYYY-MM-DD
section Fundamentos
Ejercicio 01 :2024-01-01, 1w
Ejercicio 02 :2024-01-08, 1w
Practica Fundamentos :2024-01-15, 1w
section Escalando
Ejercicio 03 :2024-01-22, 2w
Proyecto Personal :2024-02-05, 1w
section Big Data
Ejercicio 04 :2024-02-12, 2w
Ejercicio 06 :2024-02-26, 2w
section Visualizacion
Ejercicio 05 :2024-03-11, 2w Dedicacion: 10-15 horas/semana
Para Intermedios (6-8 semanas)¶
Recomendacion
Si ya conoces Python y Pandas, puedes empezar directamente en el NIVEL 2.
Dedicacion: 8-10 horas/semana
Para Avanzados (4-5 semanas)¶
Recomendacion
Si ya trabajaste con Big Data, enfocate en los ejercicios de PySpark y el proyecto final.
Dedicacion: 5-8 horas/semana
Tecnologias por Ejercicio¶
| Ejercicio | SQLite | Pandas | Dask | PySpark | Flask | Nivel |
|---|---|---|---|---|---|---|
| 01 - SQLite | ✅ | ✅ | - | - | - | 🟢 |
| 02 - Limpieza | - | ✅ | - | - | - | 🟢 |
| 03 - Dask | - | ✅ | ✅ | - | - | 🟡 |
| 04 - PySpark | - | - | ✅ | ✅ | - | 🔴 |
| 05 - Dashboard | ✅ | ✅ | - | - | ✅ | 🔴 |
| 06 - Pipeline | - | - | ✅ | ✅ | ✅ | 🔴 |
Comparativa de Tecnologias¶
Cuando usar cada herramienta?¶
graph TD
A[Tienes datos?] --> B{Cuanto pesa?}
B -->|< 5GB| C[Pandas]
B -->|5-100GB| D[Dask]
B -->|> 100GB| E[PySpark]
C --> F{Necesitas BD?}
D --> F
E --> F
F -->|Si, local| G[SQLite]
F -->|Si, produccion| H[PostgreSQL/MySQL]
F -->|No| I[Parquet] Tabla Comparativa¶
| Tamano de Datos | Herramienta | Tiempo de Procesamiento | RAM Necesaria |
|---|---|---|---|
| < 1GB | Pandas | Segundos | 2-4x tamano datos |
| 1-5GB | Pandas | Minutos | 2-4x tamano datos |
| 5-50GB | Dask | Minutos | Cualquier RAM |
| 50-500GB | Dask/PySpark | Minutos-Horas | Cualquier RAM |
| > 500GB | PySpark | Horas | Cluster |
Certificacion y Evaluacion¶
Para Alumnos del Curso Presencial¶
Certificado de 230 horas
Evaluacion automatica via PROMPTS.md
Proyecto final integrador
Soporte directo del instructor
Para Autodidactas¶
Portfolio de proyectos en GitHub
Codigo revisable por empleadores
Experiencia con datos reales
Aprendizaje a tu ritmo
Tu GitHub es tu Certificado
Los empleadores valoran mas ver tu codigo y proyectos que un PDF. Asegurate de:
- Hacer commits claros y profesionales
- Documentar tu codigo
- Completar los ejercicios con calidad
- Agregar un README personalizado a tu fork
Recursos Adicionales¶
Documentacion Oficial¶
Cursos Complementarios¶
Comunidades¶
---
Proximos Pasos¶
Ahora que conoces el roadmap completo:
- Instalar Herramientas - Si aun no las tienes
- Tu Primer Ejercicio - Empezar a practicar
- Fork y Clone - Configurar tu entorno de trabajo