Supervisión de la utilización con las tablas del sistema

Importante

Esta característica está en versión preliminar pública. Actualmente no hay ningún cargo para usar esta característica. En el futuro, parte de este uso podría incurrir en un cargo.

En este artículo se explica el concepto de tablas del sistema en Azure Databricks y se resaltan los recursos que puede usar para sacar el máximo partido de los datos de las tablas del sistema.

¿Qué son las tablas del sistema?

Las tablas de sistema son un almacén analítico hospedado en Azure Databricks de los datos operativos de su cuenta que se encuentran en el catálogo system. Las tablas del sistema se pueden usar para la observabilidad histórica en toda la cuenta.

Nota:

Para obtener documentación sobre system.information_schema, consulte Esquema de información.

Requisitos

Para acceder a sus tablas del sistema, su área de trabajo debe estar habilitada para Unity Catalog. Para obtener más información, consulte Habilitación de esquemas de tabla del sistema.

¿Qué tablas del sistema están disponibles?

Actualmente, Azure Databricks hospeda tablas del sistema para:

Tabla Descripción Location Admite streaming Retención Incluir datos globales o regionales
Registros de auditoría Incluye registros para todos los eventos de auditoría de áreas de trabajo de su región. Para obtener una lista de los eventos de auditoría disponibles, consulte Referencia del registro de diagnóstico. system.access.audit 365 días Regionales para eventos de nivel de área de trabajo. Globales para eventos de nivel de cuenta.
Linaje de tabla Incluye un registro para cada evento de lectura o escritura en una tabla o ruta de acceso de Unity Catalog. system.access.table_lineage 365 días Regional
Linaje de columna Incluye un registro para cada evento de lectura o escritura en una columna de Unity Catalog (pero no incluye eventos que no tienen un origen). system.access.column_lineage 365 días Regional
Uso facturable Incluye registros de todo el uso facturable de su cuenta. Cada registro de uso es un agregado por hora del uso facturable de un recurso. system.billing.usage 365 días Global
Precios Un registro histórico de precios de SKU. Se agrega un registro cada vez que hay un cambio en un precio de SKU. system.billing.list_prices No N/D Global
Clústeres Tabla de dimensión variable lenta que contiene el historial completo de configuraciones de clúster a lo largo del tiempo para cualquier clúster. system.compute.clusters None Regional
Tipos de nodo Captura los tipos de nodo disponibles actualmente con su información básica de hardware. system.compute.node_types No N/D Regional
Eventos de almacenes de SQL Captura eventos relacionados con los almacenes de SQL. Por ejemplo, iniciar, detener, ejecutar, escalar y reducir verticalmente. system.compute.warehouse_events 365 días Regional
Eventos de embudo de Marketplace Incluye datos de impresión y embudo de los consumidores para sus listas. system.marketplace.listing_

funnel_events
365 días Regional
Acceso de lista de Marketplace Incluye información del consumidor para los datos de solicitud completados o se obtienen eventos de datos en sus listas. system.marketplace.listing_

access_events
365 días Regional
Optimización predictiva Realiza un seguimiento del historial de operaciones de la característica de optimización predictiva. system.storage.predictive_

optimization_operations_history
No 180 días Regional

Nota:

Es posible que vea otras tablas del sistema en su cuenta además de las enumeradas anteriormente. Esas tablas se encuentran actualmente en versión preliminar privada y están vacías de forma predeterminada. Si está interesado en usar cualquiera de estas tablas, póngase en contacto con el equipo de la cuenta de Databricks.

Habilitación de esquemas de tabla del sistema

Dado que las tablas del sistema se rigen por el catálogo de Unity, debe tener al menos un área de trabajo habilitada para el catálogo de Unity en su cuenta para habilitar y acceder a las tablas del sistema. Las tablas del sistema incluyen datos de todas las áreas de trabajo de la cuenta, pero solo se puede acceder a ellas desde un área de trabajo habilitada para el catálogo de Unity.

Las tablas del sistema están habilitadas en el nivel de esquema. Si habilita un esquema del sistema, habilitará todas las tablas dentro de ese esquema. Cuando se publican nuevos esquemas, un administrador de cuenta tiene que habilitar manualmente el esquema.

Un administrador de la cuenta debe habilitar las tablas del sistema. Puede habilitar tablas del sistema mediante la API SystemSchemas.

Lista de esquemas del sistema disponibles

Use el siguiente comando curl para enumerar los esquemas del sistema disponibles:

curl -v -X GET -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas"

A continuación se muestra un ejemplo de salida del GET comando:

{"schemas":[{"schema":"access","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"billing","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"information_schema","state":"<AVAILABLE OR EnableCompleted>"}]}

state: AVAILABLE: el esquema del sistema está disponible, pero aún no se ha habilitado.

state: EnableCompleted: ha habilitado el esquema del sistema y está visible en Catalog Explorer.

Habilitación de un esquema del sistema

Use el siguiente comando curl para habilitar un esquema del sistema:

curl -v -X PUT -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

Si el esquema del sistema está habilitado correctamente, se devuelve el código 200 de resultado.

Si intenta volver a habilitar un esquema del sistema, se devuelve lo siguiente: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists".

Deshabilitar un esquema del sistema

Use el siguiente comando curl para deshabilitar un esquema del sistema:

curl -v -X DELETE -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

Concesión de acceso a tablas del sistema

El acceso a la tabla del sistema se rige por Unity Catalog. De forma predeterminada, ningún usuario tiene acceso a las tablas del sistema. Para conceder el acceso, los administradores del metastore u otro usuario privilegiado deben conceder permisos USE y SELECT en los esquemas del sistema. Consulte Administración de privilegios en Unity Catalog.

Las tablas del sistema son de solo lectura y no se pueden modificar.

Nota:

Si la cuenta se creó después del 9 de noviembre de 2023, es posible que no tenga un administrador de metastore de forma predeterminada. Para más información, consulte Configuración y administración de Unity Catalog.

¿Las tablas del sistema contienen datos para todas las áreas de trabajo de la cuenta?

Las tablas de registro de auditoría y linaje contienen datos operativos para todas las áreas de trabajo de la cuenta implementadas en la misma región de nube. La tabla del sistema de facturación (system.billing.usage) contiene los datos de todos los área de trabajo de tu cuenta, independientemente de la región en la que estén desplegados.

Aunque solo se puede acceder a las tablas del sistema a través de un área de trabajo del catálogo de Unity, las tablas también incluyen datos operativos para áreas de trabajo que no son del catálogo de Unity en la cuenta.

¿Dónde se encuentran las tablas del sistema?

Las tablas del sistema de tu cuenta se encuentran en un catálogo llamado system, que se incluye en todos los metadatos del Catálogo Unity. En el system catálogo, verá esquemas como access y billing que contienen las tablas del sistema.

Nota:

Durante las tablas del sistema versión preliminar pública, Azure Databricks conservará todos los datos de las tablas del sistema.

Consideraciones para las tablas del sistema de streaming

Delta Sharing admite el acceso a las tablas del sistema. Tenga en cuenta las siguientes consideraciones al transmitir con Delta Sharing:

  • Si usa streaming con tablas del sistema, establezca la opción skipChangeCommit en true. Esto garantiza que el trabajo de streaming no se interrumpa de las eliminaciones en las tablas del sistema. Consulte Omisión de actualizaciones y eliminaciones.
  • Trigger.AvailableNow no se admite con streaming de Delta Sharing. Se convertirá en Trigger.Once.
  • Si usa un desencadenador en el trabajo de streaming y encuentra que el trabajo no se está poniendo al día con la versión más reciente de la tabla del sistema, Databricks recomienda aumentar la frecuencia programada del trabajo.

Problemas conocidos

  • Actualmente no se admite la supervisión en tiempo real. Los datos se actualizan a lo largo del día. Si no ves un registro de un evento reciente, vuelve a comprobarlo más tarde.

  • Para habilitar las tablas del sistema, es posible que tenga que conceder acceso de red al punto de conexión de Blob Storage de las tablas del sistema. Para ver una lista del punto final de almacenamiento de las tablas de sistema de cada región, consulta Direcciones IP del punto final de almacenamiento.

  • Los esquemas del sistema system.operational_data y system.lineage están en desuso y contendrán tablas vacías.