Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
Les tables système MLflow sont en préversion publique.
Les mlflow tables système capturent les métadonnées d’expérience gérées dans le service de suivi MLflow. Ces tables permettent aux utilisateurs privilégiés de tirer parti des outils Databricks lakehouse sur leurs données MLflow sur tous les espaces de travail de la région. Vous pouvez utiliser les tables pour créer des tableaux de bord IA/BI personnalisés, configurer des alertes SQL ou effectuer des requêtes analytiques à grande échelle.
Par le biais des mlflow tables système, les utilisateurs peuvent répondre à des questions telles que :
- Quelles expériences ont la plus faible fiabilité ?
- Quelle est l’utilisation moyenne du GPU dans différentes expériences ?
Note
Les mlflow tables système ont commencé à enregistrer les données MLflow de toutes les régions le 2 septembre 2025. Les données antérieures à cette date peuvent ne pas être disponibles.
Tables disponibles
Le mlflow schéma comprend les tableaux suivants :
-
system.mlflow.experiments_latest: enregistre les noms des expériences et les événements de suppression réversible. Ces données sont similaires à la page des expériences de l’interface utilisateur MLflow. -
system.mlflow.runs_latest: enregistre les informations de cycle de vie des exécutions, les paramètres et balises associés à chaque exécution et les statistiques agrégées de min, max et les dernières valeurs de toutes les métriques. Ces données sont similaires à la page de détails de recherche ou d’exécution des exécutions. -
system.mlflow.run_metrics_history: enregistre le nom, la valeur, l’horodatage et l’étape de toutes les métriques journalisées sur les exécutions, qui peuvent être utilisées pour tracer des séries chronologiques détaillées à partir des exécutions. Ces données sont similaires à l’onglet Métriques de la page de détails des exécutions.
Voici un exemple de traçage des informations d’exécution à l’aide d’un tableau de bord :
Schémas de table
Vous trouverez ci-dessous les schémas de tableau avec des descriptions et des exemples de données.
system.mlflow.experiments_latest
| Nom de colonne | Type de données | Descriptif | Example | Autorise la valeur Null |
|---|---|---|---|---|
account_id |
ficelle | ID du compte contenant l’expérience MLflow | "bd59efba-4444-4444-443f-44444449203" |
Non |
update_time |
horodatage | Heure système de la dernière mise à jour de l’expérience | 2024-06-27T00:58:57.000+00:00 |
Non |
delete_time |
horodatage | Heure système de la suppression réversible de l’expérience MLflow par l’utilisateur | 2024-07-02T12:42:59.000+00:00 |
Oui |
experiment_id |
ficelle | ID de l’expérience MLflow | "2667956459304720" |
Non |
workspace_id |
ficelle | ID de l’espace de travail contenant l’expérience MLflow | "6051921418418893" |
Non |
name |
ficelle | Nom fourni par l’utilisateur de l’expérience | "/Users/first.last@databricks.com/myexperiment" |
Non |
create_time |
horodatage | Heure système de création de l’expérience | 2024-06-27T00:58:57.000+00:00 |
Non |
system.mlflow.runs_latest
| Nom de colonne | Type de données | Descriptif | Example | Autorise la valeur Null |
|---|---|---|---|---|
account_id |
ficelle | ID du compte contenant l’exécution de MLflow | "bd59efba-4444-4444-443f-44444449203" |
Non |
update_time |
horodatage | Heure système de la dernière mise à jour de l’exécution | 2024-06-27T00:58:57.000+00:00 |
Non |
delete_time |
horodatage | Heure système à laquelle l’exécution de MLflow a été supprimée de manière réversible par l’utilisateur | 2024-07-02T12:42:59.000+00:00 |
Oui |
workspace_id |
ficelle | ID de l’espace de travail contenant l’exécution de MLflow | "6051921418418893" |
Non |
run_id |
ficelle | ID de l’exécution MLflow | "7716d750d279487c95f64a75bff2ad56" |
Non |
experiment_id |
ficelle | ID de l’expérience MLflow contenant l’exécution MLflow | "2667956459304720" |
Non |
created_by |
ficelle | Nom du principal ou de l’utilisateur Databricks qui a créé l’exécution MLflow | "<user>@<domain-name>" |
Oui |
start_time |
horodatage | Heure spécifiée par l’utilisateur lors du démarrage de l’exécution de MLflow | 2024-06-27T00:58:57.000+00:00 |
Non |
end_time |
horodatage | Heure spécifiée par l’utilisateur lors de la fin de l’exécution de MLflow | 2024-07-02T12:42:59.000+00:00 |
Oui |
run_name |
ficelle | Nom de l’exécution MLflow |
"wistful-deer-932", "my-xgboost-training-run" |
Non |
status |
ficelle | État d’exécution de l’exécution MLflow | "FINISHED" |
Non |
params |
chaîne de carte<, chaîne> | Paramètres clé-valeur de l’exécution MLflow | {"n_layers": "5", "batch_size": "64", "optimizer": "Adam"} |
Non |
tags |
chaîne de carte<, chaîne> | Balises clé-valeur définies sur l’exécution de MLflow | {"ready_for_review": "true"} |
Non |
aggregated_metrics |
chaîne de struct<de liste<, double, double, double>> | Vue agrégée récapitunant les métriques dans la run_metrics_history | [{"metric_name": "training_accuracy", "latest_value": 0.97, "min_value": 0.8, "max_value": 1.0}, ...] |
Non |
aggregated_metrics.metric_name |
ficelle | Nom spécifié par l’utilisateur de la métrique | "training_accuracy" |
Non |
aggregated_metrics.latest_value |
double | Valeur la plus récente de la metric_name dans la série chronologique de cette combinaison (exécution, metric_name) dans run_metrics_history | 0.97 |
Non |
aggregated_metrics.max_value |
double | Valeur maximale de la metric_name dans la série chronologique de cette combinaison (exécution, metric_name) dans run_metrics_history. Si une valeur NaN a été enregistrée pour une métrique, la valeur sera NaN | 1.0 |
Non |
aggregated_metrics.min_value |
double | Valeur minimale de la metric_name dans la série chronologique de cette combinaison (exécuter, metric_name) dans run_metrics_history. Si une valeur NaN a été enregistrée pour une métrique, la valeur sera NaN | 0.8 |
Non |
system.mlflow.run_metrics_history
| Nom de colonne | Type de données | Descriptif | Example | Autorise la valeur Null |
|---|---|---|---|---|
account_id |
ficelle | ID du compte contenant l’exécution de MLflow dans laquelle la métrique a été journalisée | "bd59efba-4444-4444-443f-44444449203" |
Non |
insert_time |
horodatage | Heure système à laquelle la métrique a été insérée | 2024-06-27T00:58:57.000+00:00 |
Non |
record_id |
ficelle | Identificateur unique de la métrique pour faire la distinction entre les valeurs identiques | "Ae1mDT5gFMSUwb+UUTuXMQ==" |
Non |
workspace_id |
ficelle | ID de l’espace de travail contenant l’exécution de MLflow dans laquelle la métrique a été journalisée | "6051921418418893" |
Non |
experiment_id |
ficelle | ID de l’expérience MLflow contenant l’exécution de MLflow sur laquelle la métrique a été journalisée | "2667956459304720" |
Non |
run_id |
ficelle | ID de l’exécution de MLflow sur laquelle la métrique a été journalisée | "7716d750d279487c95f64a75bff2ad56" |
Non |
metric_name |
ficelle | Le nom de la métrique | "training_accuracy" |
Non |
metric_time |
horodatage | Heure spécifiée par l’utilisateur lors du calcul de la métrique | 2024-06-27T00:55:54.1231+00:00 |
Non |
metric_step |
bigint | Étape (par exemple, époque) du développement d’un modèle ou d’agent auquel la métrique a été journalisée | 10 |
Non |
metric_value |
double | Valeur de la métrique | 0.97 |
Non |
Partage d’accès avec les utilisateurs
Par défaut, seuls les administrateurs de compte ont accès aux schémas système. Pour accorder à d’autres utilisateurs l’accès aux tables, un administrateur de compte doit leur accorder l’UTILISATION et SELECT les autorisations sur le system.mlflow. schéma. Consultez Privilèges Unity Catalog et objets sécurisables.
Tout utilisateur ayant accès à ces tables peut afficher les métadonnées sur toutes les expériences MLflow pour tous les espaces de travail du compte. Pour configurer l’accès aux tables pour un groupe donné plutôt que pour des utilisateurs individuels, consultez les meilleures pratiques du catalogue Unity.
Si vous avez besoin d’un contrôle plus précis que d’accorder à tous les utilisateurs l’accès à la table, vous pouvez utiliser des vues dynamiques avec des critères personnalisés pour accorder à des groupes certains accès. Par exemple, vous pouvez créer une vue qui affiche uniquement les enregistrements d’un ensemble particulier d’ID d’expérience. Après avoir configuré une vue personnalisée, donnez le nom de la vue à vos utilisateurs afin qu’ils puissent interroger l’affichage dynamique plutôt que la table système directement.
Note
Vous ne pouvez pas synchroniser directement les autorisations d’expérience MLflow avec les autorisations du catalogue Unity.
Exemples de cas d’utilisation de métadonnées MLflow
Les sections suivantes donnent des exemples de la façon dont vous pouvez utiliser les tables système MLflow pour répondre à des questions sur vos expériences et exécutions MLflow.
Configurer une alerte SQL pour une faible fiabilité des expériences
À l’aide des alertes Databricks SQL (préversion publique), vous pouvez planifier une requête périodique régulière et être averti si certaines contraintes ne sont plus remplies.
Cet exemple crée une alerte qui examine les expériences les plus fréquemment exécutées au sein de votre espace de travail pour déterminer si elles rencontrent une faible fiabilité et peuvent avoir besoin d’une attention particulière. La requête utilise la runs_latest table pour calculer les exécutions par expérience marquées comme terminées, divisées par le nombre total d’exécutions.
Note
La fonctionnalité Alertes SQL est actuellement en préversion publique et vous pouvez également utiliser des alertes héritées .
Cliquez sur
dans la barre latérale, puis cliquez sur Créer une alerte.Copiez et collez la requête suivante dans l’éditeur de requête.
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;Dans le champ Condition , définissez les conditions sur
MIN success_ratio < 0.9. Cela déclenche l’alerte si l’une des 20 premières expériences (par nombre d’exécutions) a un rapport de réussite inférieur à 90%.
En outre, vous pouvez tester la condition, définir une planification et configurer des notifications. Pour plus d’informations sur la configuration de l’alerte, consultez la configuration d’une alerte SQL. Vous trouverez ci-dessous un exemple de configuration à l’aide de la requête.
Exemples de requêtes
Vous pouvez utiliser les exemples de requêtes suivants pour obtenir des informations sur l’activité MLflow dans votre compte à l’aide de Databricks SQL. Vous pouvez également tirer parti d’outils tels que les notebooks Python avec Spark.
Obtenir des informations d’exécution à partir de 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
Cela retourne des informations sur l’exécution donnée :
Obtenir des informations d’expérience et d’exécution à partir de experiments_latest et 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
Obtenir des statistiques récapitulatives pour une exécution donnée à partir de 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
Cette opération renvoie un résumé des métriques pour l’élément donné run_id:
Tableaux de bord pour les expériences et les exécutions
Vous pouvez créer des tableaux de bord sur des données de tables système MLflow pour analyser vos expériences MLflow et les exécuter à partir de l’ensemble de l’espace de travail.
Pour plus d’informations, consultez Générer des tableaux de bord avec des métadonnées MLflow dans les tables système