REFRESH (MATERIALIZED VIEW nebo STREAMING TABLE)
Platí pro: Databricks SQL
Aktualizujte data pro streamovanou tabulku nebo materializované zobrazení. Data se ve výchozím nastavení aktualizují synchronně.
Stav aktualizace můžete sledovat spuštěním DESCRIBE EXTENDED
příkazu .
Poznámka:
Operace vytváření a aktualizace materializovaných zobrazení a streamovaných tabulek využívají bezserverové potrubí DLT. Průzkumníka katalogu můžete použít k zobrazení podrobností o záložních kanálech v uživatelském rozhraní. Podívejte se na Co je to Průzkumník katalogu?.
Syntaxe
REFRESH { MATERIALIZED VIEW | [ STREAMING ] TABLE } table_name [ FULL | { SYNC | ASYNC }]
Parametry
-
Identifikuje materializované zobrazení nebo tabulku streamování, která se má aktualizovat. Název nesmí obsahovat dočasnou specifikaci ani specifikaci možností. Pokud objekt nejde najít, Azure Databricks vyvolá TABLE_OR_VIEW_NOT_FOUND chybu.
PLNÝ
Zda se má provést úplná aktualizace.
- V případě materializovaných zobrazení zpracovává úplná aktualizace všechna data dostupná ve zdroji.
- U streamovacích tabulek zkrátí úplná aktualizace tabulku a zpracuje všechna data dostupná ve zdroji podle nejnovější definice streamovací tabulky.
Nedoporučuje se volat úplné aktualizace zdrojů, které nezachovají celou historii dat nebo mají krátké doby uchovávání, například Kafka, protože úplná aktualizace zkracuje stávající data. Pokud už data nejsou ve zdroji dostupná, možná nebudete moct obnovit stará data.
SYNC
Určuje, jestli se má provést synchronní aktualizace. Příkaz blokuje, dokud se nevytvoří materializované zobrazení nebo tabulka streamování a počáteční načtení dat nedokončí.
Toto je výchozí chování.
ASYNCHRONNÍ
Určuje, jestli se má provést asynchronní aktualizace, která spustí úlohu na pozadí v DLT. Příkaz se vrátí bezprostředně před dokončením načítání dat s odkazem na kanál DLT, který zálohuje materializované zobrazení nebo streamovací tabulku. Stav aktualizace můžete zobrazit na tomto odkazu.
Je nutné zadat
ASYNC
, zda chcete provádět asynchronní aktualizace. Operace se provádí synchronně, pokud není zadáno žádné klíčové slovo.
Příklady
-- Refreshes the materialized view to reflect the latest available data
> REFRESH MATERIALIZED VIEW catalog.schema.view_name;
-- Refreshes the streaming table to process the latest available data
-- The current catalog and schema will be used to qualify the table
> REFRESH STREAMING TABLE st_name;
-- Truncates the table and processes all data from scratch for the streaming table
> REFRESH STREAMING TABLE cat.db.st_name FULL;