Visualização de SESSIONS_BY_PROJECT
A visualização INFORMATION_SCHEMA.SESSIONS_BY_PROJECT
contém metadados
em tempo real sobre todas as sessões do BigQuery no projeto atual.
Permissões necessárias
Para consultar a visualização INFORMATION_SCHEMA.SESSIONS_BY_PROJECT
, é necessário ter a permissão bigquery.jobs.listAll
Identity and Access Management (IAM) do projeto.
Cada um dos seguintes papéis predefinidos do IAM inclui a
permissão necessária:
- Proprietário do projeto
- Administrador do BigQuery
Para mais informações sobre as permissões do BigQuery, consulte Controle de acesso com o IAM.
Esquema
Quando você consulta as visualizações INFORMATION_SCHEMA.SESSIONS_BY_*
, os resultados
da consulta contêm uma linha para cada sessão do BigQuery.
A visualização INFORMATION_SCHEMA.SESSIONS_BY_*
tem o seguinte esquema:
Nome da coluna | Tipo de dados | Valor |
---|---|---|
creation_time |
TIMESTAMP |
(Coluna de particionamento) Horário da criação da sessão. O particionamento é baseado no horário UTC desse carimbo de data/hora. |
expiration_time |
TIMESTAMP |
(Coluna de particionamento) Horário de expiração da sessão. O particionamento é baseado no horário UTC desse carimbo de data/hora. |
is_active |
BOOL |
A sessão ainda está ativa? TRUE se sim, caso contrário,
FALSE .
|
last_modified_time |
TIMESTAMP |
(Coluna de particionamento) Horário da última modificação da sessão. O particionamento é baseado no horário UTC desse carimbo de data/hora. |
principal_subject | STRING | (Coluna de clustering) Identificador principal do usuário que executou o job. |
project_id |
STRING |
(Coluna de clustering) ID do projeto. |
project_number |
INTEGER |
Número do projeto. |
session_id |
STRING |
ID da sessão. Por exemplo, bquxsession_1234 |
user_email |
STRING |
(Coluna de clustering) Endereço de e-mail ou conta de serviço do usuário que executou o sessão. |
Retenção de dados
Essa visualização contém as sessões em execução no momento e o histórico de sessões concluídos nos últimos 180 dias.
Escopo e sintaxe
As consultas nessa visualização precisam incluir um qualificador de região. Se você não especificar um qualificador regional, os metadados serão recuperados de todas as regiões. A tabela a seguir explica o escopo da região dessa visualização:
Nome da visualização | Escopo do recurso | Escopo da região |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT |
Nível do projeto | REGION |
- Opcional:
PROJECT_ID
: o ID do seu projeto do Google Cloud. Se não for especificado, o projeto padrão será usado.
REGION
: qualquer nome da região do conjunto de dados.
Por exemplo, region-us
.
Exemplo
Para executar a consulta em um projeto diferente do seu projeto padrão, inclua o ID do projeto no seguinte formato:
`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT. Por exemplo,
`myproject`.`region-us`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT
.
O exemplo a seguir lista todos os usuários ou contas de serviço que criaram sessões
para um determinado projeto no último dia:
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);
O resultado será semelhante ao seguinte:
+--------------+ | user | +--------------+ | abc@xyz.com | +--------------+ | def@xyz.com | +--------------+