💻 Capítulo 16 · Herramientas

Configuración de Windows 11 para Data Engineering

Históricamente, Windows no era un buen SO para programación de datos. Hoy, gracias a WSL2 (Windows Subsystem for Linux), puedes tener la mejor experiencia de Linux integrada perfectamente con Windows.

⏱️ Lectura: ~30 min
🎯 Nivel: Básico
📌 OS: Windows 10/11

Por qué WSL2 lo cambia todo

La mayoría de herramientas de Data Engineering (Spark, Airflow, Hadoop, dbt) están diseñadas para sistemas basados en Unix/Linux. Intentar instalarlas de forma nativa en Windows causa muchos errores y comportamientos extraños.

WSL2 corre un kernel real de Linux dentro de Windows de manera ultra-rápida. Tus archivos en Linux pueden ser editados en Windows (usando VS Code) y puedes usar Docker sin la máquina virtual pesada del pasado.

1. Instalar WSL2 y Ubuntu

Abre PowerShell como Administrador y ejecuta:

wsl --install

Reinicia tu PC. Al volver, Ubuntu se terminará de instalar. Te pedirá crear un usuario y contraseña de Linux (no tiene que ser el de Windows, pero anótala porque es tu clave sudo).

Configuración inicial de Ubuntu

sudo apt update && sudo apt upgrade -y
sudo apt install build-essential curl wget git unzip -y

2. Docker Desktop con integración WSL2

Docker es vital para levantar bases de datos de prueba o contenedores de Airflow.

  1. Descarga e instala Docker Desktop para Windows.
  2. Al iniciar, ve a Settings (engranaje) > General > Marca "Use the WSL 2 based engine".
  3. Ve a Settings > Resources > WSL Integration > Habilita tu distribución de Ubuntu.
✅ Verificar Docker

Abre tu terminal de Ubuntu y escribe docker run hello-world. Si funciona sin sudo, ¡estás listo!

3. VS Code y WSL

VS Code tiene una extensión mágica que permite correr el editor en Windows, pero ejecutar el código en el entorno de Ubuntu.

  1. Instala VS Code en Windows.
  2. Instala la extensión "WSL" de Microsoft.
  3. Abre tu terminal de Ubuntu, navega o crea un directorio (ej. mkdir proyectos && cd proyectos) y ejecuta code .
  4. La primera vez descargará el "VS Code Server" para Linux.

4. Configurar Python y Entornos Virtuales

En el mundo de los datos, manejar versiones de Python es un dolor de cabeza. Recomendamos usar pyenv o uv.

# Instalar uv (gestor ultrarápido de Python escrito en Rust)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Crear un entorno virtual para un proyecto
cd mi_proyecto
uv venv

# Activar el entorno virtual
source .venv/bin/activate

# Instalar dependencias a la velocidad de la luz
uv pip install pandas pyarrow duckdb
⚠️ Importante sobre los Archivos

Para mejor rendimiento, guarda el código de tus proyectos dentro del sistema de archivos de Linux (ej. /home/tu_usuario/proyectos), no en el de Windows (ej. /mnt/c/Users/...). El acceso entre ambos sistemas de archivos es lento.

Capítulo 15
Seguridad