¿Cómo empiezo en datos si solo sé SQL y Python?

pre-paso: instalar docker

Antes de levantar tu primera base de datos en contenedor, necesitas tener Docker instalado en tu máquina. Aquí un resumen rápido según tu sistema operativo:

windows / macos

  1. Descarga Docker Desktop.
  2. Instala con el asistente y reinicia si lo pide.
  3. Abre una terminal y valida:
verificar versión
docker --version

Deberías ver algo como Docker version 26.x

linux (ubuntu/debian)

instalación en linux
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release

# añadir repo oficial
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y

docker --version

Instala el engine oficial desde el repositorio de Docker.

extra tip (linux)

evitar escribir sudo
sudo usermod -aG docker $USER
# luego cerrar sesión y volver a entrar

Te permite ejecutar docker sin sudo en cada comando.

1) docker — tu sandbox de datos

levanta un Postgres local. rompes algo → borras el contenedor y listo. cero miedo.

2) conectar fuentes: csv, api y base de datos

  • CSV: lee con pandas y sube a Postgres.
  • API: prueba con Rick & Morty; es perfecta para practicar requests.
  • BD: usa psycopg2 o sqlalchemy.

3) nube (con cuidado) o simula local

cuidado con costos: una query mal hecha puede salir cara. si consigues créditos (certificaciones), prueba BigQuery; si no, simula tu pipeline con Postgres/SQLite en Docker. la lógica es la misma.

4) airflow local: automatiza tu etl

no necesitas Composer todavía. instala Airflow local y crea un DAG con PythonOperator que lea una API y cargue en tu Postgres dockerizado.

5) reportes sin looker: python basta

lee desde Postgres y genera un PNG + HTML. suficiente para un “entregable” rápido.

recap de la ruta

  • Docker: Postgres local.
  • Fuentes: API / CSV / BD → Python.
  • Nube: con créditos; si no, simula local.
  • Airflow local: DAG con PythonOperator + psycopg2.
  • Reportes: gráficos/HTML rápidos en Python.