Supervisa BI Engine

BigQuery BI Engine funciona con los servicios de Google Cloud para ayudar a supervisar y solucionar problemas del uso de BI Engine. Looker Studio con aceleración de BigQuery BI Engine es completamente compatible con la supervisión de BigQuery, incluidos INFORMATION_SCHEMA, el gráfico de ejecución y Métricas de Cloud Monitoring

Cloud Monitoring

BigQuery BI Engine se integra a Cloud Monitoring para que puedas supervisar el uso de BI Engine agregado en conjunto y configurar alertas. Para obtener información sobre el uso de Monitoring para crear paneles para las métricas de BI Engine, consulta Crear gráficos en la documentación de Monitoring.

Las siguientes métricas se proporcionan para BigQuery BI Engine:

Recurso Métrica Detalles
Proyecto de BigQuery Bytes totales de la reserva Capacidad total asignada a un proyecto de Google Cloud
Proyecto de BigQuery Bytes de reserva usados Capacidad total usada en un proyecto de Google Cloud
Proyecto de BigQuery Bytes almacenados en caché de las tablas principales de BI Engine Uso de caché por tabla. Esta métrica muestra el uso de los informes de N tablas por región principales.

Puedes usar Cloud Monitoring para ver el tráfico de las fuentes de datos de Looker Studio que BI Engine almacenó en caché. Para obtener una lista completa de las métricas de Google Cloud disponibles, consulta Métricas de Google Cloud.

La integración nativa de BigQuery para Looker Studio no proporciona métricas por modelo. En su lugar, se exponen los IDs de la fuente de datos y de los informes en las tablas INFORMATION_SCHEMA con la supervisión de la API de BigQuery.

Estadísticas de consultas para BI Engine

En esta sección, se explica cómo encontrar estadísticas de consultas para ayudar a supervisar, diagnosticar y solucionar problemas del uso de BI Engine.

Modos de aceleración de BI Engine

Con la aceleración de BI Engine habilitada, tu consulta puede ejecutarse en cualquiera de estos cuatro modos:

BI_ENGINE_DISABLED
BI Engine inhabilitó la aceleración. biEngineReasons especifica un motivo más detallado. La consulta se ejecutó con el motor de ejecución de BigQuery.
PARTIAL_INPUT
Parte de la entrada de la consulta se aceleró mediante BI Engine. Como se describe en Optimización y aceleración de consultas, un plan de consultas suele dividirse en varias etapas de entrada. BI Engine admite los tipos comunes de patrones de subconsulta que se suelen usar en los paneles. Si la consulta consta de varias etapas de entrada, de las cuales solo algunas se incluyen en los casos de uso compatibles, BI Engine ejecuta las etapas no compatibles con el motor de BigQuery normal sin aceleración. En esta situación, BI Engine muestra un código de aceleración PARTIAL y usa biEngineReasons para propagar el motivo por el que no se aceleran otras etapas de entrada.
 FULL_INPUT
 
Todas las etapas de entrada de la consulta se aceleraron mediante BI Engine.
 FULL_QUERY
 
Toda la consulta se aceleró mediante BI Engine.

Visualiza las estadísticas de los trabajos de la API de BigQuery

Las estadísticas detalladas en BI Engine están disponibles a través de la API de BigQuery.

Para recuperar las estadísticas asociadas con las consultas aceleradas mediante BI Engine, ejecuta el siguiente comando de la herramienta de línea de comandos de bq:

bq show --format=prettyjson -j job_id

Si el proyecto está habilitado para la aceleración de BI Engine, el resultado produce un nuevo campo, biEngineStatistics. A continuación, se muestra un informe de trabajo de muestra:

 "statistics": {
    "creationTime": "1602175128902",
    "endTime": "1602175130700",
    "query": {
      "biEngineStatistics": {
        "biEngineMode": "DISABLED",
        "biEngineReasons": [
          {
            "code": "UNSUPPORTED_SQL_TEXT",
            "message": "Detected unsupported join type"
          }
        ]
      },

Para obtener más información sobre el campo BiEngineStatistics, consulta la referencia de trabajos.

Estadísticas de INFORMATION_SCHEMA de BigQuery

Las estadísticas de aceleración de BI Engine se incluyen en las vistas INFORMATION_SCHEMA de BigQuery como parte de las vistas INFORMATION_SCHEMA.JOBS_BY_* en la columna bi_engine_statistics. Por ejemplo, esta consulta muestra el bi_engine_statistics de todos los trabajos de los proyectos actuales en las últimas 24 horas:

SELECT
  creation_time,
  job_id,
  bi_engine_statistics
FROM
  `region-us`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
WHERE
  creation_time BETWEEN TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY)
  AND CURRENT_TIMESTAMP()
  AND job_type = "QUERY"

Usa el siguiente formato a fin de especificar la regionalidad para project-id, region y views en la vista INFORMATION_SCHEMA:

`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.VIEW

Visualiza los detalles del esquema de información de Looker Studio

Para realizar un seguimiento de los informes y las fuentes de datos de Looker Studio que usa BigQuery, consulta la vista INFORMATION_SCHEMA.JOBS. Cuando la integración nativa de BigQuery está habilitada, cada consulta de Looker Studio crea una entrada con las etiquetas report_id y datasource_id. Esos ID aparecen al final de la URL de Looker Studio cuando se abre una página de informe o fuente de datos. Por ejemplo, el informe con la URL http://lookerstudio.go888ogle.com.fqhub.com/navigation/reporting/my-report-id-123 tiene el ID de informe de "my-report-id-123".

En los siguientes ejemplos, se muestra cómo ver los informes y las fuentes de datos:

Busca la URL del informe y de la fuente de datos para cada trabajo de BigQuery de 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("http://lookerstudio.go888ogle.com.fqhub.com/datasources/", GetLabel(labels, 'looker_studio_datasource_id'))
);

CREATE TEMP FUNCTION GetReportUrl(labels ANY TYPE)
AS (
  CONCAT("http://lookerstudio.go888ogle.com.fqhub.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;

Visualiza los trabajos producidos usando un informe y una fuente de datos

-- Specify report and data source id, which can be found in the end of Looker Studio URLs.
DECLARE user_report_id STRING DEFAULT '*report id here*';
DECLARE user_datasource_id STRING DEFAULT '*datasource id here*';

-- Standard labels Looker Studio uses in native integration.
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

Puedes ver la información de registro sobre BI Engine en la página de Cloud Logging de la consola de Google Cloud. La forma en que ves la información de registro para BI Engine depende de la herramienta que consulta los datos:

  • Para consultas de Looker Studio sin la integración nativa de Looker Studio habilitada: Puedes ver la información de registro en la página Cloud Logging con una carga útil de protoPayload.serviceName="bigquerybiengine.googleapis.com".
  • Para todo el resto del tráfico: puedes ver información de registro en la página de Cloud Logging con una carga útil de protoPayload.serviceName="bigquery.googleapis.com".

Próximos pasos