Pular para o conteúdo principal

Referência das tabelas do sistema MLflow

info

Visualização

As tabelas do sistema MLflow estão em Public Preview.

As tabelas do sistema mlflow capturam metadados de experimentos gerenciados no serviço de acompanhamentoMLflow. Essas tabelas permitem que os usuários privilegiados aproveitem as ferramentas do Databricks lakehouse em seus dados do MLflow em todos os espaços de trabalho da região. O senhor pode usar as tabelas para criar painéis personalizados no site AI/BI, configurar o alerta SQL ou realizar consultas analíticas de grande escala.

Por meio das tabelas do sistema mlflow, os usuários podem responder perguntas como:

  • Quais experimentos têm a menor confiabilidade?
  • Qual é a utilização média da GPU em diferentes experimentos?
nota

As tabelas do sistema mlflow começaram a registrar dados de MLflow de todas as regiões em 2 de setembro de 2025. Os dados anteriores a essa data podem não estar disponíveis.

Tabelas disponíveis

O esquema mlflow inclui as seguintes tabelas:

  • system.mlflow.experiments_latest: registra nomes de experimentos e eventos de exclusão temporária. Esses dados são semelhantes aos da página de experimentos na interface do usuário do MLflow.
  • system.mlflow.runs_latest: Registra informações sobre o ciclo de vida da execução, os parâmetros e tags associados a cada execução e estatísticas agregadas dos valores mínimo, máximo e mais recente de todas as métricas. Esses dados são semelhantes à pesquisa de execução ou à página de detalhes da execução.
  • system.mlflow.run_metrics_history: Registra o nome, o valor, o carimbo de data/hora e o passo de todos os registros de métricas na execução, que podem ser usados para graficar séries de tempo detalhadas da execução. Esses dados são semelhantes às métricas tab na página de detalhes da execução.

A seguir, um exemplo de como graficar informações de execução usando um dashboard:

painel de detalhes da execução

Esquemas de tabela

Abaixo estão os esquemas de tabela com descrições e dados de exemplo.

Diagrama ER

system.mlflow.experiments_latest

Nome da coluna

Tipo de dados

Descrição

Exemplo

Anulável

account_id

string

O ID do site account que contém o experimento MLflow

"bd59efba-4444-4444-443f-44444449203"

Não

update_time

carimbo de data/hora

A hora do sistema em que o experimento foi atualizado pela última vez

2024-06-27T00:58:57.000+00:00

Não

delete_time

carimbo de data/hora

A hora do sistema em que o experimento do MLflow foi excluído suavemente pelo usuário

2024-07-02T12:42:59.000+00:00

Sim

experiment_id

string

A ID do experimento MLflow

"2667956459304720"

Não

workspace_id

string

O ID do site workspace que contém o experimento MLflow

"6051921418418893"

Não

name

string

Nome do experimento fornecido pelo usuário

"/Users/first.last@databricks.com/myexperiment"

Não

create_time

carimbo de data/hora

A hora do sistema em que o experimento foi criado

2024-06-27T00:58:57.000+00:00

Não

system.mlflow.runs_latest

Nome da coluna

Tipo de dados

Descrição

Exemplo

Anulável

account_id

string

O ID do site account que contém a execução do MLflow

"bd59efba-4444-4444-443f-44444449203"

Não

update_time

carimbo de data/hora

A hora do sistema em que a execução foi atualizada pela última vez

2024-06-27T00:58:57.000+00:00

Não

delete_time

carimbo de data/hora

A hora do sistema em que a execução do MLflow foi excluída suavemente pelo usuário

2024-07-02T12:42:59.000+00:00

Sim

workspace_id

string

O ID do site workspace que contém a execução do MLflow

"6051921418418893"

Não

run_id

string

A ID da execução do MLflow

"7716d750d279487c95f64a75bff2ad56"

Não

experiment_id

string

A ID do experimento do MLflow que contém a execução do MLflow

"2667956459304720"

Não

created_by

string

O nome do diretor ou usuário do Databricks que criou a execução do MLflow

"<user>@<domain-name>"

Sim

start_time

carimbo de data/hora

O horário especificado pelo usuário quando a MLflow execução começar

2024-06-27T00:58:57.000+00:00

Não

end_time

carimbo de data/hora

O horário especificado pelo usuário quando a execução do MLflow terminou

2024-07-02T12:42:59.000+00:00

Sim

run_name

string

O nome da execução do MLflow

"wistful-deer-932", "my-xgboost-training-run"

Não

status

string

O status da execução do MLflow

"FINISHED"

Não

params

map<strings, strings>

Parâmetros de valor-chave da execução do MLflow

{"n_layers": "5", "batch_size": "64", "optimizer": "Adam"}

Não

tags

map<strings, strings>

key-value tags set on the MLflow execução

{"ready_for_review": "true"}

Não

aggregated_metrics

list<struct<strings, double, double, double>>

Um view agregado que resume as métricas no run_metrics_history

[{"metric_name": "training_accuracy", "latest_value": 0.97, "min_value": 0.8, "max_value": 1.0}, ...]

Não

aggregated_metrics.metric_name

string

O nome especificado pelo usuário das métricas

"training_accuracy"

Não

aggregated_metrics.latest_value

double

O valor mais recente do metric_name na série temporal dessa combinação (execução, metric_name) em run_metrics_history

0.97

Não

aggregated_metrics.max_value

double

O valor máximo do metric_name na série temporal dessa combinação (execução, metric_name) em run_metrics_history. Se algum valor NaN tiver sido registrado para uma métrica, o valor será NaN

1.0

Não

aggregated_metrics.min_value

double

O valor mínimo do metric_name na série temporal dessa combinação (execução, metric_name) em run_metrics_history. Se algum valor NaN tiver sido registrado para uma métrica, o valor será NaN

0.8

Não

system.mlflow.run_metrics_history

Nome da coluna

Tipo de dados

Descrição

Exemplo

Anulável

account_id

string

O ID do site account contendo a execução MLflow para a qual as métricas foram registradas

"bd59efba-4444-4444-443f-44444449203"

Não

insert_time

carimbo de data/hora

A hora do sistema em que as métricas foram inseridas

2024-06-27T00:58:57.000+00:00

Não

record_id

string

Um identificador exclusivo das métricas para distinguir entre valores idênticos

"Ae1mDT5gFMSUwb+UUTuXMQ=="

Não

workspace_id

string

O ID do site workspace contendo a execução MLflow para a qual as métricas foram registradas

"6051921418418893"

Não

experiment_id

string

O ID do experimento MLflow que contém a execução MLflow na qual as métricas foram registradas

"2667956459304720"

Não

run_id

string

O ID da MLflow execução para a qual as métricas foram registradas

"7716d750d279487c95f64a75bff2ad56"

Não

metric_name

string

O nome métricas

"training_accuracy"

Não

metric_time

carimbo de data/hora

O horário especificado pelo usuário quando as métricas foram computadas

2024-06-27T00:55:54.1231+00:00

Não

metric_step

BigInt

O passo (por exemplo, época) do treinamento do modelo ou do desenvolvimento do agente em que as métricas foram registradas

10

Não

metric_value

double

O valor das métricas

0.97

Não

compartilhamento de acesso com os usuários

Em default, somente os administradores de account têm acesso aos esquemas do sistema. Para conceder aos usuários adicionais acesso às tabelas, o administrador do site account deve conceder a eles as permissões USE e SELECT no esquema system.mlflow.. Consulte Privilégios e objetos protegidos do Unity Catalog.

Qualquer usuário que tenha acesso a essas tabelas pode view metadados em todos os experimentos do MLflow para todos os espaços de trabalho no account . Para configurar o acesso à tabela para um determinado grupo em vez de usuários individuais, consulte as práticas recomendadas do Unity Catalog.

Se o senhor precisar de um controle mais refinado do que conceder a todos os usuários acesso à tabela, poderá usar a exibição dinâmica com critérios personalizados para conceder determinados acessos a grupos. Por exemplo, o senhor poderia criar um view que mostrasse apenas os registros de um determinado conjunto de IDs de experimentos. Depois de configurar um view personalizado, forneça o nome do view aos seus usuários para que eles possam consultar o view dinâmico em vez da tabela do sistema diretamente.

nota

O senhor não pode sincronizar diretamente as permissões de experimento do MLflow com as permissões do Unity Catalog.

Exemplos de casos de uso de metadados do MLflow

As seções a seguir dão exemplos de como o senhor pode usar as tabelas do sistema MLflow para responder a perguntas sobre os experimentos e a execução do MLflow.

Configurar um alerta SQL para baixa confiabilidade do experimento

Usando o Databricks SQL alerta (Beta), o senhor pode programar uma consulta recorrente regular e ser notificado se determinadas restrições não forem mais atendidas.

Esse exemplo cria um alerta que examina os experimentos executados com mais frequência no site workspace para determinar se eles estão apresentando baixa confiabilidade e se precisam de atenção especial. A consulta usa a tabela runs_latest para calcular a execução por experimento que está marcada como concluída, dividida pelo número total de execuções.

nota

O recurso de alerta SQL está atualmente em Beta, e o senhor também pode usar o alerta antigo.

  1. Clique em ícone de alerta alerta na barra lateral e clique em Create alerta .

  2. Copie e cole a consulta a seguir no editor de consultas.

    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;
  3. No campo Condição , defina as condições como MIN success_ratio < 0.9. Isso acionará o alerta se qualquer um dos 20 principais experimentos (por número de execução) tiver uma taxa de sucesso inferior a 90%.

Além disso, o senhor pode testar a condição, definir um programa e configurar notificações. Para obter mais informações sobre como configurar o alerta, consulte a configuração de um alerta em SQL. abaixo é um exemplo de configuração usando a consulta.

Configuração de alerta SQL

Exemplos de consultas

O senhor pode usar as seguintes consultas de amostra para obter informações sobre a atividade do MLflow em seu account usando Databricks SQL. O senhor também pode aproveitar ferramentas como Python Notebook com Spark.

Obter informações de execução do runs_latest

SQL
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

Retorna informações sobre a execução fornecida:

Resultados da consulta execução informações

Obtenha informações sobre experimentos e execução em experiments_latest e runs_latest

SQL
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

Obter estatísticas resumidas para uma determinada execução a partir de run_metrics_history

SQL
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

Isso retorna um resumo das métricas para o site run_id fornecido:

Resultados da consulta execução summary métricas

Dashboards para experimentos e execução

O senhor pode criar painéis com base nos dados das tabelas do sistema MLflow para analisar seus experimentos MLflow e a execução de todo o workspace.

Para obter mais detalhes, consulte Criar dashboards com metadados do MLflow em tabelas do sistema