Vue SESSIONS_BY_PROJECT

La vue INFORMATION_SCHEMA.SESSIONS_BY_PROJECT contient des métadonnées en temps réel sur toutes les sessions BigQuery du projet en cours.

Autorisations requises

Pour interroger la vue INFORMATION_SCHEMA.SESSIONS_BY_PROJECT, vous devez disposer de l'autorisation IAM (Identity and Access Management) bigquery.jobs.listAll pour le projet. Chacun des rôles IAM prédéfinis suivants inclut l'autorisation requise:

  • Propriétaire du projet
  • BigQuery Admin

Pour plus d'informations sur les autorisations BigQuery, consultez la page Contrôle des accès avec IAM.

Schéma

Lorsque vous interrogez les vues INFORMATION_SCHEMA.SESSIONS_BY_*, les résultats de requête contiennent une ligne pour chaque session BigQuery.

La vue INFORMATION_SCHEMA.SESSIONS_BY_* présente le schéma suivant :

Nom de la colonne Type de données Valeur
creation_time TIMESTAMP (Colonne de partitionnement) Heure de création de la session. Le partitionnement est basé sur l'heure UTC de l'horodatage.
expiration_time TIMESTAMP (Colonne de partitionnement) Date d'expiration de la session Le partitionnement est basé sur l'heure UTC de l'horodatage.
is_active BOOL La session est-elle toujours active ? TRUE si oui, FALSE dans le cas contraire.
last_modified_time TIMESTAMP (Colonne de partitionnement) Heure de la dernière modification de la session. Le partitionnement est basé sur l'heure UTC de l'horodatage.
project_id STRING (Colonne de clustering) ID du projet.
project_number INTEGER Numéro du projet
session_id STRING ID de la session. Par exemple, bquxsession_1234.
user_email STRING (Colonne de mise en cluster) Adresse e-mail ou compte de service de l'utilisateur ayant exécuté la session.

Conservation des données

Cette vue contient les sessions en cours d'exécution et l'historique des sessions terminées au cours des 180 derniers jours.

Champ d'application et syntaxe

Les requêtes exécutées sur cette vue doivent inclure un qualificatif de région. Si vous ne spécifiez pas de qualificatif de région, les métadonnées sont extraites de toutes les régions. Le tableau suivant explique le champ d'application de la région pour cette vue :

Nom de la vue Champ d'application de la ressource Champ d'application de la région
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT Niveau Projet REGION
Remplacez les éléments suivants :

  • Facultatif : PROJECT_ID : ID de votre projet Google Cloud. Si non spécifié, le projet par défaut est utilisé.
 + REGION : nom de la région de l'ensemble de données. Par exemple, region-us.

Exemple

Pour exécuter la requête sur un projet autre que celui par défaut, ajoutez l'ID du projet en respectant le format suivant :

`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT
Par exemple, `myproject`.`region-us`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT. Dans l'exemple suivant, on répertorie tous les utilisateurs ou comptes de service qui ont créé des sessions pour un projet donné au cours des dernières 24 heures :

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);

Le résultat ressemble à ce qui suit :

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