Partilhar via


Introdução ao Databricks Lakehouse Monitoring

Este artigo descreve o Databricks Lakehouse Monitoring. Ele cobre os benefícios de monitorar seus dados e fornece uma visão geral dos componentes e do uso do Databricks Lakehouse Monitoring.

O Databricks Lakehouse Monitoring permite monitorizar as propriedades estatísticas e a qualidade dos dados em todos os tables na sua conta. Você também pode usá-lo para acompanhar o desempenho de modelos de aprendizado de máquina e endpoints de serviço de modelo, monitorizando dados de inferência tables que contêm entradas e previsões de modelo. O diagrama mostra o fluxo de dados através de dados e pipelines de ML no Databricks e como você pode usar o monitoramento para rastrear continuamente a qualidade dos dados e o desempenho do modelo.

Visão geral do Databricks Lakehouse Monitoring

Por que usar o Databricks Lakehouse Monitoring?

Para obter informações úteis a partir dos seus dados, deve ter confiança na qualidade dos seus dados. O monitoramento de seus dados fornece medidas quantitativas que ajudam você a rastrear e confirmar a qualidade e a consistência de seus dados ao longo do tempo. Quando você deteta alterações na distribuição de dados do seu tableou no desempenho do modelo correspondente, o tables criado pelo Databricks Lakehouse Monitoring pode capturar e alertá-lo sobre a alteração e pode ajudá-lo a identificar a causa.

O Databricks Lakehouse Monitoring ajuda você a responder a perguntas como as seguintes:

  • Como é a integridade dos dados e como ela muda ao longo do tempo? Por exemplo, qual é a fração de values que é nula ou zero nos dados atuais, e ela aumentou?
  • Como é a distribuição estatística dos dados e como ela muda ao longo do tempo? Por exemplo, qual é o 90.º percentil de uma variável numérica column? Ou, o que é a distribuição de values em uma columncategórica, e como ela difere de ontem?
  • Existe desvio entre os dados atuais e uma linha de base conhecida, ou entre janelas de tempo sucessivas dos dados?
  • Como é a distribuição estatística ou desvio de um subconjunto ou fatia dos dados?
  • Como as entradas e previsões do modelo de ML estão mudando ao longo do tempo?
  • Qual é a tendência de desempenho do modelo ao longo do tempo? A versão A do modelo tem um desempenho melhor do que a versão B?

Além disso, o Databricks Lakehouse Monitoring permite controlar a granularidade do tempo das observações e set métricas personalizadas.

Requisitos

O seguinte é necessário para usar o Databricks Lakehouse Monitoring:

  • Seu espaço de trabalho deve estar habilitado para o Unity Catalog e você deve ter acesso ao Databricks SQL.
  • Somente os tables Delta são suportados para monitorização, e o table deve ser um dos seguintes tipos de table: tablesgerenciado, tablesexterno, views, viewsmaterializado ou tablesde streaming.
  • Os monitores criados sobre os views materializados e os tables de streaming não suportam processamento incremental.
  • Nem todas as regiões são suportadas. Para obter suporte regional, consulte o column Computação sem servidor para blocos de anotações e fluxos de trabalho no tableRecursos com disponibilidade regional limitada.

Nota

O Databricks Lakehouse Monitoring usa computação sem servidor para trabalhos. Para obter informações sobre como controlar as despesas do Lakehouse Monitoring, consulte Exibir despesas do Lakehouse Monitoring.

Como funciona o monitoramento Lakehouse no Databricks

Para monitorar um table no Databricks, crie um monitor anexado ao table. Para monitorar o desempenho de um modelo de aprendizado de máquina, anexe o monitor a um table de inferência que contém as entradas do modelo e as previsões correspondentes.

O Databricks Lakehouse Monitoring fornece os seguintes tipos de análise: séries temporais, instantâneos e inferência.

Tipo de perfil Description
Séries cronológicas Use para tables que contenham um conjunto de dados de série temporal com base num carimbo de data/hora column. O monitoramento calcula métricas de qualidade de dados em janelas baseadas no tempo da série temporal.
Inferência Use para tables que contêm o log de solicitações para um modelo. Cada linha é uma solicitação, com columns para o carimbo de data/hora, as entradas do modelo, a previsão correspondente e o rótulo (opcional) de verdade básica. O monitoramento compara o desempenho do modelo e as métricas de qualidade de dados em janelas baseadas no tempo do log de solicitações.
Instantâneo Use para todos os outros tipos de tables. O monitoramento calcula as métricas de qualidade de dados em todos os dados do table. O table completo é processado com cada refresh.

Esta secção descreve brevemente a entrada tables usada pelo Databricks Lakehouse Monitoring e a métrica tables que produz. O diagrama mostra a relação entre o tablesde entrada, a métrica tables, o monitor e o painel.

Databricks Lakehouse Diagrama de monitoramento

table primários e table iniciais

Além do table a ser monitorado, chamado de "tableprimário", pode opcionalmente especificar uma linha de base table a ser usada como referência para medir o desvio ou a mudança no values ao longo do tempo. Uma linha de base table é útil quando se tem uma amostra de como se espera que os seus dados se apresentem. A ideia é que o desvio seja então calculado em relação aos dados esperados values e distribuições esperadas.

O table de base deve conter um conjunto de dados que reflita a qualidade esperada dos dados de entrada, em termos de distribuições estatísticas, distribuições individuais de column, valuesem falta e outras características. A schema deve corresponder ao tablemonitorizado. A exceção é o timestamp column para tables utilizado com séries temporais ou perfis de inferência. Se columns estiverem ausentes no table primário ou no tablede referência, o monitoramento utiliza heurísticas de melhor esforço para calcular as métricas de saída.

Para monitores que usam um perfil de instantâneo, a linha de base table deve conter um instantâneo dos dados where, onde a distribuição representa um padrão de qualidade aceitável. Por exemplo, nos dados de distribuição de notas, pode-se set a linha de base para uma classe anterior where as notas foram distribuídas uniformemente.

Para monitores que usam um perfil de série temporal, a linha de base table deve conter dados que representem o tempo window(s) e as distribuições de dados where representam um padrão de qualidade aceitável. Por exemplo, em dados meteorológicos, você pode set a linha de base para uma semana, mês ou ano where a temperatura estiver próxima das temperaturas normais esperadas.

Para monitores que usam um perfil de inferência, uma boa opção para uma linha de base são os dados que foram usados para treinar ou validar o modelo que está sendo monitorado. Desta forma, os usuários podem ser alertados quando os dados se desviaram em relação ao que o modelo foi treinado e validado. Esse table deve conter a mesma caraterística columns que o tableprimário e, adicionalmente, deve ter o mesmo model_id_col que foi especificado para o InferenceLog do tableprimário para que os dados sejam agregados de forma consistente. Idealmente, o teste ou validação set usado para avaliar o modelo deve ser usado para garantir métricas de qualidade do modelo comparáveis.

Métrica tables e painel

Um monitor table cria dois tables métricos e um painel. As métricas values são calculadas para todo o tablee para os intervalos de tempo e subconjuntos de dados (ou "fatias") que especificas ao criar o monitor. Além disso, para análise de inferência, as métricas são calculadas para cada ID de modelo. Para obter mais detalhes sobre a métrica tables, consulte Monitor metric tables.

  • A métrica de perfil table contém estatísticas resumidas. Veja as métricas de perfil tableschema.
  • As métricas de desvio table contêm estatísticas relacionadas com o desvio dos dados ao longo do tempo. Se for fornecida uma linha de base table, o desvio também é monitorizado em relação à linha de base values. Veja as métricas de desvio tableschema.

Os dados métricos tables são Delta tables e estão armazenados numa unidade Catalogschema que você especifica. Você pode exibir esses tables usando a interface do usuário do Databricks, consultá-los usando o Databricks SQL e criar painéis e alertas com base neles.

Para cada monitor, o Databricks cria automaticamente um painel para ajudá-lo a visualizar e apresentar os resultados do monitor. O painel é totalmente personalizável. Consulte Dashboards.

Comece a usar o Lakehouse Monitoring no Databricks

Consulte os seguintes artigos para get começados: