REFRESH (MATERIALIZED VIEW или STREAMING TABLE)
Область применения: Databricks SQL
Refresh данные для потоковой table или материализованного представления. Данные обновляются синхронно по умолчанию.
Вы можете отслеживать состояние refresh, выполнив DESCRIBE EXTENDED
.
Примечание.
Операции создания и refresh для материализованных views и потоковой передачи tables используются бессерверным конвейером Delta Live Tables. Вы можете использовать обозреватель Catalog для просмотра сведений о резервных конвейерах в пользовательском интерфейсе. См. Что такое обозреватель Catalog?.
Синтаксис
REFRESH { MATERIALIZED VIEW | [ STREAMING ] TABLE } table_name [ FULL | { SYNC | ASYNC }]
Parameters
-
Определяет материализованное представление или потоковую передачу от table до refresh. Имя не должно включать темпоральную спецификацию или спецификацию параметров. Если объект не удается найти Azure Databricks, возникает ошибка TABLE_OR_VIEW_NOT_FOUND .
ПОЛНОЕ
Следует ли выполнять refreshполностью?
- Для материализованного viewsполный refresh обрабатывает все данные, доступные в источнике.
- Для потоковой передачи tablesполный refresh усечение table и обрабатывает все данные, доступные в источнике, с последним определением потоковой table.
Не рекомендуется вызывать полные обновления в источниках, которые не хранят всю историю данных или имеют короткие периоды хранения, например Kafka, так как полная refresh усечение существующих данных. Возможно, вы не сможете восстановить старые данные, если данные больше не доступны в источнике.
SYNC
Следует ли выполнять синхронную refresh. Команды блокируются до создания материализованного представления или потоковой передачи table и начальной загрузки данных.
Это поведение принимается по умолчанию.
ASYNC
Следует ли выполнять асинхронную refresh, которая запускает фоновое задание в Delta Live Tables. Команда возвращается сразу перед завершением загрузки данных со ссылкой на конвейер Delta Live Tables, поддерживающий материализованное представление или потоковую передачу table. Чтобы просмотреть состояние refresh, перейдите по ссылке.
Необходимо указать, требуется ли
ASYNC
выполнять асинхронное обновление. Операция выполняется синхронно, если ключевое слово не указано.
Примеры
-- 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 TABLE cat.db.st_name FULL;