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 |
Facultatif : PROJECT_ID
: ID de votre projet Google Cloud. Si non spécifié, le projet par défaut est utilisé.
REGION
: tout nom de région d'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
`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 | +--------------+