Мониторинг использования с помощью системных таблиц
Внимание
Эта функция предоставляется в режиме общедоступной предварительной версии. В настоящее время эта функция не взимается. В будущем некоторые из этих действий могут взиматься плата.
В этой статье описывается концепция системных таблиц в Azure Databricks и выделены ресурсы, которые можно использовать для получения большей части данных системных таблиц.
Что такое системные таблицы?
Системные таблицы — это аналитическое хранилище, размещенное в Azure Databricks, в котором находятся данные вашей учетной записи в каталоге system
. Системные таблицы можно использовать для исторической наблюдаемости в вашей учетной записи.
Примечание.
Сведения о схеме сведений см. в system.information_schema
документации.
Требования
Чтобы получить доступ к системным таблицам, рабочая область должна быть включена для каталога Unity. Дополнительные сведения см. в разделе "Включение схем системной таблицы".
Какие системные таблицы доступны?
В настоящее время Azure Databricks размещает системные таблицы для:
Таблицу | Description | Расположение | Поддерживает потоковую передачу | Хранение | Включение глобальных или региональных данных |
---|---|---|---|---|---|
Журналы аудита | Включает записи для всех событий аудита из рабочих областей в вашем регионе. Список доступных событий аудита см . в справочнике по журналу диагностики. | system.access.audit |
Да | 365 дней | Региональные события на уровне рабочей области. Глобальный для событий уровня учетной записи. |
Происхождение таблицы | Включает запись для каждого события чтения или записи в таблице каталога Unity или пути. | system.access.table_lineage |
Да | 365 дней | Региональный |
Происхождение столбцов | Включает запись для каждого события чтения или записи в столбце каталога Unity (но не включает события, не имеющие источника). | system.access.column_lineage |
Да | 365 дней | Региональный |
Использование с выставлением счетов | Включает записи для всех выставленных счетов использования в вашей учетной записи. Каждая запись об использовании — это почасовая статистическая обработка оплачиваемого использования ресурса. | system.billing.usage |
Да | 365 дней | Глобальный |
Цены | Исторический журнал цен на номер SKU. Запись добавляется при каждом изменении цены SKU. | system.billing.list_prices |
No | Н/П | Глобальный |
Clusters (Кластеры) | Медленно изменяющаяся таблица измерений, содержащая полную историю конфигураций кластера с течением времени для любого кластера. | system.compute.clusters |
Да | Не допускается | Региональный |
Типы узлов | Записывает доступные в настоящее время типы узлов с основными сведениями о оборудовании. | system.compute.node_types |
No | Н/П | Региональный |
События хранилища SQL | Записывает события, связанные с хранилищами SQL. Например, запуск, остановка, выполнение, масштабирование вверх и вниз. | system.compute.warehouse_events |
Да | 365 дней | Региональный |
События воронки Marketplace | Включает в себя впечатление потребителей и данные воронки для ваших списков. | system.marketplace.listing_ funnel_events |
Да | 365 дней | Региональный |
Доступ к списку в Marketplace | Содержит сведения о потребителе для завершенных данных запроса или получения событий данных в списках. | system.marketplace.listing_ access_events |
Да | 365 дней | Региональный |
Прогнозная оптимизация | Отслеживает журнал операций функции прогнозной оптимизации. | system.storage.predictive_ optimization_operations_history |
No | 180 дней | Региональный |
Примечание.
В вашей учетной записи могут отображаться другие системные таблицы, кроме перечисленных выше. Эти таблицы в настоящее время находятся в закрытой предварительной версии и по умолчанию пусты. Если вы хотите использовать любую из этих таблиц, обратитесь к группе учетной записи Databricks.
Включение схем системных таблиц
Так как системные таблицы управляются каталогом Unity, в учетной записи должна быть по крайней мере одна рабочая область с поддержкой каталога Unity, чтобы включить и получить доступ к системным таблицам. Системные таблицы включают данные из всех рабочих областей в вашей учетной записи, но к ним можно получить доступ только из рабочей области с поддержкой каталога Unity.
Системные таблицы включены на уровне схемы. Если включить системную схему, включите все таблицы в этой схеме. При выпуске новых схем администратор учетной записи должен вручную включить схему.
Системные таблицы должны быть включены администратором учетной записи. Системные таблицы можно включить с помощью API SystemSchemas.
Перечисление доступных системных схем
Используйте следующую команду curl для перечисления доступных системных схем:
curl -v -X GET -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas"
Ниже приведен пример выходных GET
данных команды:
{"schemas":[{"schema":"access","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"billing","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"information_schema","state":"<AVAILABLE OR EnableCompleted>"}]}
state: AVAILABLE
: системная схема доступна, но еще не включена.
state: EnableCompleted
: вы включили системную схему, и она отображается в Обозреватель каталога.
Включение системной схемы
Используйте следующую команду curl для включения системной схемы:
curl -v -X PUT -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"
Если системная схема включена успешно, возвращается код 200
результата.
При попытке повторного включения системной схемы возвращается следующее: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists"
Отключение системной схемы
Чтобы отключить системную схему, используйте следующую команду curl:
curl -v -X DELETE -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"
Предоставление доступа к системным таблицам
Доступ к системной таблице регулируется каталогом Unity. По умолчанию у пользователей нет доступа к системным таблицам. Чтобы предоставить доступ, администратор хранилища метаданных или другой привилегированный пользователь должны предоставлять USE
и SELECT
разрешения на системные схемы. См. статью Управление привилегиями в каталоге Unity.
Системные таблицы доступны только для чтения и не могут быть изменены.
Примечание.
Если учетная запись была создана после 9 ноября 2023 г., возможно, у вас нет администратора хранилища метаданных по умолчанию. Дополнительные сведения см. в разделе "Настройка каталога Unity" и управление ими.
Содержат ли системные таблицы данные для всех рабочих областей в вашей учетной записи?
Таблицы журналов аудита и происхождения содержат операционные данные для всех рабочих областей в учетной записи, развернутой в одном облачном регионе. Таблица системы выставления счетов (system.billing.usage
) содержит данные для всех рабочих областей в вашей учетной записи независимо от того, в каком регионе они развернуты.
Несмотря на то что системные таблицы можно получить только через рабочую область каталога Unity, таблицы также включают операционные данные для рабочих областей каталога, отличных от Unity, в вашей учетной записи.
Где расположены системные таблицы?
Системные таблицы в вашей учетной записи находятся в каталоге, который system
включается в каждое хранилище метаданных каталога Unity. В каталоге вы увидите system
такие схемы, как access
и billing
содержащие системные таблицы.
Примечание.
Во время общедоступной предварительной версии системных таблиц Azure Databricks сохранит все данные системных таблиц.
Рекомендации по потоковой передаче системных таблиц
Доступ к системным таблицам поддерживается разностным общим доступом. Помните о следующих рекомендациях при потоковой передаче с помощью разностного общего доступа:
- Если вы используете потоковую передачу с системными таблицами, задайте
skipChangeCommit
для параметраtrue
значение . Это гарантирует, что задание потоковой передачи не нарушается при удалении в системных таблицах. См . раздел "Игнорировать обновления и удаления". Trigger.AvailableNow
не поддерживается потоковой передачей delta Sharing. Он будет преобразован вTrigger.Once
.- Если вы используете триггер в задании потоковой передачи и обнаружите, что задание не выполняется до последней версии системной таблицы, Databricks рекомендует увеличить запланированную частоту задания.
Известные проблемы
В настоящее время нет поддержки мониторинга в режиме реального времени. Данные обновляются в течение дня. Если вы не видите журнал недавнего события, зайдите позже.
Чтобы включить системные таблицы, может потребоваться предоставить сетевой доступ к конечной точке хранилища BLOB-объектов системных таблиц. Чтобы просмотреть список конечных точек хранилища системных таблиц региона, см. служба хранилища IP-адреса конечных точек.
Системные
system.operational_data
схемы иsystem.lineage
не рекомендуется использовать и будут содержать пустые таблицы.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по