top of page

📂Writing Files en Databricks (Parte 1)

  • 28 jul
  • 2 min de lectura

En los capítulos anteriores exploramos cómo consultar archivos almacenados dentro de un Volumen utilizando tanto Spark SQL como PySpark. Sin embargo, en un entorno real de Data Engineering, el objetivo rara vez es quedarse únicamente con la lectura de los datos.


Lo habitual es transformar esas fuentes de información y almacenarlas en Delta Tables, aprovechando las capacidades de Delta Lake, como el versionamiento, las transacciones ACID y la integración con Unity Catalog. En este capítulo analizo dos de las principales alternativas para realizar ese proceso:

⚡ CREATE TABLE AS SELECT (CTAS)

  • El primer enfoque consiste en utilizar CTAS (Create Table As Select), este método permite crear una nueva tabla directamente a partir del resultado de una consulta SQL.

  • Si la consulta lee un archivo desde un Volumen, Databricks ejecuta el SELECT, infiere automáticamente el esquema y crea la nueva Delta Table en una sola operación.

  • Es una de las formas más rápidas y utilizadas para materializar datos dentro de un Lakehouse, especialmente en procesos ETL o durante la construcción de las capas Bronze, Silver y Gold.

  • El segundo enfoque utiliza las cláusulas USING y OPTIONS, que, a diferencia de CTAS, aquí no se parte del resultado de una consulta, sino que se define explícitamente el formato de la fuente de datos y las opciones necesarias para leerla.

  • Un detalle importante es que este mecanismo crea External Tables, debido que la ubicación de los datos se especifica mediante OPTIONS(path = ...). Y, en este escenario, Unity Catalog administra únicamente los metadatos, mientras que los archivos físicos permanecen en el almacenamiento externo previamente configurado.

📌 ¿Cuál utilizar?

Ambos enfoques permiten crear tablas a partir de archivos almacenados en Volúmenes, pero están pensados para necesidades diferentes.

  • CTAS resulta ideal cuando queremos materializar el resultado de una consulta y dejar que Databricks infiera automáticamente el esquema.

  • USING + OPTIONS ofrece un mayor control sobre la lectura de la fuente de datos y se utiliza para registrar información almacenada en ubicaciones externas.

Comprender estas diferencias permite seleccionar la estrategia más adecuada según la arquitectura y los requisitos de cada proyecto. En el notebook de GitHub encontrarás la demostración completa, junto con los ejemplos prácticos y la explicación detallada de cada enfoque (Repositorio-GitHub).

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