top of page
Brayan Neciosup Bolaños
🌐 Data Engineering Hub


🧬 Cloning Tables en Databricks: Shallow Clone vs Deep Clone
Introducción En proyectos de Data Engineering es muy común necesitar una copia de una tabla para realizar pruebas, desarrollar nuevas transformaciones o incluso crear respaldos. Para ello, Databricks incorpora la funcionalidad Clone, que permite generar una nueva Delta Table a partir de otra ya existente. Sin embargo, antes de clonar una tabla conviene responder una pregunta: 👉 ¿Necesitamos únicamente una nueva definición lógica o una copia completamente independiente de los
hace 2 días2 min de lectura


🛡️ Constraints en Delta Tables
Cuando comenzamos a trabajar con Delta Lake es normal asumir que los constraints funcionan igual que en una base de datos relacional. Sin embargo, Databricks adopta un enfoque diferente y podemos agruparlos en dos categorías principales: ✅ Enforced Constraints: Son restricciones que Delta Lake sí valida durante la escritura de datos., es decir, si un registro incumple alguna de estas condiciones, la operación es rechazada. Entre ellas encontramos: CHECK NOT NULL ℹ️ Informati
hace 4 días1 min de lectura


⚡ CTAS (Create Table As Select) en Databricks
Cuando comenzamos a trabajar con SQL, normalmente creamos una tabla definiendo manualmente cada una de sus columnas mediante CREATE TABLE. Sin embargo, en proyectos reales de Data Engineering existe una alternativa mucho más práctica: CTAS (Create Table As Select). ¿Qué es un CTAS? CTAS permite crear una nueva tabla directamente a partir del resultado de una consulta SQL. En una sola operación, Databricks: Ejecuta la consulta. Infiere automáticamente el esquema. Crea la nueva
hace 6 días1 min de lectura


🚀 Procesamiento de Eventos en Tiempo Real con AWS Kinesis y Databricks
📖 Introducción Uno de los desafíos más interesantes al aprender procesamiento de datos en tiempo real es dar el salto desde escenarios basados en archivos hacia arquitecturas capaces de consumir y procesar eventos conforme estos son generados. Con ese objetivo desarrollé este proyecto utilizando Amazon Kinesis Data Streams como fuente de eventos y Databricks Structured Streaming como motor de procesamiento. A lo largo de la implementación se construyó un flujo completo de st
24 jun3 min de lectura


🗑️ Eliminación y recuperación de Managed y External Tables
Introducción Después de comprender las diferencias entre Managed Tables y External Tables, surge una pregunta muy importante: 👉 ¿Qué sucede cuando eliminamos una tabla por error? La respuesta depende del tipo de tabla que estemos utilizando. 📦 Recuperando una Managed Table Las Managed Tables son administradas completamente por Databricks. Esto significa que Databricks controla tanto: Los metadatos registrados en Unity Catalog. Los archivos físicos almacenados en Delta Lake.
24 jun2 min de lectura


🏗️ Managed Tables vs External Tables en Databricks
Introducción Una vez comprendido cómo funcionan Delta Lake y Unity Catalog, aparece una de las decisiones más importantes al momento de crear tablas en Databricks: 👉 ¿Managed Table o External Table? Aunque muchas personas piensan que la diferencia está relacionada con el formato de almacenamiento, la realidad es otra. La principal diferencia radica en quién administra los archivos físicos de la información. 📦 Managed Tables Las Managed Tables son tablas donde Databricks adm
23 jun2 min de lectura


🧹 VACUUM y los archivos obsoletos en Delta Lake
Después de entender cómo funcionan las Delta Tables, el Transaction Log y el Time Travel, surge una pregunta bastante natural: 👉 ¿Qué ocurre con los archivos antiguos cuando realizamos cambios sobre una tabla? La respuesta está relacionada con una característica fundamental de Delta Lake: los archivos son inmutables. Por ello, operaciones como: INSERT UPDATE DELETE MERGE OPTIMIZE no modifican archivos existentes. En su lugar: 📦 Se generan nuevos archivos Parquet. 📝 Se regi
19 jun1 min de lectura


⚡ Optimizando Delta Tables con OPTIMIZE y ZORDER
Después de explorar Time Travel y Restore Table, decidí revisar uno de los mecanismos más importantes para mejorar el rendimiento de una Delta Table: OPTIMIZE. Y, a medida que una tabla recibe operaciones como INSERT, UPDATE, DELETE, MERGE o procesos de Streaming, es común que se generen múltiples archivos pequeños (small files). Aunque Spark es un motor distribuido, leer miles de archivos pequeños puede generar un costo adicional asociado a la gestión y coordinación de esas
17 jun1 min de lectura


🔄 Restaurando versiones anteriores con RESTORE TABLE en Delta Lake
Después de revisar⏪Time Travel y comprender cómo consultar versiones históricas de una Delta Table, el siguiente paso natural es aprender a recuperar esos estados anteriores. Para ello, Delta Lake incorpora la operación RESTORE TABLE, una funcionalidad que permite reconstruir una tabla completa a partir de una versión específica o de una fecha y hora determinada. 🚨 Esta capacidad resulta especialmente útil cuando ocurren situaciones como: ❌ Actualizaciones incorrectas. ❌ Eli
15 jun1 min de lectura


Explorando Time Travel en Delta Lake
Uno de los conceptos más interesantes de Delta Lake es la capacidad de consultar información histórica mediante la funcionalidad conocida como Time Travel. En este notebook práctico estuve revisando dos formas de acceder a versiones anteriores de una Delta Table: Consulta por número de versión. Consulta por fecha y hora específica (timestamp). Esta característica es posible gracias al historial de transacciones almacenado en el Transaction Log (_delta_log), que permite recons
13 jun1 min de lectura


Creando e inspeccionando una Delta Table desde cero
Después de revisar la arquitectura de Databricks, tale como: Apache Spark, Delta Lake y Unity Catalog, decidí dar el siguiente paso: llevar toda esa teoría a la práctica. En este laboratorio construyo una Delta Table desde cero utilizando Spark SQL y una estructura gobernada mediante Catalog, Schema y Table. Además, realizo una primera inspección utilizando dos comandos fundamentales: DESCRIBE DETAIL Permite obtener información técnica sobre la tabla, incluyendo ubicación, fo
11 jun1 min de lectura


Entendiendo el Transaction Log (_delta_log): el verdadero cerebro detrás de Delta Lake
Introducción En el post anterior vimos cómo los datos recorren las distintas capas de Databricks hasta terminar almacenados físicamente como archivos Parquet dentro de una Delta Table. Sin embargo, esto nos lleva a realizar una serie de preguntas muy importantes: Si los archivos Parquet ya existen físicamente, ¿quién decide cuáles forman parte de la tabla? ¿Quién mantiene el historial de cambios? ¿Cómo sabe Delta Lake qué información es válida? La respuesta está en uno de los
3 jun3 min de lectura


Entendiendo cómo Delta Lake almacena realmente los datos en Databricks
Introducción Para realmente entender qué es Delta Lake y por qué cambió completamente la manera moderna de trabajar con datos… Primero necesitamos entender cómo interactúan las distintas capas de Databricks. Porque honestamente, este fue uno de los puntos donde finalmente muchas piezas empezaron a conectar para mí... La arquitectura moderna de Databricks Antes de hablar directamente de Delta Lake, veamos cómo se conectan sus capas principales: 1️⃣ Workspace⬇️2️⃣ Unity Catalog
28 may2 min de lectura


Git: una habilidad que tarde o temprano todos terminamos necesitando
Introducción Hay tecnologías que aprendemos porque están de moda. Y hay otras que aprendemos porque, tarde o temprano, la realidad nos obliga. Para mí, Git pertenece completamente al segundo grupo. Hoy considero que aprender Git es prácticamente obligatorio para cualquier persona que trabaje con datos o desarrollo. Da igual si eres: 👨💻 Software Developer ⚙️ Data Engineer 📊 Data Analyst 🤖 ML Engineer 🧠 Data Scientist En algún momento terminarás trabajando con código, scr
26 may2 min de lectura


Entendiendo los Clusters en Databricks y por qué siguen siendo importantes en la era Serverless
Introducción Habiendo revisado distintas capas de la arquitectura de Databricks, hay un concepto fundamental que muchas personas terminan entendiendo recién después de cierto tiempo utilizando la plataforma: 👉 Los clusters. Y aunque hoy Databricks Free Edition apuesta muchísimo por experiencias serverless, entender cómo funcionan los clusters sigue siendo clave para comprender la arquitectura distribuida detrás de la plataforma. Databricks no es un cloud provider Antes de ha
22 may2 min de lectura


Entendiendo el Workspace de Databricks y la separación entre Control Plane y Data Plane
Introducción Después de revisar: ☁️ Infraestructura Cloud ⚡ Runtime (Apache Spark + Delta Lake) 🔐 Unity Catalog Llegamos a otra de las capas más importantes dentro de la arquitectura moderna de Databricks: 👉 El Workspace. Y honestamente… aquí fue donde entendí que Databricks no es solo procesamiento o notebooks. Es un entorno completo que centraliza muchísimas capacidades dentro de una sola plataforma. ¿Cómo interactuamos realmente con Databricks? La respuesta rápida sería:
19 may2 min de lectura


Entendiendo Unity Catalog: la capa de gobernanza dentro de Databricks
Introducción La arquitectura de Databricks sigue trayendo muchísimos conceptos interesantes. Y, después de revisar: ☁️ Infraestructura Cloud ⚡ Runtime (Apache Spark + Delta Lake) Hoy toca hablar de otra de las capas más importantes dentro de la arquitectura moderna de Databricks: 👉 Unity Catalog. Y honestamente… este fue otro concepto que entendí mal al inicio. Durante mucho tiempo pensé que Unity Catalog era “el almacenamiento de Databricks”. Pero no. Entonces… ¿qué es real
15 may2 min de lectura


Entendiendo Delta Lake: la capa que da orden y confiabilidad al Data Lake
Introducción Después de revisar Apache Spark dentro de la capa Runtime de Databricks, llegamos a otro de los componentes más importantes de toda la arquitectura Lakehouse: Delta Lake. Y honestamente, este fue uno de los conceptos que más me costó entender al inicio 😅. Sin embargo, al revisar documentación oficial y comprender cómo funciona realmente por debajo, todo empezó a tener mucho más sentido. Delta Lake no reemplaza al Data Lake Lo primero que hay que entender es algo
12 may3 min de lectura


Entendiendo Databricks Runtime y el papel fundamental de Apache Spark
Introducción Después de revisar la primera capa de la arquitectura de Databricks —su infraestructura cloud y enfoque multi-cloud— llega una de las capas más importantes dentro de toda la plataforma: 👉 Databricks Runtime Y honestamente… esta fue otra de las partes que no entendí bien al inicio 😅. Usaba Databricks todos los días, pero realmente no comprendía qué significaba el “runtime” dentro de la arquitectura. ¿Qué es Databricks Runtime? En pocas palabras: 👉 Es la capa do
9 may2 min de lectura


Entendiendo la arquitectura de Databricks: Capa 1 – Infraestructura Cloud ☁️
Introducción Después de revisar nuevamente los conceptos de Databricks y su enfoque como plataforma inteligente de datos, hubo algo que no entendí bien al inicio… incluso usándolo todos los días: Su arquitectura interna. En este post empiezo a descomponer Databricks capa por capa, comenzando por la base: la infraestructura. ¿Databricks es un cloud provider? Una de las primeras ideas que suele aparecer es: “Databricks es un proveedor de cloud...” ❌ No. Databricks no tiene infr
6 may2 min de lectura
bottom of page