Monitora BI Engine
BigQuery BI Engine accelera BigQuery per gli scenari di BI utilizzando la cache della memoria e un'esecuzione più rapida. I dettagli sull'accelerazione possono essere monitorati utilizzando INFORMATION_SCHEMA e le metriche di Cloud Monitoring.
Cloud Monitoring
Puoi monitorare e configurare gli avvisi per BigQuery BI Engine con Cloud Monitoring. Per scoprire come creare una dashboard per le metriche di BI Engine, consulta Creare grafici.
Per BigQuery BI Engine sono disponibili le seguenti metriche:
Risorsa | Metrica | Dettagli |
---|---|---|
Progetto BigQuery | Byte totali della prenotazione | Capacità totale allocata a un progetto Google Cloud |
Progetto BigQuery | Byte utilizzati per le prenotazioni | Capacità totale utilizzata in un progetto Google Cloud |
Progetto BigQuery | Byte memorizzati nella cache delle tabelle principali di BI Engine | Utilizzo della cache per tabella. Questa metrica mostra le N tabelle principali per l'utilizzo dei report per regione. |
Statistiche sulle query per BI Engine
Questa sezione spiega come trovare le statistiche sulle query per monitorare, diagnosticare e risolvere i problemi di utilizzo di BI Engine.
Modalità di accelerazione di BI Engine
Con l'accelerazione di BI Engine abilitata, la query può essere eseguita in una di queste quattro modalità:
BI_ENGINE_DISABLED |
BI Engine ha disattivato l'accelerazione.
biEngineReasons specifica un motivo più dettagliato. La query è stata eseguita utilizzando il motore di esecuzione BigQuery. |
PARTIAL_INPUT |
Parte dell'input della query è stata accelerata utilizzando BI Engine. Come descritto in
Ottimizzazione e accelerazione delle query, un piano di query è generalmente suddiviso in più fasi di input. BI Engine supporta i tipi comuni di pattern di sottoquery che vengono in genere utilizzati nelle dashboard. Se la query è composta da più fasi di input, solo alcune delle quali rientrano nei casi d'uso supportati, BI Engine esegue le fasi non supportate utilizzando il normale motore BigQuery senza accelerazione. In questa situazione, BI Engine restituisce un codice di accelerazione PARTIAL e utilizza biEngineReasons per compilare il motivo per cui non vengono accelerate altre fasi di input. |
FULL_INPUT |
Tutte le fasi di input della query sono state accelerate utilizzando BI Engine. I dati memorizzati nella cache vengono riutilizzati nelle query e il calcolo che segue immediatamente la lettura dei dati viene accelerato. |
FULL_QUERY |
L'intera query è stata accelerata utilizzando BI Engine. |
Visualizzare le statistiche dei job dell'API BigQuery
Le statistiche dettagliate su BI Engine sono disponibili tramite l'API BigQuery.
Per recuperare le statistiche associate alle query accelerate di BI Engine, esegui il seguente comando dello strumento a riga di comando bq:
bq show --format=prettyjson -j job_id
Se il progetto è abilitato per l'accelerazione di BI Engine, l'output genera un nuovo campo, biEngineStatistics
. Ecco un report di lavoro di esempio:
"statistics": {
"creationTime": "1602175128902",
"endTime": "1602175130700",
"query": {
"biEngineStatistics": {
"biEngineMode": "DISABLED",
"biEngineReasons": [
{
"code": "UNSUPPORTED_SQL_TEXT",
"message": "Detected unsupported join type"
}
]
},
Per ulteriori informazioni sul campo BiEngineStatistics
, consulta
Riferimento attività.
Statistiche dello schema di informazioni di BigQuery
Le statistiche sull'accelerazione di BI Engine sono incluse nelle viste INFORMATION_SCHEMA.JOBS_BY_*
di BigQuery INFORMATION_SCHEMA
nella colonna bi_engine_statistics
.
Ad esempio, questa query restituisce il valore bi_engine_statistics
per tutti i job dei progetti attuali nelle ultime 24 ore:
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"
Utilizza il seguente formato per specificare la regionalità per project-id
, region
e views
nella visualizzazione INFORMATION_SCHEMA
:
`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.VIEW
Visualizzare i dettagli dello schema delle informazioni di Looker Studio
Puoi monitorare quali report e origini dati di Looker Studio vengono utilizzati da BigQuery visualizzando la visualizzazione INFORMATION_SCHEMA.JOBS
. Ogni
query di Looker Studio in BigQuery crea una voce
con le etichette report_id
e datasource_id
. Questi ID vengono visualizzati alla fine dell'URL di Looker Studio quando apri una pagina di report o di origine dati.
Ad esempio, un report con URL https://lookerstudio.google.com/navigation/reporting/my-report-id-123
ha un ID report "my-report-id-123"
.
Gli esempi riportati di seguito mostrano come visualizzare report e origini dati:
Trovare l'URL del report e dell'origine dati per ogni job BigQuery di 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;
Visualizzare i job prodotti utilizzando un report e un'origine dati
-- 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
L'accelerazione di BI Engine fa parte dell'elaborazione dei job BigQuery. Per ispezionare i job BigQuery per un progetto specifico, consulta la pagina Cloud Logging con un payload di protoPayload.serviceName="bigquery.googleapis.com"
.
Passaggi successivi
- Scopri di più su Cloud Monitoring.
- Scopri di più sui grafici di monitoraggio.
- Scopri di più sugli avvisi di Monitoring.
- Scopri di più su Cloud Logging.