Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

PRENOTA CONTINUA

La vista INFORMATION_SCHEMA.RESERVATIONS contiene un elenco di tutte le prenotazioni correnti all'interno del progetto di amministrazione. Ogni riga rappresenta una singola prenotazione attuale. Una prenotazione attuale è una prenotazione che non è stata eliminata. Per ulteriori informazioni sulla prenotazione, consulta Introduzione alle prenotazioni.

Autorizzazione obbligatoria

Per eseguire query sulla vista INFORMATION_SCHEMA.RESERVATIONS è necessaria l'autorizzazione bigquery.reservations.list Identity and Access Management (IAM) per il progetto. Ciascuno dei seguenti ruoli IAM predefiniti include l'autorizzazione obbligatoria:

  • roles/bigquery.resourceAdmin
  • roles/bigquery.resourceEditor
  • roles/bigquery.resourceViewer
  • roles/bigquery.user
  • roles/bigquery.admin

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

Schema

La vista INFORMATION_SCHEMA.RESERVATIONS ha il seguente schema:

Nome colonna Tipo di dati Valore
ddl STRING L'istruzione DDL utilizzata per creare questa prenotazione.
project_id STRING ID del progetto di amministrazione.
project_number INTEGER Numero del progetto di amministrazione.
reservation_name STRING Nome prenotazione fornito dall'utente.
ignore_idle_slots BOOL Se il valore è false, qualsiasi query che utilizza questa prenotazione può utilizzare slot inattivi inutilizzati di altri impegni di capacità.
slot_capacity INTEGER Capacità slot associata alla prenotazione.

Ambito e sintassi

Le query rispetto a questa visualizzazione devono includere un qualificatore per area geografica. Se non specifichi un qualificatore regionale, i metadati vengono recuperati da tutte le aree geografiche. La tabella seguente illustra l'ambito della regione per questa visualizzazione:

Nome visualizzazione Ambito delle risorse Ambito per area geografica
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.RESERVATIONS[_BY_PROJECT] A livello di progetto REGION
Sostituisci quanto segue:

Unire tra le visualizzazioni delle prenotazioni e le visualizzazioni delle offerte di lavoro

Le visualizzazioni del lavoro contengono la colonna reservation_id. Se il tuo job è stato eseguito in un progetto a cui è stata assegnata una prenotazione, reservation_id segue questo formato: reservation-admin-project:reservation-location.reservation-name.

Per unire le viste delle prenotazioni e quelle delle offerte di lavoro, puoi scegliere di partecipare tra la colonna delle visualizzazioni delle offerte di lavoro reservation_id e le colonne delle visualizzazioni delle prenotazioni project_id e reservation_name. L'esempio seguente mostra un esempio di utilizzo della clausola JOIN tra la prenotazione e le visualizzazioni del job.

Esempio

L'esempio seguente mostra l'utilizzo di slot, la capacità dello slot e la prenotazione assegnata per un progetto con un'assegnazione di prenotazione, nell'ultima ora. L'utilizzo dello slot viene espresso in unità di slot al secondo (secondo).

WITH
  job_data AS (
  SELECT
    job.period_start,
    job.reservation_id,
    job.period_slot_ms,
    job.job_id,
    job.job_type
  FROM
    `my-project.region-us`.INFORMATION_SCHEMA.JOBS_TIMELINE AS job
  WHERE
    job.period_start > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR))
SELECT
  reservation.reservation_name AS reservation_name,
  job.period_start,
  reservation.slot_capacity,
  job.period_slot_ms,
  job.job_id,
  job.job_type
FROM
  job_data AS job
INNER JOIN
  `reservation-admin-project.region-us`.INFORMATION_SCHEMA.RESERVATIONS AS reservation
ON
  (job.reservation_id = CONCAT(reservation.project_id, ":", "US", ".", reservation.reservation_name));

L'output è simile al seguente:

+------------------+---------------------+---------------+----------------+------------------+----------+
| reservation_name |    period_start     | slot_capacity | period_slot_ms |           job_id | job_type |
+------------------+---------------------+---------------+----------------+------------------+----------+
| my_reservation   | 2021-04-30 17:30:54 |           100 |          11131 | bquxjob_66707... | QUERY    |
| my_reservation   | 2021-04-30 17:30:55 |           100 |          49978 | bquxjob_66707... | QUERY    |
| my_reservation   | 2021-04-30 17:30:56 |           100 |           9038 | bquxjob_66707... | QUERY    |
| my_reservation   | 2021-04-30 17:30:57 |           100 |          17237 | bquxjob_66707... | QUERY    |

Questa query utilizza la vista RESERVATIONS per ottenere informazioni sulla prenotazione. Se le prenotazioni sono cambiate nell'ultima ora, la colonna reservation_slot_capacity potrebbe non essere accurata.

La query unisce RESERVATIONS a JOBS_TIMELINE per associare i cicli di lavoro alle informazioni sulla prenotazione.