Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Devuelve la versión de la instantánea más recientemente confirmada para el flujo adjunto AUTO CDC ... FROM SNAPSHOT . La instantánea comprometida puede provenir de una actualización previa del pipeline o de una iteración anterior de la actualización actual.
Esta función solo está disponible dentro de la WITH VERSION (...) cláusula de un AUTO CDC ... FROM SNAPSHOT flujo.
Syntax
last_snapshot_version()
Argumentos
Esta función no toma ningún argumento.
Devoluciones
Una relación de una sola columna con el mismo nombre de columna y tipo que la consulta de versión del flujo adjunto, que contiene 0 o 1 filas:
- 1 fila que contiene la versión de instantánea más recientemente confirmada.
- 0 filas si el flujo no ha confirmado una instantánea desde su creación inicial o su último refresco completo.
Después de que cada instantánea se confirme con éxito, last_snapshot_version() esa versión comprometida se expone a la siguiente evaluación de la consulta de versión, incluyendo evaluaciones dentro de la misma actualización de pipeline. Esto permite que una actualización seleccione y procese varias versiones en orden.
Examples
El siguiente flujo se usa last_snapshot_version() para encontrar el siguiente archivo a procesar después del último que se confirmó:
CREATE FLOW orders_cdc
AS AUTO CDC INTO orders
FROM SNAPSHOT (...)
WITH VERSION (
SELECT struct(modification_time, path) AS version
FROM list_files('/Volumes/catalog/schema/landing/orders/')
WHERE (
NOT EXISTS (SELECT 1 FROM last_snapshot_version())
OR struct(modification_time, path) > (SELECT version FROM last_snapshot_version())
)
ORDER BY modification_time, path
LIMIT 1
)
KEYS (order_id);
Errors
last_snapshot_version() está disponible solo dentro de la WITH VERSION (...) cláusula de un AUTO CDC ... FROM SNAPSHOT flujo. En cualquier otro lugar, Spark resuelve el nombre como una función ordinaria de valor en tabla. Como no está definida tal función, eleva UNRESOLVABLE_TABLE_VALUED_FUNCTION (SQLSTATE 42883).