Visualizzazione SESSIONS_BY_PROJECT

La vista INFORMATION_SCHEMA.SESSIONS_BY_PROJECT contiene metadati in tempo reale relativi a tutte le sessioni BigQuery nel progetto attuale.

Autorizzazioni obbligatorie

Per eseguire una query sulla vista INFORMATION_SCHEMA.SESSIONS_BY_PROJECT, devi disporre dell'autorizzazione bigquery.jobs.listAll Identity and Access Management (IAM) per il progetto. Ciascuno dei seguenti ruoli IAM predefiniti include l'autorizzazione richiesta:

  • Proprietario progetto
  • Amministratore BigQuery

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

Schema

Quando esegui una query sulle viste INFORMATION_SCHEMA.SESSIONS_BY_*, i risultati della query contengono una riga per ogni sessione BigQuery.

La vista INFORMATION_SCHEMA.SESSIONS_BY_* ha il seguente schema:

Nome colonna Tipo di dati Valore
creation_time TIMESTAMP (Colonna di partizionamento) Data/ora di creazione della sessione. Il partizionamento è basato sull'ora UTC di questo timestamp.
expiration_time TIMESTAMP (Colonna di partizionamento) Data/ora di scadenza di questa sessione. Il partizionamento è basato sull'ora UTC di questo timestamp.
is_active BOOL La sessione è ancora attiva? TRUE se sì, altrimenti FALSE.
last_modified_time TIMESTAMP (Colonna di partizionamento) Data/ora dell'ultima modifica della sessione. Il partizionamento è basato sull'ora UTC di questo timestamp.
principal_subject STRINGA (Colonna di clustering) Identificatore principale dell'utente che ha eseguito il job.
project_id STRING (Colonna di clustering) ID del progetto.
project_number INTEGER Numero del progetto.
session_id STRING ID della sessione. Ad esempio, bquxsession_1234.
user_email STRING (Colonna Clustering) Indirizzo email o account di servizio dell'utente che ha eseguito la sessione.

Conservazione dei dati

Questa visualizzazione contiene le sessioni attualmente in esecuzione e la cronologia delle sessioni completate negli ultimi 180 giorni.

Ambito e sintassi

Le query relative a questa vista devono includere un qualificatore regione. Se non specifichi un qualificatore regionale, i metadati vengono recuperati da tutte le regioni. La tabella seguente spiega l'ambito della regione per questa visualizzazione:

Nome visualizzazione Ambito risorsa Ambito regione
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT A livello di progetto REGION
Sostituisci quanto segue:

  • (Facoltativo) PROJECT_ID: l'ID del 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.SESSIONS_BY_PROJECT
Ad esempio, `myproject`.`region-us`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT. L'esempio seguente elenca tutti gli utenti o gli account di servizio che hanno creato sessioni per un determinato progetto nell'ultimo giorno:

SELECT
  DISTINCT(user_email) AS user
FROM
  `region-us`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT
WHERE
  is_active = true
  AND creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY);

Il risultato è simile al seguente:

+--------------+
| user         |
+--------------+
| abc@xyz.com  |
+--------------+
| def@xyz.com  |
+--------------+