Compartilhar via


Monitorar a atividade da conta com tables do sistema

Este artigo explica o conceito de tables do sistema no Azure Databricks e realça os recursos que você pode usar para get ao máximo os dados de tables do sistema.

O que são tables do sistema?

tables do sistema são um repositório analítico hospedado pelo Azure Databricks dos dados operacionais de sua conta encontrados no systemcatalog. As tables do sistema podem ser usadas para ter observabilidade histórica de sua conta.

Observação

Para consultar a documentação sobre system.information_schema, confira schema de informações.

Requisitos

  • Para acessar o sistema tables, sua área de trabalho deve estar habilitada para o Unity Catalog. Para obter mais informações, confira Habilitar esquemas de table do sistema.

  • tables do sistema não estão disponíveis nas seguintes regiões:

    • Regiões do Azure na China
    • Regiões do Azure Governamental
    • Índia Ocidental
    • Oeste da Suíça

Quais sistemas tables estão disponíveis?

Atualmente, o Azure Databricks hospeda o seguinte sistema tables:

Table Descrição Location Dá suporte ao streaming Período de retenção gratuito Inclui dados globais ou regionais
Logs de auditoria (Visualização Pública) Inclui registros para todos os eventos de auditoria de workspaces em sua região. Para obter uma list dos eventos de auditoria disponíveis, confira a Referência do log de diagnóstico. system.access.audit Yes 365 dias Regional para eventos no nível do workspace. Global para eventos de nível de conta.
Linhagem de Table (versão prévia pública) Inclui um registro para cada evento de leitura ou gravação em um Catalogtable ou caminho do Unity. system.access.table_lineage Yes 365 dias Regional
Linhagem de Column (versão prévia pública) Inclui um registro para cada evento de leitura ou gravação em um Catalogcolumn do Unity (mas não inclui eventos que não têm uma origem). system.access.column_lineage Yes 365 dias Regional
Uso faturável Inclui registros de todo o uso faturável em sua conta. system.billing.usage Yes 365 dias Global
Preços Um log histórico de preços de SKU. Um registro é adicionado sempre que há uma alteração em um preço de SKU. system.billing.list_prices Não Ilimitado Global
Clusters (Visualização Pública) Uma dimensão de alteração lenta table que contém o histórico completo de configurações de computação ao longo do tempo para qualquer cluster. system.compute.clusters Yes 365 dias Regional
Linha do tempo do nó (Visualização Pública) Captura as métricas de utilização dos recursos de computação de todos os seus trabalhos e para todos os fins. system.compute.node_timeline Yes 30 dias Regional
Tipos de nó (Visualização Pública) Captura os tipos de nós atualmente disponíveis com suas informações básicas de hardware. system.compute.node_types Não N/D Regional
SQL warehouses (Visualização Pública) Contém o histórico completo de configurações ao longo do tempo para qualquer SQL warehouse. system.compute.warehouses Yes 365 dias Regional
Eventos do SQL warehouse (Visualização Pública) Captura eventos relacionados a SQL warehouses. Por exemplo, iniciar, parar, executar, escalar verticalmente e reduzir verticalmente. system.compute.warehouse_events Yes 365 dias Regional
Trabalhos (Visualização Pública) Rastreia todos os trabalhos criados na conta. system.lakeflow.jobs Yes 365 dias Regional
Tarefas de trabalho (Visualização Pública) Rastreia todas as tarefas de trabalho executadas na conta. system.lakeflow.job_tasks Yes 365 dias Regional
Linha do tempo de execução do trabalho (Visualização Pública) Rastreia os horários de início e término das execuções de trabalhos. system.lakeflow.

job_run_timeline
Yes 365 dias Regional
Linha do tempo da tarefa de trabalho (Visualização Pública) Rastreia os horários de início e término e calcula os recursos usados ​​para execuções de tarefas de trabalho. system.lakeflow.

job_task_run_timeline
Yes 365 dias Regional
Eventos de funil do Marketplace (Visualização Pública) Inclui a impressão do consumidor e os dados de funil para suas listagens. system.marketplace.listing_

funnel_events
Yes 365 dias Regional
Acesso à listagem do Marketplace (Visualização Pública) Inclui informações do consumidor para dados de solicitações concluídas ou eventos get dados em suas listagens. system.marketplace.listing_

access_events
Yes 365 dias Regional
Otimização preditiva (Visualização Pública) Controla o histórico de operações do recurso de otimização preditiva. system.storage.predictive_

optimization_operations_history
Não 180 dias Regional
Eventos do Assistente do Databricks (Visualização Pública) Rastreia as mensagens de usuário enviadas ao Assistente do Databricks. system.access.assistant_events Não 365 dias Regional
Histórico de consultas (Visualização Pública) Captura registros de todas as consultas executadas em SQL warehouses e na computação sem servidor para notebooks e trabalhos. system.query.history Não 90 dias Regional
Eventos de ambiente controlado (Visualização Pública) Captura eventos relacionados a ambientes controlados. system.access.clean_room_events Yes 365 dias Regional
Uso do ponto de extremidade de serviço do modelo (Visualização Pública) Captura contagens de tokens para cada solicitação para um ponto de extremidade de serviço do modelo e suas respostas. Para capturar o uso do ponto de extremidade neste table, você precisa habilitar o acompanhamento do uso em seu ponto de extremidade do serviço. system.serving.endpoint_usage. Yes 90 dias Regional
Dados do ponto de extremidade de serviço do modelo (Visualização Pública) Uma dimensão com alteração lenta table que armazena metadados sobre cada modelo de base servido em um ponto de extremidade do Serviço de Modelo. system.serving.served_entities Yes 365 dias Regional
Eventos de acesso à rede (visualização pública) Um table que registra um evento para cada vez que o acesso à internet é negado de sua conta. system.access.outbound_network Yes 365 dias Regional

O uso faturável e os preços tables são gratuitos. Tables na visualização pública também são gratuitos para uso durante a versão prévia, mas poderão incorrer em cobranças no futuro.

Observação

Você pode ver outras tables do sistema em sua conta além das listadas acima. Esses tables estão atualmente em Versão Prévia Privada e estão vazios por padrão. Se você estiver interessado em usar qualquer uma dessas tables, entre em contato com sua equipe de conta do Databricks.

Habilitar esquemas de table do sistema

Como o sistema tables é regido pelo Unity Catalog, você precisa ter pelo menos um workspace habilitado para Unity Catalogem sua conta para habilitar e acessar o sistema tables. As tables do sistema incluem dados de todos os workspaces em sua conta, mas só podem ser acessadas de um workspace habilitado pelo Catalog do Unity.

As tables do sistema estão habilitadas no nível de schema. Se você habilitar um schema do sistema, habilitará todas as tables desse schema. Quando novos esquemas são liberados, um administrador de conta precisa habilitar manualmente o schema.

Sistema tables deve ser habilitado por um administrador de conta. Você pode habilitar o sistema tables usando comandos system-schemas na CLI do Databricks ou usando a API SystemSchemas .

Observação

O billingschema está habilitado por padrão. Outros esquemas devem ser ativados manualmente.

List esquemas de sistema disponíveis

Use o seguinte comando curl para list os esquemas de sistema disponíveis:

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

Veja a seguir um exemplo de saída do comando GET:

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

state: AVAILABLE: o sistema schema está disponível, mas ainda não foi habilitado.

state: EnableCompleted: você habilitou o sistema schema e ele está visível no Explorador de Catalog.

Habilitar um sistema schema

Use o seguinte comando curl para habilitar um sistema schema:

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>"

Se o sistema schema for habilitado com êxito, o código de resultado 200 será retornado.

Se você tentar habilitar novamente um sistema schema, o seguinte será retornado: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists".

Desabilitar um sistema schema

Use o seguinte comando curl para desabilitar um sistema schema:

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>"

Grant acesso ao sistema tables

O acesso ao sistema tables é regido pelo Unity Catalog. Por padrão, nenhum usuário tem acesso a esses esquemas do sistema. Para grant o acesso, um usuário que seja administrador tanto do metastore quanto da conta deve grantUSE e SELECT permissões nos esquemas de sistema. Veja Gerenciar privilégios no Catalog do Unity.

As tables do sistema são somente leitura e não podem ser modificadas.

Observação

Se a sua conta foi criada após 9 de novembro de 2023, talvez você não tenha um administrador de metastore por padrão. Para obter mais informações, confira Set e gerenciar o Unity Catalog.

O sistema tables contém dados para todos os espaços de trabalho em sua conta?

O sistema tables contém dados operacionais para todos os workspaces em sua conta implantados na mesma região da nuvem. O sistema de cobrança tables contém dados sobre toda a conta.

Embora o sistema tables só possa ser acessado por meio de um workspace Unity Catalog, o tables também inclui dados operacionais para os workspaces não-Unity Catalog na sua conta.

Where Os dados de table do sistema são armazenados?

Os dados do sistema table da sua conta são armazenados em uma conta de armazenamento hospedada no Azure Databricks localizada na mesma região do metastore. Os dados são compartilhados em segurança com você usando o Compartilhamento Delta.

Cada table tem um período de retenção de dados gratuito. Para obter informações sobre como estender o período de retenção, entre em contato com a equipe de conta do Azure Databricks.

Where Os tables do sistema são localizados no Catalog Explorer?

As tables do sistema na sua conta estão localizadas em um catalog chamado system, que está incluído em cada metastore do Unity Catalog. No systemcatalog você verá esquemas como access e billing que contêm o sistema tables.

Considerações para o sistema de streaming tables

O Azure Databricks usa o Compartilhamento Delta para compartilhar dados de table do sistema com os clientes. Esteja ciente das seguintes considerações ao transmitir com o Compartilhamento Delta:

  • Se estiver usando o streaming com tables do sistema, set a opção skipChangeCommits como true. Isso garante que o trabalho de transmissão não seja interrompido por exclusões nas tables do sistema. Consulte Ignorar atualizações e exclusões.
  • Não há suporte para Trigger.AvailableNow com o streaming de Compartilhamento Delta. Ele será convertido em Trigger.Once.

Se você usar um gatilho em seu trabalho de streaming e descobrir que ele não está alcançando a versão mais recente da table do sistema, o Databricks recomenda aumentar a frequência agendada do trabalho.

Ler alterações incrementais de tables do sistema de streaming

spark.readStream.option("skipChangeCommits", "true").table("system.billing.usage")

Problemas conhecidos

  • Atualmente, não há suporte para monitoramento em tempo real. Os dados são atualizados ao longo do dia. Se não houver um log de um evento recente, verifique novamente mais tarde.

  • As __internal_logging do sistema tableschema são usadas para dar suporte ao registro em log de carga usando a tables de inferência habilitada pelo Gateway de IA para modelos externos e cargas de trabalho de taxa de transferência provisionadas. Esse schema é visível para os administradores da conta, mas não pode ser habilitado e não deve ser usado para fluxos de trabalho do cliente.

  • Para habilitar tables do sistema, talvez seja necessário grant acesso à rede para o ponto de extremidade de armazenamento de blobs das tables do sistema. Para exibir uma list do ponto de extremidade do armazenamento das tables do sistema de cada região, consulte Endereços IP do ponto de extremidade do armazenamento.

  • Os esquemas do sistema system.operational_data e system.lineage estão obsoletos e conterão tables vazias.