top of page

🎯✍️ OverWriting Strategies: Estrategias de Sobre-Escritura en Delta Lake - 2

  • 18 ago
  • 2 min de lectura

En el capítulo anterior vimos DROP & RECREATE TABLE, una estrategia sencilla pero que implica eliminar la tabla y, con ello, perder la continuidad de su historial. Ahora veremos una alternativa mucho más interesante: 🔄 INSERT OVERWRITE.


Y, a diferencia de DROP & RECREATE, INSERT OVERWRITE permite reemplazar el contenido de una Delta Table sin destruir la tabla ni su historial de versiones. Cada ejecución genera una nueva transacción dentro del deltalog.

🗑️ Estado anterior
        ↓
🔄 INSERT OVERWRITE
        ↓
📦 Nuevo conjunto de datos
        ↓
📜 Nueva versión en _delta_log

De esta manera, el estado anterior no desaparece del historial y podemos continuar utilizando capacidades como Time Travel.

⚠️ INSERT INTO vs INSERT OVERWRITE

Para entender mejor esta estrategia, primero debemos diferenciarla de INSERT INTO.

📥 INSERT INTO, es una operación aditiva, donde, cada ejecución agrega nuevos registros al contenido existente:

Ejecución 1 → Datos originales
Ejecución 2 → + Nuevos datos
Ejecución 3 → + Nuevos datos

Si procesamos nuevamente el mismo conjunto de información, podemos terminar almacenándolo varias veces. Esto puede provocar duplicidad de datos.

🔄 INSERT OVERWRITE

Aquí el comportamiento cambi,y, en lugar de agregar información al estado actual, la operación reemplaza el estado de la tabla con el resultado de la nueva ejecución.

Internamente, Delta Lake registra los cambios en el deltalog mediante las operaciones correspondientes sobre los archivos:

remove → Archivos del estado anterior
add    → Nuevos archivos

Ambas forman parte de una misma transacción, por ello, si ejecutamos nuevamente el mismo proceso, el resultado final de la tabla corresponderá a la última ejecución.

🎯 Ni una fila más, ni una fila menos.

🎓 En resumen

La diferencia fundamental puede resumirse así:

📥 INSERT INTO
       ↓
    Agrega datos

🔄 INSERT OVERWRITE
       ↓
    Reemplaza datos
       +
    Conserva historial

Por eso, cuando necesitamos reprocesar y reemplazar el contenido de una tabla, INSERT OVERWRITE puede ser una alternativa mucho más adecuada que simplemente utilizar INSERT INTO (Repositorio-GitHub).

Y este es solo el siguiente paso, en el siguiente capítulo continuaremos con una de las estrategias más importantes para trabajar con cambios sobre los datos: MERGE.

Comentarios


IngenieriaDatos.jpg

Tomar decisiones sin datos es como navegar en la oscuridad...

En la era digital, los datos son el activo más valioso de las empresas; su correcta recopilación, análisis y aplicación estratégica son clave para impulsar la toma de decisiones informada, la innovación y el éxito empresarial

  • GitHub
  • LinkedIn
  • Youtube

Copyrights © 2026 Brayan Neciosup Bolaños All rights reserved.

bottom of page