Introducción a la supervisión de Databricks Lakehouse
En este artículo se describe la supervisión de Databricks Lakehouse. Abarca las ventajas de supervisar los datos y proporciona información general sobre los componentes y el uso de la supervisión de Databricks Lakehouse.
La supervisión de Databricks Lakehouse le permite supervisar las propiedades estadísticas y la calidad de los datos en todas las tablas de su cuenta. También puede usarlo para realizar un seguimiento del rendimiento de los modelos de Machine Learning y los puntos de conexión de servicio de modelos mediante la supervisión de tablas de inferencia que contienen entradas y predicciones del modelo. En el diagrama se muestra el flujo de datos a través de canalizaciones de datos y aprendizaje automático en Databricks y cómo puede usar la supervisión para realizar un seguimiento continuo de la calidad de los datos y el rendimiento del modelo.
¿Por qué usar la supervisión de Databricks Lakehouse?
Para obtener información útil a partir de los datos, es necesario tener confianza en la calidad de los datos. La supervisión de los datos proporciona medidas cuantitativas que le ayudan a realizar un seguimiento y confirmar la calidad y la coherencia de los datos a lo largo del tiempo. Cuando detecte cambios en la distribución de datos de tabla o en el rendimiento del modelo correspondiente, las tablas creadas por la supervisión de Databricks Lakehouse podrán capturar y alertar sobre el cambio y podrían ayudarle a identificar la causa.
La supervisión de Databricks Lakehouse le ayuda a responder a preguntas como las siguientes:
- ¿Qué aspecto tiene la integridad de los datos y cómo cambia con el tiempo? Por ejemplo, ¿cuál es la fracción de valores NULL o cero de los datos actuales, y ha aumentado esta?
- ¿Qué aspecto tiene la distribución estadística de los datos y cómo cambia con el tiempo? Por ejemplo: ¿cuál es el percentil 90 de una columna numérica? O bien, ¿cuál es la distribución de valores en una columna de categorías y cómo difiere de ayer?
- ¿Hay un desfase entre los datos actuales y una línea base conocida, o bien entre ventanas de tiempo sucesivas de los datos?
- ¿Qué aspecto tiene la distribución estadística o el desfase de un subconjunto o segmento de datos?
- ¿Cómo cambian las predicciones y las entradas del modelo de ML a lo largo del tiempo?
- ¿Cómo se realiza la tendencia del rendimiento del modelo a lo largo del tiempo? ¿La versión del modelo A rinde mejor que la versión B?
Además, la supervisión de Databricks Lakehouse permite controlar la granularidad de tiempo de las observaciones y configurar métricas personalizadas.
Requisitos
Los siguientes requisitos son necesarios para usar la supervisión de Databricks Lakehouse:
- El área de trabajo deberá estar habilitada para el catálogo de Unity y debe tener acceso a SQL de Databricks.
- Solo se admiten tablas Delta para la supervisión y la tabla debe ser uno de los siguientes tipos de tabla: tablas administradas, tablas externas, vistas, vistas materializadas o tablas de streaming.
- Los monitores creados sobre vistas materializadas y tablas de streaming no admiten el procesamiento incremental.
- No se admiten todas las regiones. Para obtener soporte regional, consulte la columna Proceso sin servidor para cuadernos y flujos de trabajo de la tabla Características con disponibilidad regional limitada.
Nota:
La supervisión de Databricks Lakehouse usa un proceso sin servidor para los trabajos. Para obtener información sobre el seguimiento de los gastos de supervisión de lago de datos, consulte Ver gastos de supervisión de lago de datos.
Funcionamiento de la supervisión de Lakehouse en Databricks
Para supervisar una tabla en Databricks, cree un monitor asociado a la tabla. Para supervisar el rendimiento de un modelo de Machine Learning, adjunte el monitor a una tabla de inferencia que contenga las entradas del modelo y las predicciones correspondientes.
La supervisión de Databricks Lakehouse proporciona los siguientes tipos de análisis: serie temporal, instantánea e inferencia.
Tipo de perfil | Descripción |
---|---|
Serie temporal | Se usa para tablas que contienen un conjunto de datos de serie temporal basado en una columna de marca de tiempo. La supervisión calcula las métricas de calidad de los datos en ventanas basadas en el tiempo de la serie temporal. |
Inferencia | Se usa para tablas que contienen el registro de solicitudes de un modelo. Cada fila es una solicitud, con columnas para la marca de tiempo, las entradas del modelo, la predicción correspondiente y la etiqueta de verdad fundamental (opcional). La supervisión compara el rendimiento del modelo y las métricas de calidad de los datos en las ventanas basadas en el tiempo del registro de solicitudes. |
Depurador de | Se usa para todos los demás tipos de tablas. La supervisión calcula las métricas de calidad de los datos en todos los datos de la tabla. La tabla completa se procesa con cada actualización. |
En esta sección se describen brevemente las tablas de entrada que usa la supervisión de Databricks Lakehouse y las tablas de métricas que genera. El diagrama muestra la relación entre las tablas de entrada, las tablas de métricas, el monitor y el panel.
Tabla principal y tabla de línea base
Además de la tabla que se vaya a supervisar, denominada "tabla principal", puede especificar opcionalmente una tabla de línea base que se usará como referencia para medir el desfase o el cambio en los valores a lo largo del tiempo. Una tabla de línea base resultará útil cuando tenga un ejemplo de lo que espera que tendrán los datos. La idea es que el desfase se calcule en relación a los valores y distribuciones de los datos esperados.
La tabla de línea base debería contener un conjunto de datos que refleje la calidad esperada de los datos de entrada, en términos de distribuciones estadísticas, distribuciones de columnas individuales, valores que falten y otras características. Debería coincidir con el esquema de la tabla supervisada. La excepción es la columna de línea de tiempo de las tablas usadas con perfiles de inferencia o serie temporal. Si faltasen columnas en la tabla principal o en la tabla de línea base, la supervisión usará la heurística de mejor esfuerzo para procesar las métricas de salida.
Para los monitores que usen un perfil de instantánea, la tabla de línea base debería contener una instantánea de los datos en los que la distribución represente un estándar de calidad aceptable. Por ejemplo, en cuanto a datos de distribución de calificaciones, uno podría establecer la línea de base en una clase anterior en la que las calificaciones se distribuyeron uniformemente.
Para los monitores que usen un perfil de serie temporal, la tabla de línea base debería contener datos que representen ventanas de tiempo en las que las distribuciones de datos representen un estándar de calidad aceptable. Por ejemplo, en cuanto a datos meteorológicos, podría establecer la línea de base en una semana, mes o año donde la temperatura estuvo cerca de las temperaturas normales esperadas.
En el caso de monitores que usen un perfil de inferencia, una buena opción para una línea base serían los datos que se usaron para entrenar o validar el modelo que se esté supervisando. De este modo, los usuarios podrían recibir alertas cuando los datos se hayan desfasado en relación con lo que se entrenó y validó el modelo. Esta tabla debería contener las mismas columnas de características que la tabla principal y, además, debería tener el mismo model_id_col
que se especificó para el InferenceLog de la tabla principal, y que así los datos se agreguen de forma coherente. Lo ideal es que el conjunto de pruebas o validación usado para evaluar el modelo se use para garantizar métricas de calidad de modelos comparables.
Tablas de métricas y panel
Un monitor de tabla crea dos tablas de métricas y un panel. Los valores de métricas se calculan para toda la tabla y para las ventanas de tiempo y subconjuntos de datos (o "segmentos") que se especifiquen al crear el monitor. Además, para el análisis de inferencia, las métricas se calculan para cada identificador de modelo. Para obtener más información sobre las tablas de métricas, consulte Supervisión de tablas de métricas.
- La tabla de métricas de perfil contiene estadísticas de resumen. Consulte el esquema de la tabla de métricas de perfil.
- La tabla de métricas de desfase contiene estadísticas relacionadas con el desfase de datos a lo largo del tiempo. Si se proporcionase una tabla de línea base, también se supervisará el desfase con respecto a los valores de línea base. Consulte el esquema de la tabla de métricas de desfase.
Las tablas de métricas son tablas Delta y se almacenarán en un esquema de catálogo de Unity que especifique. Es posible ver estas tablas mediante la interfaz de usuario de Databricks, consultarlas mediante Databricks SQL y crear paneles y alertas en función de ellas.
Para cada monitor, Databricks creará automáticamente un panel para ayudarle a visualizar y presentar los resultados del monitor. El panel es totalmente personalizable, como cualquier otro panel heredado.
Empiece a usar la supervisión de Lakehouse en Databricks
Para comenzar, consulte los artículos siguientes:
- Creación de un monitor mediante la interfaz de usuario de Databricks.
- Creación de un monitor mediante la API.
- Descripción de las tablas de métricas de supervisión.
- Trabajar con el panel de supervisión.
- Creación de alertas de SQL basadas en un monitor.
- Creación de métricas personalizadas.
- Supervisión de puntos de conexión de servicio del modelo.
- Supervise la equidad y el sesgo de los modelos de clasificación.
- Consulte el material de referencia de la API de supervisión de Databricks Lakehouse.
- Cuadernos de ejemplo.