Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Important
Эта функция доступна в бета-версии. Чтобы использовать его, администратор рабочего пространства должен включить AI/BI Dashboard Materialization на странице предпросмотра . См. статью "Управление предварительными версиями Azure Databricks".
Дашборды AI/BI построены на основе наборов данных, ориентированных на панель управления. По умолчанию каждый набор данных оценивается в реальном времени, поэтому каждый раз, когда загружается дашборд или с ней взаимодействует просмотрщик, базовые запросы, присоединения и сканирование исходного кода снова запускаются в вашем SQL-хранилище. Для дашбордов, построенных на дорогих исходных запросах или множестве присоединений, повторное запуск этих запросов при каждом взаимодействии происходит медленно и дорого.
Материализация набора данных заранее вычисляет и сохраняет результаты, лежащие в основе набора данных, поэтому ресурсоёмкая обработка выполняется по расписанию один раз, а не при каждой загрузке панели мониторинга или взаимодействии с ней. Взаимодействия затем рендерятся из сохранённых результатов, что ускоряет опубликованные дашборды.
Материализация использует технологию материализации метрических представлений Unity Catalog. См. Материализация представлений метрик.
Что материализуется
Материализация предварительно вычисляет и хранит данные набора данных. То, что сохраняется, различается между двумя типами наборов данных:
- Для наборов данных SQL полный результат запроса предварительно вычисляется и сохраняется.
- Для локальных метрических представлений сохраняется модель данных на уровне строки (исходные данные, объединения и поля фильтра), в то время как меры всё равно вычисляются во время запроса по предварительно вычисленной базе.
Benefits
Материализация наборов данных предоставляет следующие преимущества:
- Более быстрые панели мониторинга без повторного моделирования. Затратные операции соединения и сканирование источников данных выполняются по расписанию один раз, а не при каждой загрузке, что избавляет пользователей от задержки, возникающей, когда панель мониторинга повторно запрашивает большие таблицы.
- Снижение затрат на хранилище при чтении. Предварительное вычисление базовой модели данных позволяет избежать повторения одного и того же тяжёлого запроса для каждого просмотрщика и каждой загрузки страницы, что снижает избыточное использование хранилища.
- Эксплуатационных расходов нет. Azure Databricks создаёт, хранит и обновляет материализованные данные для вас. Нет никакого конвейера, схемы или хранилища для управления.
Costs
Материализация наборов данных требует затрат на хранение и вычисления:
- Хранение. Вы платите за хранение материализованных данных. Стоимость зависит от используемого базового хранилища. Для обзора хранения в Unity Catalog см. раздел «Соединить с облачным объектным хранилищем с помощью Unity Catalog».
- Вычисления. Начальное создание и обновление выполняются на бессерверных конвейерах Lakeflow и требуют вычислительных расходов. См. цены на трубопроводы Lakeflow.
Взвесьте эти расходы с экономией при избегании повторных сканирований и соединений источников. Выберите график обновления, который балансирует свежесть данных с вычислительными затратами.
Когда использовать материализацию
Материализация не всегда является правильным рычагом для достижения производительности. Преимущество заключается в замене повторного полного перерасчёта набора данных (сканирования и объединения) чтением из предварительно вычисленной таблицы. Материализуйте набор данных, когда применяется одно или несколько из следующих условий:
- Очень интерактивные панели. Панель мониторинга имеет множество фильтров, перекрёстную фильтрацию или функции детализации. Без материализации при каждом взаимодействии запрос к набору данных выполняется заново, поэтому предварительный расчёт этих наборов данных неоднократно окупается в течение сеанса.
- Дорогие наборы данных. Набор данных построен на многотабличных объединениях, интенсивных представлениях или выражениях общих таблиц (CTE), оконных функциях или объединениях между множеством таблиц.
- Выборочные фильтры для больших таблиц. Набор из миллиардов строк выбирает небольшое подмножество, например, один регион или последние 7 дней. Материализация хранит только небольшое подмножество.
- Толерантность к запланированной свежести. Данные должны быть актуальны лишь настолько, насколько это требуется по расписанию обновления панели мониторинга — например, раз в час или ежедневно, а не в реальном времени.
Для небольших наборов данных или панелей мониторинга, которые загружаются редко, запрос в реальном времени часто выполняется достаточно быстро, и материализация может не оправдывать связанных с ней затрат. Поскольку материализация — это опция для каждой публикации и для каждого набора данных, вы можете применять её только там, где она окупается.
Требования
- Доступ к панели мониторинга AI/BI.
- Панель управления публикуется с опцией Share data permissions . Материализация не поддерживается для дашбордов, опубликованных с индивидуальными разрешениями на доступ к данным. См. Что такое разрешения общего доступа к данным.
- В рабочем пространстве включены бессерверные вычисления. Начальное создание и обновление выполняются на бессерверных конвейерах Lakeflow. См. раздел "Настройка бессерверных хранилищ SQL".
- разрешение CAN USE для SQL-хранилища под управлением Databricks Runtime 17.3 и выше.
Включить материализацию наборов данных
Наборы данных по умолчанию выбраны для материализации, но материализация отключена для панели до тех пор, пока вы не включите опцию Materialize datasets при публикации.
Выберите, какие наборы данных нужно материализовать
На вкладке « Данные » нажмите на иконку материализации рядом с набором данных, чтобы включить или исключить его.
Если исключить набор данных из материализации, запросы к этому набору будут возвращать результаты в реальном времени, а запросы к материализованным наборам данных будут отражать результаты последнего выполнения материализации. Когда все наборы данных используют одинаковый график материализации, виджеты сохраняют одинаковую свежесть данных.
Публикация с материализацией
- Нажмите «Опубликовать в черновой панели».
- Выберите «Разделить права на данные» в диалоге публикации.
- Включите параметр Материализовать наборы данных, чтобы материализовать наборы данных, выбранные на вкладке Данные.
- Нажмите кнопку Опубликовать.
Включите параметр Материализовать наборы данных при каждой публикации.
Установите график обновления
Материализованные данные обновляются в соответствии с расписанием обновления панели мониторинга. Используйте расписание на панели , чтобы настроить частоту обновления.
Если для панели мониторинга не задано расписание, то при публикации с включённой материализацией добавляется расписание ежедневного обновления. Существующие расписания сохранены. Без активного расписания материализованные данные не обновляются автоматически после создания.
Просмотреть состояние материализации
В опубликованной панели откройте и выберите Информация. В боковой панели отображается статус каждого материализованного набора данных и информация о обновлении.
Повторное использование и очистка
Azure Databricks управляет жизненным циклом ваших материализированных данных:
- Повторное использование в разных редакциях. Если дашборд перепубликуется тем же пользователем, а набор данных остаётся без изменений, существующая материализация будет использоваться повторно, чтобы избежать потери вычислений.
- Автоматическая уборка. Azure Databricks удаляет материализации, на которые опубликованная панель больше не ссылается, например, после изменения определения или после отмены публикации.
Повторная публикация не обязательно обновляет материализованные данные.
Ограничения
Материализация наборов данных имеет следующие ограничения:
- Только опубликованные панели мониторинга. Материализация применяется к опубликованным дашбордам. Черновики продолжают обращаться к актуальным данным.
- Нет параметризованных наборов данных. Наборы данных, определяющие параметры, не могут быть материализованы. Если вы включите параметризованный набор данных в материализацию, Azure Databricks пометит его как неудавшийся вместо того, чтобы материализовать его.
- Refresh работает только по расписанию панели управления. Отдельного графика обновления для каждого набора данных нет. Материализация обновляется в соответствии с расписанием обновления вашей панели мониторинга.
- Требуется безсерверный режим. Начальное создание и обновления выполняются в бессерверных конвейерах Lakeflow, поэтому в рабочем пространстве должны быть включены бессерверные вычисления.
- Защищённые данные не предоставляются материализациями. Материализация не может быть создана для исходных данных, защищённых уровнем строк, столбцовыми масками или политиками контроля доступа на основе атрибутов (ABAC). Если после создания материализации к исходной таблице применяется защита на уровне строк, последующие запросы к представлению показателей обходят материализацию и выполняются по исходным данным.
- Требуется доступ к разрешениям для обмена данными. Вы можете включить материализацию только при публикации с общими правами на данные. Вы не можете включить его при публикации с разрешениями на отдельные данные.
Часто задаваемые вопросы
Следующие вопросы охватывают поведение материализации наборов данных, обновления и права доступа.
Влияет ли материализация на мои метрики или результаты?
Материализация сохраняет логику запроса в наборе данных, но его данные отражают последнее успешное обновление. Для локальных представлений метрик меры вычисляются во время выполнения запроса на основе материализованных данных. См. Что материализуется.
Что происходит, если материализация не готова или недоступна?
Если материализация не готова или недоступна на момент запроса, запрос возвращает ошибку вместо запроса живых данных. Дождитесь, пока материализация закончится, затем запустите запрос заново.
Где хранятся материализованные данные?
Azure Databricks хранит материализованные данные в управляемом внутреннем хранилище, ограниченном вашей опубликованной панелью управления. Вам нечего публиковать в Unity Catalog, нет схемы или хранилища для управления. Доступ продолжает следовать вашей панели управления и правам на базовые данные.
Как часто обновляются материализованные данные?
Материализованные данные обновляются по расписанию обновления панели мониторинга. См. Установить график обновления.
Какие вычислительные ресурсы использует материализация?
Начальное создание и обновления выполняются в бессерверных конвейерах Lakeflow под управлением Azure Databricks. Вот почему для рабочего пространства должны быть включены бессерверные вычисления.
Влияет ли материализация на права доступа?
No. Материализация не даёт дополнительного доступа к данным. Доступ по-прежнему определяется настройками общего доступа к панели мониторинга и разрешениями, используемыми для её публикации.
Что происходит, когда я публикую его повторно?
Существующие материализации можно повторно использовать, когда тот же пользователь публикует неизменённый набор данных. См. Повторное использование и очистка. Включите параметр «Материализовать наборы данных» при каждой публикации.