Por qué Git por sí solo no puede versionar datos
Las limitaciones de Git con conjuntos de datos de varios gigabytes.
Por qué Git por sí solo no puede versionar datos es una lección gratuita de MLOps Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de MLOps Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de MLOps Academy incluye 4 lecciones en total.
El código es pequeño, los datos son enormes
Git se creó para el código fuente: archivos de texto pequeños que cambian línea a línea. Sus conjuntos de datos suelen ocupar gigabytes y ser binarios, algo completamente distinto.
Git almacena cada versión
Git conserva para siempre una instantánea completa de cada versión de un archivo. Si confirma un archivo de 2 GB diez veces, el repositorio puede crecer hasta acercarse a 20 GB de historial. 😬
Las diferencias binarias no sirven
Git destaca con el texto porque puede mostrar diferencias línea por línea. Con archivos binarios, como imágenes o parquet, no puede calcular diferencias útiles y simplemente guarda la copia nueva completa.
Clonar se vuelve un problema
Como el historial vive en el repositorio, un compañero que lo clone también debe descargar todas las versiones anteriores de los conjuntos de datos. Un clon sencillo puede tardar muchísimo y llenar el disco.
Los límites del alojamiento pasan factura
GitHub limita los archivos individuales a 100 MB y muestra advertencias a partir de 50 MB. La mayoría de los conjuntos de datos reales supera ampliamente ese límite y el push se rechaza.
Git LFS ayuda, pero solo hasta cierto punto
Git LFS sustituye los archivos grandes por punteros, lo que reduce el problema del tamaño. Sin embargo, carece de funciones de ML como pipelines, remotos por proyecto y etapas de datos reproducibles.
Aún necesita reproducibilidad
Un experimento solo es fiable si puede recrear los datos exactos que utilizó. Git por sí solo no puede vincular de forma fiable un commit con una instantánea concreta de un conjunto de datos.
La idea principal: almacenar punteros
La solución consiste en conservar en Git un pequeño archivo de puntero que identifique los datos, mientras los bytes pesados viven en un almacenamiento de objetos económico. Git sigue el puntero, no la carga útil.
# Git tracks this small text pointer, not the 2GB file
outs:
- md5: a1b2c3d4e5f6...
size: 2147483648
path: data/train.csvEntra DVC
DVC (Data Version Control) hace exactamente eso. Combina Git para el código con una caché y un remoto independientes para los datos, y ofrece comandos similares a los de Git para los conjuntos de datos.
Los datos y el código permanecen sincronizados
Con DVC, recuperar un commit antiguo de Git también restaura la versión de los datos correspondiente. El código y el conjunto de datos avanzan juntos como una unidad coherente.
Flujo de trabajo familiar
DVC adopta el modelo mental de Git: añade, confirma, envía y recupera datos. Si conoce los fundamentos de Git, ya entiende la mitad de DVC. 🎉
Comprobación rápida
¿Por qué causa problemas confirmar conjuntos de datos grandes directamente en Git?
Repaso
Git es excelente para el código, pero tiene problemas con los datos binarios grandes: el historial aumenta demasiado y se alcanzan los límites de tamaño. DVC almacena punteros pequeños en Git y mantiene los datos pesados sincronizados en otro lugar.
Preguntas frecuentes
¿La lección «Por qué Git por sí solo no puede versionar datos» es gratis?
Sí — el texto completo de «Por qué Git por sí solo no puede versionar datos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de MLOps Academy, actualiza a CoddyKit PRO. El curso de MLOps Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Por qué Git por sí solo no puede versionar datos»?
Las limitaciones de Git con conjuntos de datos de varios gigabytes. Practicas MLOps Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar MLOps Academy?
No se requiere experiencia previa. MLOps Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Por qué Git por sí solo no puede versionar datos»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de MLOps Academy?
Sí. Cada lección de MLOps Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Por qué Git por sí solo no puede versionar datos
- Inicialice DVC y realice el seguimiento de un conjunto de datos
- Envíe datos al almacenamiento remoto
- Vuelva a una versión anterior del conjunto de datos