Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Переключение служб с помощью раскрывающегося списка версий . Дополнительные сведения о навигации.
Область применения: ✅ Microsoft Fabric ✅ Azure Data Explorer
Модифицирование материализованного представления можно использовать для изменения запроса материализованного представления, сохраняя при этом существующие данные в представлении.
Предупреждение
Будьте осторожны при изменении материализованного представления. Неправильное использование может привести к потере данных.
Разрешения
Для выполнения этой команды необходимо иметь по крайней мере разрешения администратора материализованного представления.
Синтаксис
.alter
materialized-view [ with(PropertyName= PropertyValue,...)] Запрос SourceTableName MaterializedViewNameon table{}
Дополнительные сведения о соглашениях синтаксиса.
Параметры
| Имя (название) | Type | Обязательно | Описание |
|---|---|---|---|
| PropertyName, PropertyValue | string |
Список свойств в виде пар имен и значений из списка поддерживаемых свойств. | |
| MaterializedViewName | string |
✔️ | Имя материализованного представления. |
| SourceTableName | string |
✔️ | Имя исходной таблицы, для которой определено представление. |
| Запрос | string |
✔️ | Определение запроса материализованного представления. |
Поддерживаемые свойства
Следующие свойства поддерживаются в предложении with(PropertyName=PropertyValue). Все свойства являются необязательными.
| Имя (название) | Type | Описание |
|---|---|---|
| обратная обратная связь | timespan |
Период времени, ограничивающий период, в течение которого ожидаются повторяющиеся или обновления. Дополнительные сведения см. в разделе о периоде Lookback. |
| lookback_column | string |
string Столбец в представлении, который служит ссылкой для периода обратного просмотра. Если значение lookback_column не определено, период обратного просмотра вычисляется на основе ingestion_time(). Если он lookback_column уже определен, его значение не может быть изменено. Дополнительные сведения см. в разделе о периоде Lookback. |
| autoUpdateSchema | bool |
Следует ли автоматически обновлять представление в исходной таблице. По умолчанию — false. Этот параметр действителен только для представлений типа arg_max(Timestamp, *)/arg_min(Timestamp, *)/take_any(*) (только если аргумент столбца равен).* Если этот параметр задан true, изменения исходной таблицы автоматически отражаются в материализованном представлении. |
| dimensionTables | array | Динамический аргумент, содержащий массив таблиц измерений в представлении. См . параметр запроса. |
| папку | string |
Папка материализованного представления. |
| docString | string |
Строка, которая документирует материализованное представление. |
Возвраты
Схема вывода:
| Имя (название) | Type | Описание |
|---|---|---|
| Имя (название) | string |
Имя материализованного представления. |
| SourceTable | string |
Имя исходной таблицы, для которой определено представление. |
| Query | string |
Определение запроса материализованного представления. |
| MaterializedTo | datetime |
Максимальная материализованная ingestion_time() метка времени в исходной таблице. Дополнительные сведения см. в статье о работе материализованных представлений. |
| LastRun | datetime |
В последний раз была запущена материализация. |
| LastRunResult | string |
Результат последнего выполнения. Возвращается Completed для успешных запусков, в противном случае Failed. |
| IsHealthy | bool |
true Если представление считается работоспособным, false в противном случае. Представление считается здоровым, если оно было успешно материализовано до последнего часа (MaterializedTo больше ago(1h)). |
| IsEnabled | bool |
true если представление включено (см. раздел "Отключить или включить материализованное представление"). |
| Папка | string |
Папка, в которой создается материализованное представление. |
| DocString | string |
Описание, назначенное материализованному представлению. |
| AutoUpdateSchema | bool |
Включается ли представление для автоматического обновления. |
| EffectiveDateTime | datetime |
Время эффективной даты представления, определенное во время создания (см. раздел .create materialized-view). |
| Ретроспективный обзор | timespan |
Период времени, ограничивающий период, в течение которого ожидаются повторяющиеся или обновления. Дополнительные сведения см. в разделе о периоде Lookback. |
| LookbackColumn | string |
string Столбец в представлении, который служит ссылкой для периода обратного просмотра. Если этот столбец пуст, но lookback имеет значение, то материализованное представление использует обратный просмотр по умолчанию. Дополнительные сведения см. в разделе о периоде Lookback. |
Примеры
В примерах этого раздела показано, как использовать синтаксис для начала работы.
Изменение определения запроса материализованного представления
Следующая команда изменяет определение запроса материализованного представления MyView:
.alter materialized-view MyView on table MyTable
{
MyTable | summarize arg_max(Column3, *) by Column1
}
Выходные данные
| Имя (название) | SourceTable | Query | MaterializedTo | LastRun | LastRunResult | IsHealthy | IsEnabled | Папка | DocString | AutoUpdateSchema | EffectiveDateTime | Ретроспективный обзор |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| MyView | MyTable | MyTable | суммирование arg_max(Column3, *) по столбцу 1 | 2023-02-26T16:40:03.3345704Z | 2023-02-26T16:44:15.90333667Z | Завершено | true | true | false | 2023-02-23T14:01:42.5172342Z |
Случаи использования
- Добавьте агрегаты в представление , например, добавьте
avgагрегированиеT | summarize count(), min(Value) by Idв , изменив запросT | summarize count(), min(Value), avg(Value) by Idпредставления на . - Изменение операторов, отличных от оператора суммирование. Например, отфильтруйте некоторые записи, изменив
T | summarize arg_max(Timestamp, *) by UserихT | where User != 'someone' | summarize arg_max(Timestamp, *) by Userв . - Изменение без изменений в запросе из-за изменения исходной таблицы. Например, предположим, что представление
T | summarize arg_max(Timestamp, *) by Idне заданоautoUpdateSchema(см.create materialized-view. команду). Если столбец добавляется или удаляется из исходной таблицы представления, представление автоматически отключается. Выполните команду alter с тем же запросом, чтобы изменить схему материализованного представления, чтобы выровнять новую схему таблицы. Представление по-прежнему должно быть явно включено после изменения с помощью команды включения материализованного представления .
Ограничения
Изменения не поддерживаются:
- Изменения в материализованной группе представлений по выражениям.
- Изменение типа столбца.
- Переименование столбцов. Например, изменение представления для удаления столбца и создание нового столбца
T | summarize count() by IdT | summarize Count=count() by Idcount_Count, который изначально содержит только значения NULL.
Влияние на существующие данные:
- Изменение материализованного представления не влияет на существующие данные.
- Добавление фильтров в запрос применяется только к недавно принятым записям и не изменяет записи, которые уже были материализованы.
- Новые столбцы получают значения NULL для всех существующих записей, пока записи не будут приниматься после изменения значений NULL.
- Например: представление
T | summarize count() by bin(Timestamp, 1d)измененоT | summarize count(), sum(Value) by bin(Timestamp, 1d)на . Для конкретного объектаTimestamp=T, для которого записи уже были обработаны перед изменением представления,sumстолбец содержит частичные данные. Это представление включает только записи, обработанные после изменения.
Связанный контент
- материализованные представления
- варианты использования
материализованных представлений - .create materialized-view
- .create-or-alter materialized-view