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.
- Crear tablas streaming y materialized views
- Comparar declarativo con Structured Streaming
- Distinguir Spark Declarative Pipelines de la oferta gestionada Lakeflow
04DiagnósticoPython 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.
+
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.
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.
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 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.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.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