Visualizzazione JOBS_TIMELINE_BY_USER

La visualizzazione INFORMATION_SCHEMA.JOBS_TIMELINE_BY_USER contiene dati quasi in tempo reale Metadati BigQuery per intervallo di tempo dei job inviati dal l'utente corrente nel progetto attuale. Questa visualizzazione contiene i job attualmente in esecuzione e completati.

Autorizzazioni obbligatorie

Per eseguire query sulla visualizzazione INFORMATION_SCHEMA.JOBS_TIMELINE_BY_USER, devi disporre dell'autorizzazione bigquery.jobs.list Identity and Access Management (IAM) per il progetto. Ciascuno dei seguenti ruoli IAM predefiniti include autorizzazione:

  • Visualizzatore progetto
  • Utente BigQuery

Per ulteriori informazioni sulle autorizzazioni BigQuery, consulta Controllo dell'accesso con IAM.

Schema

Quando esegui una query sulle visualizzazioni INFORMATION_SCHEMA.JOBS_TIMELINE_BY_*, i risultati della query contengono una riga per ogni secondo di esecuzione di ogni job BigQuery. Ogni periodo inizia con un intervallo di un secondo intero e dura esattamente un secondo.

La vista INFORMATION_SCHEMA.JOBS_TIMELINE_BY_* ha il seguente schema:

Nome colonna Tipo di dati Valore
period_start TIMESTAMP Ora di inizio di questo periodo.
period_slot_ms INTEGER Millisecondi slot consumati in questo periodo.
period_shuffle_ram_usage_ratio FLOAT Rapporto di utilizzo dello shuffling nel periodo di tempo selezionato.
project_id STRING (Colonna di clustering) ID del progetto.
project_number INTEGER Numero del progetto.
user_email STRING (Colonna clustering) Indirizzo email o account di servizio di l'utente che ha eseguito il job.
job_id STRING ID del job. Ad esempio, bquxjob_1234.
job_type STRING Il tipo di job. Può essere QUERY, LOAD, EXTRACT, COPY o null. Qualifica il tipo null indica un job interno, come un job di script la valutazione delle istruzioni o l'aggiornamento della vista materializzata.
statement_type STRING Il tipo di istruzione di query, se valido. Ad esempio: SELECT, INSERT, UPDATE o DELETE.
job_creation_time TIMESTAMP (Colonna Partitioning) Ora di creazione del job. Partizionamento si basa sull'ora UTC di questo timestamp.
job_start_time TIMESTAMP Ora di inizio del job.
job_end_time TIMESTAMP Ora di fine del job.
state STRING Stato in esecuzione del job al termine di questo periodo. Stati validi includono PENDING, RUNNING e DONE.
reservation_id STRING Nome della prenotazione principale assegnata a questo job alla fine di questo periodo, se applicabile.
edition STRING La versione associata alla prenotazione assegnata a questo job. Per ulteriori informazioni sulle versioni, consulta Introduzione alle versioni di BigQuery.
total_bytes_processed INTEGER Byte totali elaborati dal job.
error_result RECORD Dettagli dell'errore (se presenti) sotto forma di ErrorProto.
cache_hit BOOLEAN Se i risultati della query per questo job provengono da una cache.
period_estimated_runnable_units INTEGER Unità di lavoro che possono essere pianificate immediatamente in questo periodo. Gli slot aggiuntivi per queste unità di lavoro accelerano la query, a condizione che nessuna altra query nella prenotazione richieda slot aggiuntivi.

Conservazione dei dati

Questa visualizzazione contiene i job attualmente in esecuzione e la cronologia dei job degli ultimi 180 giorni.

Ambito e sintassi

Le query su questa visualizzazione devono includere un qualificatore regione. Se non specifichi un qualificatore regionale, i metadati vengono recuperati da tutte le regioni. La tabella seguente spiega la regione e l'ambito delle risorse per questo visualizza:

Nome vista Ambito risorsa Ambito della regione
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.JOBS_TIMELINE_BY_USER Job inviati dall'utente corrente nel progetto specificato. REGION
Sostituisci quanto segue:

  • Facoltativo: PROJECT_ID: l'ID del tuo progetto Google Cloud. Se non viene specificato, viene utilizzato il progetto predefinito.

Esempio

La seguente query mostra i millisecondi totali di slot consumati al secondo in base ai job inviati dall'utente corrente nel progetto designato:

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;

Il risultato è simile al seguente:

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