Visualização JOBS_TIMELINE_BY_USER
A visualização INFORMATION_SCHEMA.JOBS_TIMELINE_BY_USER
contém metadados do BigQuery quase em tempo real por fração de tempo dos jobs enviados pelo usuário atual no projeto atual. Essa visualização contém
jobs em execução e concluídos.
Permissões necessárias
Para consultar a visualização INFORMATION_SCHEMA.JOBS_TIMELINE_BY_USER
, você precisa da
permissão bigquery.jobs.list
Identity and Access Management (IAM) do projeto.
Cada um dos seguintes papéis predefinidos do IAM inclui a
permissão necessária:
- Visualizador do projeto
- Usuário do BigQuery
Para mais informações sobre as permissões do BigQuery, consulte Controle de acesso com o IAM.
Esquema
Ao consultar as visualizações INFORMATION_SCHEMA.JOBS_TIMELINE_BY_*
, os resultados da
consulta terão uma linha para cada segundo de execução de cada job
do BigQuery. Cada período começa em um intervalo de segundo inteiro e
dura exatamente um segundo.
A visualização INFORMATION_SCHEMA.JOBS_TIMELINE_BY_*
tem o seguinte esquema:
Nome da coluna | Tipo de dados | Valor |
---|---|---|
period_start |
TIMESTAMP |
Horário de início deste período. |
period_slot_ms |
INTEGER |
Milissegundos de slot consumidos neste período. |
project_id |
STRING |
(Coluna de clustering) ID do projeto. |
project_number |
INTEGER |
Número do projeto. |
user_email |
STRING |
(Coluna de clustering) endereço de e-mail ou conta de serviço do usuário que executou o job. |
job_id |
STRING |
ID do job. Por exemplo, bquxjob_1234 . |
job_type |
STRING |
O tipo de job. Pode ser QUERY , LOAD ,
EXTRACT , COPY , ou null . O tipo
de job null indica um job interno, como avaliação da instrução do
job de script ou atualização da visualização materializada. |
statement_type |
STRING |
O tipo de instrução de consulta, se for válido. Por exemplo,
SELECT , INSERT , UPDATE , ou
DELETE . |
priority |
STRING |
A prioridade deste job. Os valores válidos incluem INTERACTIVE
e BATCH . |
parent_job_id |
STRING |
ID do job pai (se houver). |
job_creation_time |
TIMESTAMP |
(Coluna de particionamento) horário da criação do job. O particionamento é baseado no horário UTC desse carimbo de data/hora. |
job_start_time |
TIMESTAMP |
Horário de início deste job. |
job_end_time |
TIMESTAMP |
Horário de término deste job. |
state |
STRING |
Estado em execução do job no final deste período. Os estados válidos incluem PENDING , RUNNING , e DONE . |
reservation_id |
STRING |
Nome da reserva principal atribuída a este job no final deste período, se aplicável. |
edition |
STRING |
A edição associada à reserva atribuída a este job. Para mais informações sobre edições, consulte Introdução às edições do BigQuery. |
total_bytes_billed |
INTEGER |
Se o projeto estiver configurado para usar preços sob demanda, então esse campo conterá o total de bytes cobrados pelo job. Se o projeto estiver configurado para usar preços fixos, então você não será cobrado por bytes, e esse campo será apenas informativo. |
total_bytes_processed |
INTEGER |
Total de bytes processados pelo job. |
error_result |
RECORD |
Detalhes do erro (se houver) como um
ErrorProto.
. |
cache_hit |
BOOLEAN |
Se os resultados da consulta deste job eram de um cache. |
period_shuffle_ram_usage_ratio |
FLOAT |
Proporção de uso do embaralhamento no período selecionado. |
period_estimated_runnable_units |
INTEGER |
Unidades de trabalho que podem ser programadas imediatamente nesse período. Os slots adicionais para essas unidades de trabalho aceleram a consulta, contanto que nenhuma outra consulta na reserva precise de slots adicionais. |
transaction_id |
STRING |
ID da transação em que este job foi executado, se houver. (Visualização) |
Retenção de dados
Essa visualização contém os jobs em execução e o histórico dos últimos 180 dias.
Escopo e sintaxe
As consultas nessa visualização precisam incluir um qualificador de região. Se você não especificar um qualificador regional, os metadados serão recuperados de todas as regiões. A tabela a seguir explica os escopos de região e recurso dessa visualização:
Nome da visualização | Escopo do recurso | Escopo da região |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.JOBS_TIMELINE_BY_USER |
Jobs enviados pelo usuário atual no projeto especificado. | REGION |
Opcional: PROJECT_ID
: o ID do seu
projeto do Google Cloud. Se não for especificado, o projeto padrão será usado.
REGION
: qualquer nome da região do conjunto de dados.
Por exemplo, `region-us`
.
Exemplo
A consulta a seguir exibe o total de milissegundos de slot consumidos a cada segundo por jobs enviados pelo usuário atual no projeto designado:
SELECT period_start, SUM(period_slot_ms) AS total_period_slot_ms FROM `region-us`.INFORMATION_SCHEMA.JOBS_TIMELINE_BY_USER GROUP BY period_start ORDER BY period_start DESC;
O resultado será semelhante ao seguinte:
+---------------------------+---------------------------------+ | period_start | total_period_slot_ms | +---------------------------+---------------------------------+ | 2019-10-10 00:00:04 UTC | 118639 | | 2019-10-10 00:00:03 UTC | 251353 | | 2019-10-10 00:00:02 UTC | 1074064 | | 2019-10-10 00:00:01 UTC | 1124868 | | 2019-10-10 00:00:00 UTC | 1113961 | +---------------------------+---------------------------------+