Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Geeft de versie terug van de meest recent gecommitteerde snapshot voor de omsluitende AUTO CDC ... FROM SNAPSHOT flow. De gecommitteerde snapshot kan afkomstig zijn van een eerdere pipeline-update of van een eerdere iteratie van de huidige update.
Deze functie is alleen beschikbaar binnen de WITH VERSION (...) clausule van een AUTO CDC ... FROM SNAPSHOT flow.
Syntax
last_snapshot_version()
Arguments
Deze functie heeft geen argumenten.
Returns
Een enkelkolomrelatie met dezelfde kolomnaam en type als de versiequery van de omsluitende flow, met 0 of 1 rijen:
- 1 rij met de meest recent gecommitteerde snapshotversie.
- 0 rijen als de flow geen snapshot heeft gecommitteerd sinds de eerste aanmaak of de meest recente volledige verversing.
Na elke succesvolle last_snapshot_version() comm van elke snapshot wordt die gecommitteerde versie blootgesteld aan de volgende evaluatie van de versiequery, inclusief evaluaties binnen dezelfde pipeline-update. Dit maakt het mogelijk dat één update meerdere versies in volgorde selecteert en verwerkt.
Examples
De volgende flow gebruikt last_snapshot_version() om het volgende bestand te vinden dat verwerkt moet worden na het laatste dat committed:
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);
Fouten
last_snapshot_version() is alleen beschikbaar binnen de WITH VERSION (...) clausule van een AUTO CDC ... FROM SNAPSHOT flow. Overal elders lost Spark de naam op als een gewone tabelwaardige functie. Omdat zo'n functie niet gedefinieerd is, genereert UNRESOLVABLE_TABLE_VALUED_FUNCTION deze (SQLSTATE 42883).