Vista SESSIONS_BY_USER

La vista INFORMATION_SCHEMA.SESSIONS_BY_USER contiene metadatos en tiempo real sobre las sesiones de BigQuery que creó el usuario actual en el proyecto actual.

Permisos necesarios

Para consultar la vista INFORMATION_SCHEMA.SESSIONS_BY_USER, necesitas el permiso bigquery.jobs.list de Identity and Access Management (IAM) para el proyecto. Cada uno de los siguientes roles predefinidos de IAM incluye el permiso requerido:

  • Lector del proyecto
  • Usuario de BigQuery

Para obtener más información sobre IAM de BigQuery, consulta Control de acceso con IAM.

Schema

Cuando consultas las vistas INFORMATION_SCHEMA.SESSIONS_BY_*, los resultados de la consulta contienen una fila para 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 Es la hora de creación de esta sesión (columna de partición). La partición se basa en la hora UTC de esta marca de tiempo.
expiration_time TIMESTAMP Es la hora de vencimiento de esta sesión (columna de partició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 la respuesta es sí, de lo contrario, FALSE.
last_modified_time TIMESTAMP Hora en la que se modificó la sesión por última vez (columna de partición). La partición se basa en la hora UTC de esta marca de tiempo.
principal_subject STRING (Columna de agrupamiento en clústeres): Identificador de principal del usuario que ejecutó el trabajo.
project_id STRING (Columna de agrupamiento en clústeres) ID del proyecto.
project_number INTEGER Es el número del proyecto.
session_id STRING ID de la sesión. Por ejemplo, bquxsession_1234.
user_email STRING Es la dirección de correo electrónico o la cuenta de servicio del usuario que ejecutó la sesión (columna de agrupamiento en clústeres).

Retención de datos

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

Permiso y sintaxis

Las consultas realizadas a esta vista deben incluir un calificador de región. Si no especificas un calificador regional, los metadatos se recuperan de todas las regiones. En la siguiente tabla, se explica el permiso de la región para esta vista:

Nombre de la vista Permiso del recurso Permiso de la región
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SESSIONS_BY_USER Sesiones creadas por el usuario actual en el proyecto especificado. REGION
Reemplaza lo siguiente:

  • Opcional: PROJECT_ID: el ID del proyecto de Google Cloud. 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, agrega el ID del proyecto con el siguiente formato:

`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.SESSIONS_BY_USER
Por ejemplo, `myproject`.`region-us`.INFORMATION_SCHEMA.SESSIONS_BY_USER.

En el siguiente ejemplo, se enumeran las sesiones que creó el usuario actual:

SELECT
  session_id,
  creation_time
FROM
  `region-us`.INFORMATION_SCHEMA.SESSIONS_BY_USER
WHERE
  creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY)
ORDER BY
  creation_time DESC;

Los resultados deberían verse así:

+-------------------------------------------------------------------------+
| session_id                                        | creation_time       |
+-------------------------------------------------------------------------+
| CgwKCmZhbGl1LXRlc3QQARokMGQ5YWWYzZmE0YjhkMDBm     | 2021-06-01 08:04:26 |
| CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZTczwZjA1NDc2 | 2021-05-31 22:43:02 |
+-------------------------------------------------------------------------+