Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
Retourne la version de l’instantané le plus récemment confirmé pour le flux d’enceinte AUTO CDC ... FROM SNAPSHOT . L’instantané engagé peut provenir d’une mise à jour précédente du pipeline ou d’une itération antérieure de la mise à jour en cours.
Cette fonction n’est disponible qu’à l’intérieur de la WITH VERSION (...) clause d’un AUTO CDC ... FROM SNAPSHOT flux.
Syntax
last_snapshot_version()
Arguments
Cette fonction ne prend pas d'arguments.
Returns
Une relation à colonne unique avec le même nom et type de colonne que la requête de version du flux d’enclos, contenant 0 ou 1 ligne :
- 1 ligne contenant la version d’instantané la plus récente confirmée.
- 0 ligne si le flux n’a pas validé d’instantané depuis sa création initiale ou son dernier rafraîchissement complet.
Après chaque validation réussie de chaque snapshot, last_snapshot_version() cette version engagée est exposée à la prochaine évaluation de la requête de version, incluant les évaluations au sein de la même mise à jour du pipeline. Cela permet à une seule mise à jour de sélectionner et traiter plusieurs versions dans l’ordre.
Examples
Le flux suivant sert last_snapshot_version() à trouver le fichier suivant à traiter après le dernier qui a été validé :
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 uniquement à l’intérieur de la WITH VERSION (...) clause d’un AUTO CDC ... FROM SNAPSHOT flux. Partout ailleurs, Spark résout le nom comme une fonction ordinaire à valeurs de table. Comme aucune fonction de ce type n’est définie, elle augmente UNRESOLVABLE_TABLE_VALUED_FUNCTION (SQLSTATE 42883).