Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Таблицы системы MLflow находятся в общедоступной предварительной версии.
Системные mlflow таблицы записывают метаданные эксперимента, управляемые в службе отслеживания MLflow. Эти таблицы позволяют привилегированным пользователям воспользоваться преимуществами инструментов Databricks lakehouse для данных MLflow во всех рабочих областях в регионе. Таблицы можно использовать для создания пользовательских панелей мониторинга ИИ/BI, настройки оповещений SQL или выполнения крупномасштабных аналитических запросов.
С помощью системных mlflow таблиц пользователи могут отвечать на такие вопросы:
- Какие эксперименты имеют самую низкую надежность?
- Что такое среднее использование GPU в разных экспериментах?
Замечание
Системные mlflow таблицы начали записывать данные MLflow из всех регионов 2 сентября 2025 года. Данные до этой даты могут быть недоступны.
Доступные таблицы
Схема mlflow содержит следующие таблицы:
-
system.mlflow.experiments_latest: записывает имена экспериментов и события обратимого удаления. Эти данные похожи на страницу экспериментов в пользовательском интерфейсе MLflow. -
system.mlflow.runs_latest: записывает сведения о жизненном цикле выполнения, парам и тегам, связанным с каждым выполнением, и агрегированным статистическим статистикой min, max и последними значениями всех метрик. Эти данные похожи на страницу сведений о выполнении поиска или выполнения. -
system.mlflow.run_metrics_history: записывает имя, значение, метку времени и шаг всех метрик, зарегистрированных во время выполнения, которые можно использовать для построения подробных таймерий из запусков. Эти данные похожи на вкладку метрик на странице сведений о выполнении.
Ниже приведен пример построения сведений о выполнении с помощью панели мониторинга:
Схемы таблиц
Ниже приведены схемы таблиц с описаниями и примерами данных.
system.mlflow.experiments_latest
| Имя столбца | Тип данных | Description | Example | Нуллибельный |
|---|---|---|---|---|
account_id |
струна | Идентификатор учетной записи, содержащей эксперимент MLflow | "bd59efba-4444-4444-443f-44444449203" |
нет |
update_time |
отметка времени | Системное время последнего обновления эксперимента | 2024-06-27T00:58:57.000+00:00 |
нет |
delete_time |
отметка времени | Системное время, когда эксперимент MLflow был обратимо удален пользователем | 2024-07-02T12:42:59.000+00:00 |
Да |
experiment_id |
струна | Идентификатор эксперимента MLflow | "2667956459304720" |
нет |
workspace_id |
струна | Идентификатор рабочей области, содержащей эксперимент MLflow | "6051921418418893" |
нет |
name |
струна | Имя эксперимента, предоставленное пользователем | "/Users/first.last@databricks.com/myexperiment" |
нет |
create_time |
отметка времени | Системное время создания эксперимента | 2024-06-27T00:58:57.000+00:00 |
нет |
system.mlflow.runs_latest
| Имя столбца | Тип данных | Description | Example | Нуллибельный |
|---|---|---|---|---|
account_id |
струна | Идентификатор учетной записи, содержащей запуск MLflow | "bd59efba-4444-4444-443f-44444449203" |
нет |
update_time |
отметка времени | Системное время последнего обновления запуска | 2024-06-27T00:58:57.000+00:00 |
нет |
delete_time |
отметка времени | Системное время выполнения MLflow было обратимо удалено пользователем. | 2024-07-02T12:42:59.000+00:00 |
Да |
workspace_id |
струна | Идентификатор рабочей области, содержащей запуск MLflow | "6051921418418893" |
нет |
run_id |
струна | Идентификатор запуска MLflow | "7716d750d279487c95f64a75bff2ad56" |
нет |
experiment_id |
струна | Идентификатор эксперимента MLflow, содержащего запуск MLflow | "2667956459304720" |
нет |
created_by |
струна | Имя субъекта или пользователя Databricks, создавшего запуск MLflow | "<user>@<domain-name>" |
Да |
start_time |
отметка времени | Указанное пользователем время запуска MLflow | 2024-06-27T00:58:57.000+00:00 |
нет |
end_time |
отметка времени | Указанное пользователем время окончания выполнения MLflow | 2024-07-02T12:42:59.000+00:00 |
Да |
run_name |
струна | Имя запуска MLflow |
"wistful-deer-932", "my-xgboost-training-run" |
нет |
status |
струна | Состояние выполнения запуска MLflow | "FINISHED" |
нет |
params |
строка карты<, строка> | Параметры "Ключ-значение" запуска MLflow | {"n_layers": "5", "batch_size": "64", "optimizer": "Adam"} |
нет |
tags |
строка карты<, строка> | Теги "Ключ-значение", заданные в выполнении MLflow | {"ready_for_review": "true"} |
нет |
aggregated_metrics |
строка структуры<списка<, double, double, double, double>> | Агрегированное представление, обобщающее метрики в run_metrics_history | [{"metric_name": "training_accuracy", "latest_value": 0.97, "min_value": 0.8, "max_value": 1.0}, ...] |
нет |
aggregated_metrics.metric_name |
струна | Указанное пользователем имя метрики | "training_accuracy" |
нет |
aggregated_metrics.latest_value |
двойной | Последнее значение metric_name в временных рядах этого сочетания (запуск, metric_name) в run_metrics_history | 0.97 |
нет |
aggregated_metrics.max_value |
двойной | Максимальное значение metric_name в временных рядах этого сочетания (run, metric_name) в run_metrics_history. Если для метрики записано какое-либо значение NaN, значение будет naN | 1.0 |
нет |
aggregated_metrics.min_value |
двойной | Минимальное значение metric_name в временных рядах этого сочетания (run, metric_name) в run_metrics_history. Если для метрики записано какое-либо значение NaN, значение будет naN | 0.8 |
нет |
system.mlflow.run_metrics_history
| Имя столбца | Тип данных | Description | Example | Нуллибельный |
|---|---|---|---|---|
account_id |
струна | Идентификатор учетной записи, содержащей запуск MLflow, в который была зарегистрирована метрика. | "bd59efba-4444-4444-443f-44444449203" |
нет |
insert_time |
отметка времени | Системное время вставки метрик | 2024-06-27T00:58:57.000+00:00 |
нет |
record_id |
струна | Уникальный идентификатор метрики для различения идентичных значений | "Ae1mDT5gFMSUwb+UUTuXMQ==" |
нет |
workspace_id |
струна | Идентификатор рабочей области, содержащей запуск MLflow, в котором зарегистрирована метрика. | "6051921418418893" |
нет |
experiment_id |
струна | Идентификатор эксперимента MLflow, содержащего запуск MLflow, в котором зарегистрирована метрика. | "2667956459304720" |
нет |
run_id |
струна | Идентификатор запуска MLflow, в который была зарегистрирована метрика. | "7716d750d279487c95f64a75bff2ad56" |
нет |
metric_name |
струна | Имя метрики | "training_accuracy" |
нет |
metric_time |
отметка времени | Указанное пользователем время вычисления метрики | 2024-06-27T00:55:54.1231+00:00 |
нет |
metric_step |
Бигинт | Шаг (например, эпоха) обучения модели или разработки агента, с которой регистрировались метрики. | 10 |
нет |
metric_value |
двойной | Значение метрики | 0.97 |
нет |
Предоставление доступа пользователям
По умолчанию только администраторы учетных записей имеют доступ к системным схемам. Чтобы предоставить дополнительным пользователям доступ к таблицам, администратор учетной записи должен предоставить им разрешения USE и SELECT разрешения на схему system.mlflow. . Ознакомьтесь с привилегиями каталога Unity и защищаемыми объектами.
Любой пользователь, имеющий доступ к этим таблицам, может просматривать метаданные во всех экспериментах MLflow для всех рабочих областей в учетной записи. Сведения о настройке доступа к таблицам для данной группы, а не отдельных пользователей, см. в рекомендациях по каталогу Unity.
Если требуется более точное управление, чем предоставление всем пользователям доступа к таблице, можно использовать динамические представления с настраиваемыми критериями для предоставления группам определенного доступа. Например, можно создать представление, отображающее только записи из определенного набора идентификаторов экспериментов. После настройки пользовательского представления укажите имя представления пользователям, чтобы они могли запрашивать динамическое представление, а не системную таблицу напрямую.
Замечание
Невозможно напрямую синхронизировать разрешения эксперимента MLflow с разрешениями каталога Unity.
Примеры вариантов использования метаданных MLflow
В следующих разделах приведены примеры использования системных таблиц MLflow для ответов на вопросы о экспериментах И запусках MLflow.
Настройка оповещения SQL для низкой надежности экспериментов
С помощью оповещений Databricks SQL (общедоступная предварительная версия) можно запланировать регулярно повторяющийся запрос и получать уведомления, если определенные ограничения больше не выполнены.
В этом примере создается оповещение, которое проверяет наиболее часто выполняемые эксперименты в рабочей области, чтобы определить, испытывают ли они низкую надежность и могут потребовать особого внимания. Запрос использует таблицу runs_latest для вычисления запусков для каждого эксперимента, помеченного как завершенный, разделенный на общее количество запусков.
Замечание
Функция оповещений SQL в настоящее время доступна в общедоступной предварительной версии, и вы также можете использовать устаревшие оповещения .
Щелкните оповещения
на боковой панели и нажмите кнопку "Создать оповещение".Скопируйте и вставьте следующий запрос в редакторе запросов.
SELECT experiment_id, AVG(CASE WHEN status = 'FINISHED' THEN 1.0 ELSE 0.0 END) AS success_ratio, COUNT(status) AS run_count FROM system.mlflow.runs_latest WHERE status IS NOT NULL GROUP BY experiment_id ORDER BY run_count DESC LIMIT 20;В поле "Условие" задайте для условий
MIN success_ratio < 0.9значение . Это вызовет оповещение, если любой из первых 20 экспериментов (по количеству запусков) имеет отношение успешности менее 90%.
Кроме того, можно протестировать условие, задать расписание и настроить уведомления. Дополнительные сведения о настройке оповещения см. в статье о настройке оповещения SQL. Ниже приведен пример конфигурации с помощью запроса.
Примеры запросов
Для получения сведений о действиях MLflow в учетной записи с помощью Databricks SQL можно использовать следующие примеры запросов. Вы также можете использовать такие инструменты, как записные книжки Python, с помощью Spark.
Получение сведений о выполнении из runs_latest
SELECT
run_name,
date(start_time) AS start_date,
status,
TIMESTAMPDIFF(MINUTE, start_time, end_time) AS run_length_minutes
FROM system.mlflow.runs_latest
WHERE
experiment_id = :experiment_id
AND run_id = :run_id
LIMIT 1
Это возвращает сведения о заданном выполнении:
Получение сведений о эксперименте и выполнении из experiments_latest и runs_latest
SELECT
runs.run_name,
experiments.name,
date(runs.start_time) AS start_date,
runs.status,
TIMESTAMPDIFF(MINUTE, runs.start_time, runs.end_time) AS run_length_minutes
FROM system.mlflow.runs_latest runs
JOIN system.mlflow.experiments_latest experiments ON runs.experiment_id = experiments.experiment_id
WHERE
runs.experiment_id = :experiment_id
AND runs.run_id = :run_id
LIMIT 1
Получение сводной статистики для заданного запуска из run_metrics_history
SELECT
metric_name,
count(metric_time) AS num_data_points,
ROUND(avg(metric_value), 1) AS avg,
ROUND(max(metric_value), 1) AS max,
ROUND(min(metric_value), 1) AS min,
ROUND(PERCENTILE_CONT(0.25) WITHIN GROUP (ORDER BY metric_value), 1) AS pct_25,
ROUND(PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY metric_value), 1) AS median,
ROUND(PERCENTILE_CONT(0.75) WITHIN GROUP (ORDER BY metric_value), 1) AS pct_75
FROM
system.mlflow.run_metrics_history
WHERE
run_id = :run_id
GROUP BY
metric_name, run_id
LIMIT 100
При этом возвращается сводка метрик для заданного:run_id
Панели мониторинга для экспериментов и запусков
Вы можете создавать панели мониторинга на основе данных системных таблиц MLflow для анализа экспериментов MLflow и выполнения из всей рабочей области.
Дополнительные сведения см. в разделе "Создание панелей мониторинга с метаданными MLflow" в системных таблицах