Monitorize o BI Engine
O BigQuery BI Engine acelera o BigQuery para cenários de BI através da cache de memória e de uma execução mais rápida. Pode monitorizar os detalhes da aceleração através de INFORMATION_SCHEMA e métricas do Cloud Monitoring.
Cloud Monitoring
Pode monitorizar e configurar alertas para o BigQuery BI Engine com o Cloud Monitoring. Para saber como criar um painel de controlo para métricas do BI Engine, consulte o artigo Criar gráficos.
As seguintes métricas são fornecidas para o BigQuery BI Engine:
Recurso | Métrica | Detalhes |
---|---|---|
Projeto do BigQuery | Total de bytes da reserva | Capacidade total atribuída a um Google Cloud projeto |
Projeto do BigQuery | Bytes usados da reserva | Capacidade total usada num Google Cloud projeto |
Projeto do BigQuery | BI Engine Top Tables Cached Bytes | Utilização da cache por tabela. Esta métrica apresenta as principais tabelas N por utilização de relatórios de regiões. |
Estatísticas de consultas para o BI Engine
Esta secção explica como encontrar estatísticas de consultas para ajudar a monitorizar, diagnosticar e resolver problemas de utilização do BI Engine.
Modos de aceleração do BI Engine
Com a aceleração do BI Engine ativada, a sua consulta pode ser executada num destes quatro modos:
BI_ENGINE_DISABLED |
O BI Engine desativou a aceleração.
biEngineReasons especifica um motivo mais detalhado. A consulta foi
executada através do motor de execução do BigQuery. |
PARTIAL_INPUT |
Parte da entrada da consulta foi acelerada através do BI Engine. Conforme
descrito em
Otimização e aceleração de consultas, um plano de consulta é geralmente dividido
em várias fases de entrada. O BI Engine suporta os tipos comuns de padrões de subconsultas que são normalmente usados na criação de painéis de controlo. Se a consulta consistir em várias fases de entrada, das quais apenas algumas se enquadram nos exemplos de utilização suportados, o BI Engine executa as fases não suportadas através do motor do BigQuery normal sem aceleração. Nesta situação, o BI Engine devolve um código de aceleração PARTIAL e usa biEngineReasons para preencher o motivo pelo qual não acelera outras fases de entrada. |
FULL_INPUT |
Todas as fases de entrada da consulta foram aceleradas através do BI Engine. Os dados em cache são reutilizados em várias consultas e a computação que se segue imediatamente após a leitura dos dados é acelerada. |
FULL_QUERY |
Toda a consulta foi acelerada através do BI Engine. |
Veja estatísticas de tarefas da API BigQuery
As estatísticas detalhadas sobre o BI Engine estão disponíveis através da API BigQuery.
Para obter as estatísticas associadas a consultas aceleradas pelo BI Engine, execute o seguinte comando da ferramenta de linhas de comando bq:
bq show --format=prettyjson -j job_id
Se o projeto estiver ativado para a aceleração do BI Engine, o resultado produz um novo campo, biEngineStatistics
. Segue-se um exemplo de um relatório de tarefa:
"statistics": {
"creationTime": "1602175128902",
"endTime": "1602175130700",
"query": {
"biEngineStatistics": {
"biEngineMode": "DISABLED",
"biEngineReasons": [
{
"code": "UNSUPPORTED_SQL_TEXT",
"message": "Detected unsupported join type"
}
]
},
Para mais informações sobre o campo BiEngineStatistics
, consulte o artigo
Referência da tarefa.
Estatísticas do esquema de informações do BigQuery
As estatísticas de aceleração do BI Engine estão incluídas nas visualizações do
BigQuery INFORMATION_SCHEMA
como parte das visualizações INFORMATION_SCHEMA.JOBS_BY_*
na coluna
bi_engine_statistics
.
Por exemplo, esta consulta devolve o bi_engine_statistics
para todas as tarefas dos projetos atuais nas últimas 24 horas:
SELECT
creation_time,
job_id,
bi_engine_statistics
FROM
`region-us`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
WHERE
creation_time >
TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY)
AND job_type = "QUERY"
Use o seguinte formato para especificar a
regionalidade para os campos
project-id
, region
e views
na vista INFORMATION_SCHEMA
:
`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.VIEW
Veja detalhes do esquema de informações do Looker Studio
Pode acompanhar os relatórios e as origens de dados do Looker Studio usados pelo BigQuery através da INFORMATION_SCHEMA.JOBS
vista. Cada consulta do Looker Studio no BigQuery cria uma entrada com as etiquetas report_id
e datasource_id
. Esses IDs aparecem no final do URL do Looker Studio quando abre um relatório ou uma página de origem de dados.
Por exemplo, um relatório com o URL
https://lookerstudio.google.com/navigation/reporting/my-report-id-123
tem um ID do relatório de "my-report-id-123"
.
Os exemplos seguintes mostram como ver relatórios e origens de dados:
Encontre o URL do relatório e da origem de dados para cada tarefa do BigQuery do Looker Studio
-- Standard labels used by Looker Studio. DECLARE requestor_key STRING DEFAULT 'requestor'; DECLARE requestor_value STRING DEFAULT 'looker_studio'; CREATE TEMP FUNCTION GetLabel(labels ANY TYPE, label_key STRING) AS ( (SELECT l.value FROM UNNEST(labels) l WHERE l.key = label_key) ); CREATE TEMP FUNCTION GetDatasourceUrl(labels ANY TYPE) AS ( CONCAT("https://lookerstudio.google.com/datasources/", GetLabel(labels, 'looker_studio_datasource_id')) ); CREATE TEMP FUNCTION GetReportUrl(labels ANY TYPE) AS ( CONCAT("https://lookerstudio.google.com/reporting/", GetLabel(labels, 'looker_studio_report_id')) ); SELECT job_id, GetDatasourceUrl(labels) AS datasource_url, GetReportUrl(labels) AS report_url, FROM `region-us`.INFORMATION_SCHEMA.JOBS jobs WHERE creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY) AND GetLabel(labels, requestor_key) = requestor_value LIMIT 100;
Veja tarefas produzidas através da utilização de um relatório e uma origem de dados
-- Specify report and data source id, which can be found at the end of Looker Studio URLs. DECLARE user_report_id STRING DEFAULT '*report id here*'; DECLARE user_datasource_id STRING DEFAULT '*datasource id here*'; -- Looker Studio labels for BigQuery. DECLARE requestor_key STRING DEFAULT 'requestor'; DECLARE requestor_value STRING DEFAULT 'looker_studio'; DECLARE datasource_key STRING DEFAULT 'looker_studio_datasource_id'; DECLARE report_key STRING DEFAULT 'looker_studio_report_id'; CREATE TEMP FUNCTION GetLabel(labels ANY TYPE, label_key STRING) AS ( (SELECT l.value FROM UNNEST(labels) l WHERE l.key = label_key) ); SELECT creation_time, job_id, FROM `region-us`.INFORMATION_SCHEMA.JOBS jobs WHERE creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY) AND GetLabel(labels, requestor_key) = requestor_value AND GetLabel(labels, datasource_key) = user_datasource_id AND GetLabel(labels, report_key) = user_report_id ORDER BY 1 LIMIT 100;
Cloud Logging
A aceleração do BI Engine faz parte do processamento de tarefas do BigQuery. Para inspecionar tarefas do BigQuery para um projeto específico,
consulte a página do Cloud Logging com um payload de
protoPayload.serviceName="bigquery.googleapis.com"
.
O que se segue?
- Saiba mais sobre o Cloud Monitoring.
- Saiba mais sobre a monitorização de gráficos.
- Saiba mais sobre a monitorização de alertas.
- Saiba mais sobre o Cloud Logging.