Vista SESSIONS_BY_PROJECT

La vista INFORMATION_SCHEMA.SESSIONS_BY_PROJECT contiene metadatos en tiempo real sobre todas las sesiones de BigQuery del proyecto actual.

Permisos obligatorios

Para consultar la vista INFORMATION_SCHEMA.SESSIONS_BY_PROJECT, necesita el permiso de gestión de identidades y accesos (IAM) bigquery.jobs.listAll del proyecto. Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye el permiso necesario:

  • Propietario del proyecto
  • Administrador de BigQuery

Para obtener más información sobre los permisos de BigQuery, consulta Control de acceso con gestión de identidades y accesos.

Esquema

Cuando consultas las vistas INFORMATION_SCHEMA.SESSIONS_BY_*, los resultados de la consulta contienen una fila por cada sesión de BigQuery.

La vista INFORMATION_SCHEMA.SESSIONS_BY_* tiene el siguiente esquema:

Nombre de la columna Tipo de datos Valor
creation_time TIMESTAMP (Columna de partición) Hora de creación de esta sesión. La partición se basa en la hora UTC de esta marca de tiempo.
expiration_time TIMESTAMP (Columna de partición) Hora de vencimiento de esta sesión. La partición se basa en la hora UTC de esta marca de tiempo.
is_active BOOL ¿La sesión sigue activa? TRUE si es así; de lo contrario, FALSE.
last_modified_time TIMESTAMP Columna de partición: hora en la que se modificó la sesión por última vez. La partición se basa en la hora UTC de esta marca de tiempo.
project_id STRING (Columna de clustering) ID del proyecto.
project_number INTEGER Número del proyecto.
session_id STRING ID de la sesión. Por ejemplo, bquxsession_1234.
user_email STRING Columna de clustering: dirección de correo o cuenta de servicio del usuario que ha ejecutado la sesión.

Conservación de datos

Esta vista contiene las sesiones que se están ejecutando y el historial de las sesiones que se han completado en los últimos 180 días.

Ámbito y sintaxis

Las consultas en esta vista deben incluir un calificador de región. Si no especifica un calificador regional, los metadatos se recuperan de todas las regiones. En la siguiente tabla se explica el ámbito de la región de esta vista:

Nombre de la vista Ámbito de los recursos Ámbito de la región
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT Nivel de proyecto REGION
Sustituye lo siguiente:
  • Opcional: PROJECT_ID: el ID de tu Google Cloud proyecto. Si no se especifica, se usa el proyecto predeterminado.
  • REGION: cualquier nombre de región del conjunto de datos. Por ejemplo, `region-us`.

Ejemplo

Para ejecutar la consulta en un proyecto que no sea el predeterminado, añade el ID del proyecto con el siguiente formato:

`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT
Por ejemplo, `myproject`.`region-us`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT. En el siguiente ejemplo se muestra una lista de todos los usuarios o cuentas de servicio que han creado sesiones en un proyecto concreto durante el último día:

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

El resultado es similar al siguiente:

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