Monitorar o uso com tabelas do sistema
Este artigo explica o conceito de tabelas do sistema no Databricks e destaca os recursos que você pode usar para aproveitar ao máximo os dados das tabelas do sistema.
O que são tabelas do sistema?
As tabelas do sistema são um armazenamento analítico hospedado pelo Databricks, dos dados operacionais da sua conta, disponíveis no catálogo system
. As tabelas do sistema podem ser usadas para observabilidade histórica em sua conta.
Observação
Para ver a documentação sobre system.information_schema
, consulte Esquema de informações.
Requisitos
Para acessar as tabelas do sistema, seu espaço de trabalho deve estar habilitado para o Unity Catalog. Para obter mais informações, consulte Ativar esquemas de tabela do sistema.
As tabelas do sistema não estão disponíveis nas regiões da AWS GovCloud.
Quais tabelas do sistema estão disponíveis?
Atualmente, o Databricks hospeda as seguintes tabelas do sistema:
Tabela |
Descrição |
Localização |
Suporta streaming |
Período de retenção gratuito |
Inclui dados globais ou regionais |
---|---|---|---|---|---|
Registros de auditoria (visualização pública) |
Contém registros de todos os eventos de auditoria de workspaces em sua região. Para ver uma lista de eventos de auditoria disponíveis, consulte Referência de log de auditoria. |
|
Sim |
365 dias |
Regional para eventos no nível do espaço de trabalho. Global para eventos no nível da conta. |
Linhagem da tabela (pré-visualização pública) |
Inclui um registro para cada evento de leitura ou gravação em uma tabela ou caminho do Unity Catalog. |
|
Sim |
365 dias |
Regional |
Linhagem de colunas (pré-visualização pública) |
Inclui um registro para cada evento de leitura ou gravação em uma coluna do Unity Catalog (mas não inclui eventos que não têm uma fonte). |
|
Sim |
365 dias |
Regional |
Inclui registros de todo o uso faturável em sua conta. Cada registro de uso é um agregado por hora do uso faturável de um recurso. |
|
Sim |
365 dias |
Globais |
|
Um registro histórico de preços de SKU. Um registro é adicionado sempre que há uma alteração no preço de uma SKU. |
|
Não |
Ilimitadas |
Globais |
|
clusters (visualização pública) |
Tabela de dimensão de mudanças lentas que armazena todo o histórico das configurações de computação ao longo do tempo para qualquer cluster. |
|
Sim |
N/A |
Regional |
Cronograma do Node (pré-visualização pública) |
Captura as métricas de uso de seus recursos de computação para todas as finalidades e jobs. |
|
Sim |
30 dias |
Regional |
Tipos de nós (visualização pública) |
Captura os tipos de nós atualmente disponíveis com as informações básicas de hardware. |
|
Não |
N/A |
Regional |
SQL warehouse (visualização pública) |
Contém o histórico completo de configurações ao longo do tempo para qualquer SQL warehouse. |
|
Sim |
365 dias |
Regional |
Eventos do SQL warehouse (visualização pública) |
Captura eventos relacionados ao SQL warehouse. Por exemplo, iniciar, interromper, executar, escalar e reduzir. |
|
Sim |
365 dias |
Regional |
Empregos (Pré-visualização pública) |
Rastreia todos os trabalhos criados na conta. |
|
Sim |
365 dias |
Regional |
Job tarefa (visualização pública) |
Rastreia todas as tarefas de trabalho que são executadas na conta. |
|
Sim |
365 dias |
Regional |
Job cronograma de execução (visualização pública) |
Acompanha os horários de início e término das execuções de jobs. |
|
Sim |
365 dias |
Regional |
Job tarefa timeline (visualização pública) |
Monitora as horas de início e término e os recursos de computação utilizados para execuções de tarefas dos jobs. |
|
Sim |
365 dias |
Regional |
Eventos de funil do Marketplace (visualização pública) |
Inclui impressões do consumidor e dados de funil para suas listagens. |
|
Sim |
365 dias |
Regional |
Acesso à listagem do Marketplace (visualização pública) |
Inclui informações do consumidor para dados de solicitação concluídos ou eventos de obtenção de dados em suas listagens. |
|
Sim |
365 dias |
Regional |
Otimização preditiva (pré-visualização pública) |
Monitora o histórico de operação do recurso de otimização preditiva. |
|
Não |
180 dias |
Regional |
Eventos do Databricks Assistant (visualização pública) |
Rastreia mensagens de usuários enviadas ao Databricks Assistant. |
|
Não |
365 dias |
Regional |
Histórico de consultas (visualização pública) |
Captura registros de todas as consultas executadas em warehouses SQL. |
|
Sim |
90 dias |
Regional |
Eventos de sala limpa (prévia pública) |
Captura eventos relacionados a ambientes controlados. |
|
Sim |
365 dias |
Regional |
servindo modelo endpoint usage (Public Preview) |
Captura contagens de tokens para cada solicitação a um modelo de serviço endpoint e suas respostas. |
|
Sim |
90 dias |
Regional |
servindo modelo endpoint data (Public Preview) |
Uma tabela de dimensão de mudança lenta que armazena metadados para cada modelo externo servido em um modelo servindo endpoint. |
|
Sim |
365 dias |
Regional |
O uso faturável e as tabelas de preços são gratuitos. As tabelas na visualização pública também podem ser usadas gratuitamente durante a visualização, mas podem ser cobradas no futuro.
Observação
O senhor pode ver outras tabelas de sistema em sua conta além das listadas acima. Essas tabelas estão em Private Preview no momento e estão vazias por padrão. Se o senhor estiver interessado em usar qualquer uma dessas tabelas, entre em contato com a equipe de contas da Databricks.
Habilitar esquemas de tabela do sistema
Como as tabelas do sistema são regidas pelo Unity Catalog, você precisa ter pelo menos um workspace habilitado para Unity Catalog em sua account para habilitar e acessar as tabelas do sistema. As tabelas do sistema incluem dados de todo workspace em sua account, mas elas só podem ser acessadas de um workspace habilitado para Unity Catalog.
As tabelas do sistema são habilitadas no nível do esquema. Se você habilitar um esquema do sistema, habilitará todas as tabelas dentro desse esquema. Quando novos esquemas são lançados, um administrador de conta precisa habilitar o esquema manualmente.
As tabelas do sistema devem ser ativadas por um administrador da conta. Você pode ativar as tabelas do sistema usando a API SystemSchemas.
Observação
O esquema billing
é ativado por padrão. Outros esquemas devem ser habilitados manualmente.
Listar esquemas do sistema disponíveis
Use o comando curl a seguir para listar os esquemas do sistema disponíveis:
curl -v -X GET -H "Authorization: Bearer <PAT Token>" "https://<workspace>.cloud.databricks.com/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas"
Veja a seguir um exemplo de resultado 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 esquema do sistema está disponível, mas ainda não foi ativado.
state: EnableCompleted
: Você habilitou o esquema do sistema e ele está visível no Catalog Explorer.
Ativar um esquema do sistema
Use o comando curl a seguir para ativar um esquema do sistema:
curl -v -X PUT -H "Authorization: Bearer <PAT Token>" "https://<workspace>.databricks.com/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"
Se o esquema do sistema for devidamente ativado, será apresentado o código do resultado 200
.
Se você tentar reativar um esquema do sistema, será apresentado o seguinte: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists"
.
Conceder acesso às tabelas do sistema
O acesso às tabelas do sistema é regido pelo Unity Catalog. Nenhum usuário tem acesso a esses esquemas do sistema pelo site default. Para conceder acesso, um usuário que seja administrador do metastore e administrador do account deve conceder permissões USE
e SELECT
nos esquemas do sistema. Consulte gerenciar privilégios em Unity Catalog.
As tabelas do sistema são somente para leitura e não podem ser modificadas.
Observação
Se a sua conta tiver sido criada após 8 de março de 2023, talvez você não tenha um administrador da metastore por padrão. Para mais informações, consulte Configurar e gerenciar o Unity Catalog.
As tabelas do sistema contêm dados de todos os espaços de trabalho em sua conta?
As tabelas do sistema contêm dados operacionais de todos os espaços de trabalho em seu account implantados na mesma região cloud. As tabelas do sistema de faturamento contêm dados de todo o site account.
Embora as tabelas do sistema só possam ser acessadas por meio de um Unity Catalog workspace, as tabelas também incluem dados operacionais para o espaço de trabalho nãoUnity Catalog em seu account.
Onde os dados da tabela do sistema são armazenados?
Os dados da tabela do sistema do seu accountsão armazenados em um Databricks-hosted storage account localizado na mesma região do seu metastore. Os dados são compartilhados com o senhor de forma segura usando o Delta Sharing.
Cada tabela tem um período de retenção de dados gratuito. Para obter informações sobre a extensão do período de retenção, entre em contato com a equipe Databricks account .
Onde estão localizadas as tabelas do sistema no Catalog Explorer?
As tabelas do sistema em sua conta estão localizadas em um catálogo chamado system
, que está incluído em cada Unity Catalog metastore. No catálogo system
, você verá esquemas como access
e billing
que contêm as tabelas do sistema.
Considerações para tabelas de sistema de streaming
A Databricks usa o Delta Sharing para compartilhar dados da tabela do sistema com os clientes. Esteja ciente das seguintes considerações ao fazer streaming com o Delta Sharing:
Se você estiver usando streaming com tabelas do sistema, defina a opção
skipChangeCommits
comotrue
. Isso garante que o trabalho de streaming não seja interrompido por exclusões nas tabelas do sistema. Veja Ignorar atualizações e exclusões.Trigger.AvailableNow
não é compatível com o streaming de Delta Sharing. Ele será convertido emTrigger.Once
.
Se o senhor usar um acionador em seu trabalho de streaming e descobrir que ele não está atualizando a versão mais recente da tabela do sistema, a Databricks recomenda aumentar a frequência programada do trabalho.
Problemas conhecidos
Atualmente não há suporte para monitoramento em tempo real. Os dados são atualizados ao longo do dia. Se você não vir um registro de um evento recente, volte mais tarde.
Se o seu espaço de trabalho utiliza uma VPC gerenciada pelo cliente, você pode ter o acesso negado ao bucket do S3 onde os logs estão armazenados. Nesse caso, você precisa atualizar sua política de endpoint da VPC para permitir o acesso ao bucket do S3, em que os dados das tabelas do sistema da sua região estão armazenados. Para ter uma lista de nomes de buckets regionais, consulte a coluna Bucket de tabelas do sistema na tabela de endereços de bucket de armazenamento.
Os esquemas de sistema
system.operational_data
esystem.lineage
estão obsoletos e conterão tabelas vazias.O esquema de tabela do sistema
__internal_logging
é usado para oferecer suporte ao registro de carga útil usando tabelas de inferência. Esse esquema é visível para os administradores do account, mas não pode ser ativado e não deve ser usado para o fluxo de trabalho do cliente.