Visualizzazione ASSEGNAZIONI

La visualizzazione INFORMATION_SCHEMA.ASSIGNMENTS contiene un elenco quasi in tempo reale di tutte le assegnazioni correnti all'interno del progetto di amministrazione. Ogni riga rappresenta un singolo compito corrente. Un compito corrente è in attesa o attivo e non è stato eliminato. Per ulteriori informazioni sulle prenotazioni, consulta la Introduzione alle prenotazioni.

Autorizzazione obbligatoria

Per eseguire query sulla visualizzazione INFORMATION_SCHEMA.ASSIGNMENTS, devi disporre dell'autorizzazione bigquery.reservationAssignments.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.ASSIGNMENTS ha lo schema seguente:

Nome colonna Tipo di dati Valore
ddl STRING L'istruzione DDL utilizzata per creare questa assegnazione.
project_id STRING ID del progetto di amministrazione.
project_number INTEGER Numero del progetto di amministrazione.
assignment_id STRING ID che identifica in modo univoco il compito.
reservation_name STRING Nome della prenotazione utilizzata dall'assegnazione.
job_type STRING Il tipo di job che può utilizzare la prenotazione. Può essere PIPELINE, QUERY, CONTINUOUS, ML_EXTERNAL o BACKGROUND.
assignee_id STRING ID che identifica in modo univoco la risorsa assegnataria.
assignee_number INTEGER Numero che identifica in modo univoco la risorsa assegnataria.
assignee_type STRING Tipo di risorsa assegnataria. Può essere organization, folder o project.

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 illustra l'ambito della regione per questa visualizzazione:

Nome vista Ambito risorsa Ambito regione
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.ASSIGNMENTS[_BY_PROJECT]
Livello progetto REGION
Sostituisci quanto segue:

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

  • REGION: qualsiasi nome della regione del set di dati. Ad esempio: `region-us`.

  • Esempio

    Per eseguire la query su un progetto diverso da quello predefinito, aggiungi l'ID progetto nel seguente formato:

    `PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.ASSIGNMENTS
    .

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto a cui hai assegnato le prenotazioni.
    • REGION_NAME: il nome della regione.

    Ad esempio, `myproject`.`region-us`.INFORMATION_SCHEMA.ASSIGNMENTS.

    L'esempio seguente recupera la prenotazione attualmente assegnata a un progetto e la sua capacità di slot. Queste informazioni sono utili per il debug del rendimento dei job confrontando l'utilizzo degli slot del progetto con la capacità degli slot della prenotazione assegnata al progetto.

    SELECT
      reservation.reservation_name,
      reservation.slot_capacity
    FROM
      `RESERVATION_ADMIN_PROJECT.region-REGION_NAME`.
      INFORMATION_SCHEMA.ASSIGNMENTS_BY_PROJECT assignment
    INNER JOIN
      `RESERVATION_ADMIN_PROJECT.region-REGION_NAME`.
      INFORMATION_SCHEMA.RESERVATIONS_BY_PROJECT AS reservation
    ON
      (assignment.reservation_name = reservation.reservation_name)
    WHERE
       assignment.assignee_id = "PROJECT_ID"
      AND job_type = "QUERY";