Ansicht SESSIONS_BY_PROJECT
Die Ansicht INFORMATION_SCHEMA.SESSIONS_BY_PROJECT enthält Echtzeit-Metadaten zu allen BigQuery-Sitzungen im aktuellen Projekt.
Erforderliche Berechtigungen
Zum Abfragen der INFORMATION_SCHEMA.SESSIONS_BY_PROJECT-Ansicht benötigen Sie die IAM-Berechtigung (Identity and Access Management) bigquery.jobs.listAll für das Projekt.
Jede der folgenden vordefinierten IAM-Rollen enthält die erforderliche Berechtigung:
- Projektinhaber
- BigQuery-Administrator
Weitere Informationen zu BigQuery-Berechtigungen finden Sie unter Zugriffssteuerung mit IAM.
Schema
Wenn Sie die Ansichten des Typs INFORMATION_SCHEMA.SESSIONS_BY_* abfragen, wird in den Abfrageergebnisse jede BigQuery-Sitzung in einer eigenen Zeile dargestellt.
Die Ansicht INFORMATION_SCHEMA.SESSIONS_BY_* hat das folgende Schema:
| Spaltenname | Datentyp | Wert |
|---|---|---|
creation_time |
TIMESTAMP |
(Partitionierungsspalte) Erstellungszeit dieser Sitzung. Die Partitionierung basiert auf der UTC-Zeit dieses Zeitstempels. |
expiration_time |
TIMESTAMP |
(Partitionierungsspalte) Ablaufzeit dieser Sitzung. Die Partitionierung basiert auf der UTC-Zeit dieses Zeitstempels. |
is_active |
BOOL |
Ist die Sitzung noch aktiv? TRUE wenn ja, andernfalls FALSE.
|
last_modified_time |
TIMESTAMP |
(Partitionierungsspalte) Zeit, zu der die Sitzung zuletzt geändert wurde. Die Partitionierung basiert auf der UTC-Zeit dieses Zeitstempels. |
project_id |
STRING |
(Clustering-Spalte) ID des Projekts. |
project_number |
INTEGER |
Nummer des Projekts. |
session_id |
STRING |
ID der Sitzung. Beispiel: bquxsession_1234. |
user_email |
STRING |
(Clustering-Spalte) E-Mail-Adresse oder Dienstkonto des Nutzers, der die Sitzung ausgeführt hat. |
Aus Stabilitätsgründen empfehlen wir, Spalten in Ihren Informationsschema-Abfragen explizit aufzulisten, anstatt ein Platzhalterzeichen (SELECT *) zu verwenden. So wird verhindert, dass Abfragen fehlschlagen, wenn sich das zugrunde liegende Schema ändert.
Datenaufbewahrung
Diese Ansicht enthält derzeit ausgeführte Sitzungen und den Verlauf der Sitzungen, die in den letzten 180 Tagen abgeschlossen wurden.
Bereich und Syntax
Für Abfragen dieser Ansicht muss ein Regions-Qualifier verwendet werden. Wenn Sie keinen regionalen Qualifier angeben, werden Metadaten aus allen Regionen abgerufen. In der folgenden Tabelle wird der Regionsbereich für diese Ansicht erläutert:
| Ansichtsname | Ressourcenbereich | Regionsbereich |
|---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT |
Projektebene | REGION |
-
Optional:
PROJECT_ID: die ID Ihres Google Cloud -Projekts. Wenn keine Angabe erfolgt, wird das Standardprojekt verwendet. -
REGION: ist ein beliebiger Dataset-Regionsname. Beispiel:`region-us`
Beispiel
Wenn Sie die Abfrage für ein anderes Projekt als Ihr Standardprojekt ausführen möchten, fügen Sie die Projekt-ID im folgenden Format hinzu:
`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT
`myproject`.`region-us`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT.
Im folgenden Beispiel werden alle Nutzer oder Dienstkonten aufgelistet, die innerhalb des letzten Tages Sitzungen für ein bestimmtes Projekt erstellt haben:
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);
Das Ergebnis sieht etwa so aus:
+--------------+ | user | +--------------+ | abc@xyz.com | +--------------+ | def@xyz.com | +--------------+