REFRESH MATERIALIZED VIEW
REFRESH MATERIALIZED VIEW вручную обновляет конкретное асинхронное материализованное представление или его партиции.
ВНИМАНИЕ
Вы можете вручную обновлять только материализованные представления со стратегией обновления ASYNC или MANUAL. Проверить стратегию обновления асинхронного материализованного представления можно с помощью SHOW MATERIALIZED VIEWS. Эта операция требует привилегии REFRESH на целевом материализованном представлении.
Синтаксис
REFRESH MATERIALIZED VIEW [database.]mv_name
[PARTITION START ("<partition_start_date>") END ("<partition_end_date>")]
[FORCE]
[WITH { SYNC | ASYNC } MODE]
Параметры
| Параметр | Обязательный | Описание |
|---|---|---|
| mv_name | да | Имя материализованного представления для ручного обновления. |
| PARTITION START () END () | нет | Ручное обновление партиций в определённом временном интервале. |
| partition_start_date | нет | Начальная дата партиций для ручного обновления. |
| partition_end_date | нет | Конечная дата партиций для ручного обновления. |
| FORCE | нет | Если вы указываете этот параметр, Selena принудительно обновляет соответствующее материализованное представление или партиции. Если вы не указываете этот параметр, Selena автоматически определяет, обновлены ли данные, и обновляет партицию только при необходимости. |
| WITH ... MODE | нет | Синхронный или асинхронный вызов задачи обновления. SYNC указывает на синхронный вызов задачи обновления, и Selena возвращает результат задачи только когда задача завершится успешно или с ошибкой. ASYNC указ ывает на асинхронный вызов задачи обновления, и Selena возвращает успех сразу после отправки задачи, оставляя задачу выполняться асинхронно в фоновом режиме. Вы можете проверить статус задачи обновления асинхронного материализованного представления, запросив представления метаданных tasks и task_runs в Information Schema Selena. Для получения дополнительной информации см. Проверка статуса выполнения асинхронного материализованного представления. По умолчанию: ASYNC. Поддерживается начиная с версий v1.5.2. |
ВНИМАНИЕ
При обновлении материализованных представлений, созданных на основе внешних каталогов, Selena обновляет все партиции в материализованных представлениях.
Мониторинг
После выполнения REFRESH MATERIALIZED VIEW вы можете отслеживать статус и результат операции обновления следующими способами:
- Выполните
SHOW MATERIALIZED VIEWSдля просмотра статуса материализованного представления, включая время последнего обновления, состояние обновления и любые сообщения об ошибках. - Для получения более подробной информации о выполнении, особенно для асинхронных задач обновления, запросите системное представление
information_schema.task_runs. Это представление предоставляет записи о выполнении задач и их состояниях (PENDING, RUNNING, SUCCESS, FAILED). Для обновлений материализованных представлений полеEXTRA_MESSAGEвключает подробную информацию о партициях и деталях выполнения для каждой подзадачи обновления. Подробности см. в Понимание выполнения задач материализованного представления.
Примеры
Пример 1: Ручное обновление конкретного материализованного представления через асинхронный вызов.
REFRESH MATERIALIZED VIEW lo_mv1;
REFRESH MATERIALIZED VIEW lo_mv1 WITH ASYNC MODE;
Пример 2: Ручное обновление определённых партиций конкретного материализованного представления.
REFRESH MATERIALIZED VIEW lo_mv1
PARTITION START ("2020-02-01") END ("2020-03-01");
Пример 3: Принудительное обновление определённых партиций конкретного материализованного представления.
REFRESH MATERIALIZED VIEW lo_mv1
PARTITION START ("2020-02-01") END ("2020-03-01") FORCE;
Пример 4: Ручное обновление материализованного представления через синхронный вызов.
REFRESH MATERIALIZED VIEW lo_mv1 WITH SYNC MODE;