00 Preparación
Guía del facilitador para el trabajo previo: versión fijada de Python, dos altas cloud y por qué debe hacerse antes de la sesión.
Complemento para la lección 00 Preparación.
Tiempo
Unos 30 minutos en total. Es trabajo previo, no contenido para el día de la sesión: envíalo a los participantes con antelación y confirma que lo han terminado el día anterior, no esa misma mañana. Aquí no hay ningún tramo desatendido que permita «ponerlo en marcha y marcharse»: hay que instalar cinco herramientas, crear dos cuentas, clonar un repositorio y construir dos entornos virtuales, y todo ello requiere que el participante permanezca ante el teclado. Si alguien llega sin haberlo hecho, recuperarlo en directo cuesta unos 30 minutos de la sesión y obliga a sacrificar el tiempo que correspondía al módulo 01.
Guion
- Presenta el módulo como la fontanería necesaria, no como contenido del taller: dos nubes (Snowflake como origen y ClickHouse Cloud como destino), dos adaptadores de dbt, uno por nube, y un requisito mínimo estricto de Python que ambos comparten.
- Repite en voz alta, más de una vez, el dato esencial:
dbt-snowflakeydbt-clickhouserequieren Python 3.11, 3.12 o 3.13. Python 3.14+ rompemashumaro, una dependencia transitiva que comparten ambos adaptadores. - Señala los dos entornos —
workshop_public/snowflake_migration_lab/01-setup-snowflake/.venvyworkshop_public/snowflake_migration_lab/03-migrate-to-clickhouse/.venv— y explica que no pueden combinarse porque fijan intervalos de dependencias incompatibles. - Anima a crear ahora las dos cuentas cloud, no el día de la sesión: ni el periodo de prueba de Snowflake ni el de ClickHouse Cloud deberían convertirse en un bloqueo una vez que empiece el módulo 01.
Fallos habituales
- Python 3.14+ rompe
dbt-snowflakeydbt-clickhousemediantemashumaro. Es el fallo principal del módulo y también el más peligroso: elegir mal el intérprete no provoca un fallo aquí, sino que se manifiesta dos módulos después como un desconcertante error de importación de dbt que no parece guardar relación alguna con la versión de Python. Confirma quepython3 --versiondevuelve 3.11, 3.12 o 3.13 para el intérprete real detrás de cada entorno —workshop_public/snowflake_migration_lab/01-setup-snowflake/.venvyworkshop_public/snowflake_migration_lab/03-migrate-to-clickhouse/.venv—, y no solo para el intérprete predeterminado del sistema, antes de dar por superado el módulo. - TODO: el README propio del laboratorio no documenta ningún otro modo de fallo para
este módulo. Anota aquí cualquier otro problema que aparezca durante el ensayo: un
proxy corporativo o un firewall que bloquee
pip installoterraform init, avisos de licencia de Docker Desktop al iniciarlo por primera vez o demoras en la aprobación de las cuentas de prueba.
Pasos de restablecimiento
- Versión de Python incorrecta en un venv: haz
cdal módulo afectado —workshop_public/snowflake_migration_lab/01-setup-snowflake/oworkshop_public/snowflake_migration_lab/03-migrate-to-clickhouse/—, elimínalo y recréalo con el intérprete fijado, por ejemplorm -rf .venv && python3.13 -m venv .venv && source .venv/bin/activate, y vuelve a instalar el adaptador de ese entorno tal como se explica en el Paso 4 de la página del participante. - No hay ningún script de desmontaje aplicable a este módulo: todavía no se ha aprovisionado nada en ninguna de las dos nubes. Si un participante necesita rehacer un paso, resulta más barato repetirlo que restablecer otra cosa.
- TODO: confirma durante el ensayo si, para una sala con una conexión Wi-Fi poco fiable, conviene distribuir de antemano un entorno virtual ya construido en vez de instalar en directo las cinco herramientas y los dos entornos virtuales el día de la sesión.