Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:
Databricks SQL
Изменяет метаданные, связанные с представлением.
Позволяет выполнить одно из следующих действий:
- Добавление, изменение или удаление расписания или триггера для обновления существующего материализованного представления. Если расписания или триггера нет, объект необходимо обновить вручную, чтобы отразить последние данные.
- Добавление, изменение или удаление фильтра строк для существующего материализованного представления.
- Задайте или отменяйте набор тегов для существующего материализованного представления.
- Измените свойства столбца для существующего материализованного представления, включая маски, теги и комментарии.
Чтобы добавить или изменить комментарий к материализованному представлению, используйте COMMENT ON.
Примечание.
Изменение созданного конвейером набора данных таким образом, что противоречит определению SQL, может привести к отмене некоторых изменений. См . статью "Использование ALTER команд с декларативными конвейерами Spark Lakeflow".
Синтаксис
ALTER MATERIALIZED VIEW view_name
{
{ ADD | ALTER } schedule |
DROP SCHEDULE |
ALTER COLUMN column_clause |
SET ROW FILTER clause |
DROP ROW FILTER |
SET TAGS clause |
UNSET TAGS clause }
schedule
{ SCHEDULE [ REFRESH ] schedule_clause |
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ] }
schedule_clause
{ EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
CRON cron_string [ AT TIME ZONE timezone_id ] }
column_clause
column_identifier
{ COMMENT clause |
SET MASK clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Параметры
-
Имя материализованного представления для изменения определения. Имя не должно содержать временную спецификацию.
расписание
Добавьте или измените
SCHEDULETRIGGERинструкцию в материализованном представлении.Примечание.
Невозможно изменить расписание материализованного представления, созданного с помощью декларативных конвейеров Lakeflow Spark, с помощью этой команды. Используйте редактор конвейера.
SCHEDULE [ REFRESH ] schedule_clauseEVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }Чтобы запланировать периодические обновления, используйте синтаксис
EVERY. Если указан синтаксисEVERY, то потоковая таблица или материализованное представление периодически обновляется с заданным интервалом на основе указанного значения, напримерHOUR,HOURS,DAY,DAYS,WEEKилиWEEKS. В следующей таблице перечислены принятые целые значения дляnumber.Единица времени Целочисленное значение HOUR or HOURS1 <= H <= 72 DAY or DAYS1 <= D <= 31 WEEK or WEEKS1 <= W <= 8 Примечание.
Единственное и множественное число включенной единицы времени семантически эквивалентны.
CRON cron_string [ AT TIME ZONE timezone_id ]Чтобы запланировать обновление с использованием значения quartz cron . Принимаются допустимые значения time_zone_values. Функция
AT TIME ZONE LOCALне поддерживается.Выражение cron использует шесть полей, разделенных пробелами, в порядке:
seconds minutes hours day-of-month month day-of-weekИспользуйте?либо дляday-of-monthтого,day-of-weekчтобы оставить его неопределенным.Например,
SCHEDULE CRON '0 0 0 * * ?' AT TIME ZONE 'UTC'обновляется ежедневно в полночь в формате UTC.Если
AT TIME ZONEнет, используется часовой пояс сеанса. ЕслиAT TIME ZONEотсутствует, а часовой пояс сеанса не задан, возникает ошибка.SCHEDULEсемантически эквивалентенSCHEDULE REFRESH.
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ]Задает материализованное представление для обновления при обновлении вышестоящего источника данных не более одного раза в минуту. Задайте значение, для
AT MOST EVERYкоторых требуется по крайней мере минимальное время между обновлениями.Исходные источники данных должны быть внешними или управляемыми таблицами Delta (включая материализованные представления или потоковые таблицы), или управляемыми представлениями, зависимости которых ограничены поддерживаемыми типами таблиц.
Включение событий файлов может повысить производительность триггеров и увеличить некоторые ограничения на обновления триггеров.
Это
trigger_intervalинструкция INTERVAL , которая составляет не менее 1 минуты.TRIGGER ON UPDATEимеет следующие ограничения- При использовании TRIGGER ON UPDATE не более 10 исходных источников данных для каждого материализованного представления.
- С помощью TRIGGER ON UPDATEможно указать не более 1000 потоковых таблиц или материализованных представлений.
- Предложение
AT MOST EVERYпо умолчанию равно 1 минуте и не может быть меньше 1 минуты.
DROP SCHEDULEУдаляет расписание из материализованного представления.
ALTER COLUMN clauseСм. раздел ALTERCOLUMN.
пункт
SETROW FILTERприменяется:
Databricks SQL
Databricks Runtime 16.2 и вышеДобавляет функцию фильтра строк в материализованное представление. Все последующие запросы к материализованному представлению получают подмножество строк, где функция принимает логическое значение
TRUE. Это может быть полезно для точного контроля доступа, где функция может проверить удостоверение или членство в группах вызывающего пользователя, чтобы определить, следует ли фильтровать определенные строки.Фильтры строк, добавленные после создания, распространяются только на подчиненные таблицы после следующего обновления. Для непрерывных конвейеров это требует перезапуска конвейера.
DROP ROW FILTERприменяется:
Databricks SQL
Databricks Runtime 16.2 и вышеУдаляет фильтр строк из материализованного представления, если таковой имеется. Будущие запросы возвращают все строки из таблицы без автоматической фильтрации.
SET TAGS ( { tag_name = tag_value } [, ...] )Применяется к:
Databricks SQL
Databricks Runtime 16.3 и более поздних версийПримените теги к материализованному представлению. Необходимо иметь
APPLY TAGразрешение на добавление тегов в материализованное представление.tag_nameЛитерал
STRING.tag_nameдолжен быть уникальным в рамках материализованного представления или столбца.tag_valueЛитерал
STRING.
UNSET TAGS ( tag_name [, ...] )Применяется к:
Databricks SQL
Databricks Runtime 16.3 и более поздних версийУдалите теги из материализованного представления. Необходимо иметь
APPLY TAGразрешение на удаление тегов из материализованного представления.tag_nameЛитерал
STRING.tag_nameдолжен быть уникальным в рамках материализованного представления или столбца.
Предложение ALTER COLUMN
Изменяет свойство или расположение столбца.
Синтаксис
ALTER COLUMN
column_identifier
{ COMMENT comment |
SET MASK mask_clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Параметры
-
Имя столбца, который требуется изменить.
COMMENT commentприменяется:
Databricks SQL
Databricks Runtime 16.2 и вышеИзменяет описание столбца
column_name.commentдолжен быть литеральным значениемSTRING.SETПредложение MASKприменяется:
Databricks SQL
Databricks Runtime 16.2 и вышеДобавляет функцию маски столбца для анонимизации конфиденциальных данных. Все последующие запросы из этого столбца получат результат оценки этой функции по столбцу вместо исходного значения столбца. Это может быть полезно для точного контроля доступа, когда функция может проверить идентификацию или членство в группах вызывающего пользователя, чтобы определить, следует ли скрыть это значение.
Маски столбцов, добавленные после создания, распространяются только на подчиненные таблицы после следующего обновления. Для непрерывных конвейеров это требует перезапуска конвейера.
DROP MASKприменяется:
Databricks SQL
Databricks Runtime 16.2 и вышеУдаляет маску для этого столбца, если она имеется. Будущие запросы из этого столбца получат исходные значения столбца.
SET TAGS ( { tag_name = tag_value } [, ...] )Применяется к:
Databricks SQL
Databricks Runtime 16.3 и более поздних версийПримените теги к столбцу. Необходимо иметь
APPLY TAGразрешение на добавление тегов в столбец.tag_name
Литерал
STRING. Элементtag_nameдолжен быть уникальным в таблице или столбце.tag_value
Литерал
STRING.
UNSET TAGS ( tag_name [, ...] )Применяется к:
Databricks SQL
Databricks Runtime 16.3 и более поздних версийУдалите указанные теги из столбца. Необходимо иметь
APPLY TAGразрешение на удаление тегов из столбца.tag_name
Литерал
STRING. Элементtag_nameдолжен быть уникальным в таблице или столбце.
Примеры
-- Adds a schedule to refresh the materialized view whenever its upstream data gets updated.
> ALTER MATERIALIZED VIEW my_mv
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the materialized view when its upstream data
-- gets updated, and make sure the update frequency is no more than 1 update
-- per hour.
> ALTER MATERIALIZED VIEW my_mv
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every two hours for a materialized view
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE EVERY 2 HOURS;
-- Alters the schedule to refresh a materialized view once a day
-- at midnight in Los Angeles
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a materialized view
> ALTER MATERIALIZED VIEW my_mv
DROP SCHEDULE;
-- Adds a column comment
> ALTER MATERIALIZED VIEW my_mv
ALTER COLUMN my_column_name COMMENT 'test'