Saltar al contenido
Lakehouse LabLakehouse LabPreparación Databricks Data Engineer
Módulo 18 · Lección

Python y SQL en pipelines

Contenido abierto

Puedes leer todo sin registrarte. Solo crearemos un perfil anónimo cuando decidas guardar tu progreso.

Lección 4 de 5

Python y SQL en pipelines

Los flows permiten varias entradas hacia un target y distinguen append, AUTO CDC y cargas `ONCE` dentro del mismo modelo declarativo.

Duración
17 min aprox.
Objetivo
Los flows permiten varias entradas hacia un target y distinguen append, AUTO CDC y cargas `ONCE` dentro del mismo modelo declarativo.
Siguiente paso
Continuar con la siguiente lección
Ver detalles del módulo

Spark Declarative Pipelines en Lakeflow

Declara datasets y dependencias para que Lakeflow gestione el grafo y la ejecución incremental sobre el framework actual de Spark.

Al terminar podrás
  • Crear tablas streaming y materialized views
  • Comparar declarativo con Structured Streaming
  • Distinguir Spark Declarative Pipelines de la oferta gestionada Lakeflow
Ver fuentes y revisión

Metadatos editoriales

Última revisión
21 jul 2026
Nivel
Professional
Ruta relacionada
pipelines
Dominios blueprint
Spark Declarative Pipelines · Lakeflow
Estado
Revisión editorial interna
Fuentes principales
Spark Declarative Pipelines flows · Databricks · Materialized views · Databricks
Reportar un error
04
Diagnóstico

Python y SQL en pipelines

Los flows permiten varias entradas hacia un target y distinguen append, AUTO CDC y cargas `ONCE` dentro del mismo modelo declarativo.

Mostrar prerrequisitos
Dificultad
Professional
Prerrequisitos
m12
Reportar un error en esta lección

Un default flow acompaña la definición normal de un dataset. Flows adicionales pueden unir feeds regionales en una misma streaming table sin construir un `union` monolítico. Un append flow añade filas; AUTO CDC aplica cambios ordenados; `ONCE` ejecuta una carga batch una sola vez salvo full refresh.

Cada flow debe tener identidad y semántica compatibles con el target. Un target de AUTO CDC solo recibe flows AUTO CDC. Para backfill histórico, un append flow `ONCE` aislado puede coexistir con la ingesta continua, siempre que no duplique rangos ya procesados.

Modelo mental

Un flow es la unidad que describe cómo datos de una fuente llegan a un target. Separar flow y tabla permite que varios orígenes alimenten el mismo dataset bajo reglas claras: un append flow para regiones, un AUTO CDC flow para cambios de clientes o un flow `ONCE` para una carga histórica. La multiplicidad no equivale a permitir escrituras arbitrarias concurrentes; todos los flows forman parte del grafo y del protocolo gestionado del pipeline. `ONCE` ejecuta una carga una sola vez dentro del ciclo de vida registrado y puede volver a ejecutarse en un refresh completo, por lo que su lógica debe ser determinista. AUTO CDC es el nombre vigente recomendado; `APPLY CHANGES` conserva la misma sintaxis y sigue disponible, además de aparecer en material de certificación Professional. El estudiante debe reconocer ambos términos sin presentar el nombre anterior como la opción nueva.

Append flow

Flow declarativo que incorpora registros de una fuente al target sin interpretar cada nueva fila como una actualización de clave existente.

Permite unir fuentes append-only manteniendo progreso y observabilidad separados dentro del mismo pipeline.
Flow ONCE

Flow destinado a una carga finita que se ejecuta una vez en actualizaciones normales y puede repetirse durante full refresh.

Sirve para bootstrap o backfill, pero obliga a escribir lógica determinista y compatible con reconstrucción.
APPLY CHANGES

Nombre anterior todavía disponible para la API cuya opción recomendada actual se denomina AUTO CDC y conserva la misma sintaxis.

Puede aparecer en código legado y en el blueprint Professional, por lo que hay que reconocerlo sin confundir la recomendación vigente.
SQLFlows regionales hacia una tabla
CREATE OR REFRESH STREAMING TABLE main.bronze.orders_all;

CREATE FLOW orders_eu AS INSERT INTO main.bronze.orders_all
BY NAME SELECT *, 'eu' AS region
FROM STREAM(main.raw.orders_eu);

CREATE FLOW orders_us AS INSERT INTO main.bronze.orders_all
BY NAME SELECT *, 'us' AS region
FROM STREAM(main.raw.orders_us);

Valida claves y esquema comunes; `BY NAME` evita depender del orden físico de columnas.

Puntos clave

  • Varios append flows pueden escribir en una misma streaming table.
  • AUTO CDC targets solo aceptan flows AUTO CDC.
  • `ONCE` sirve para una carga finita y vuelve a ejecutarse en un full refresh.

Evita

  • Mezclar append y AUTO CDC sobre el mismo target sin respetar las restricciones del flow.
  • Usar `ONCE` para datos que seguirán llegando y dejar de ingerir silenciosamente después de la primera actualización.

Recuerdo activo

¿Cuándo volvería a ejecutarse un flow marcado `ONCE`?

Borrador privado · solo en este navegador
5 lecciones pendientes

Vista de lectura · sin ejecución

Learn Databricks

Learn Databricks · commit 08c378c

README.md