Genera estadísticas de datos en BigQuery

Las estadísticas de datos ofrecen una forma automatizada de explorar y comprender tus datos. Usa Gemini para generar consultas basadas en los metadatos de una tabla y te permite descubrir patrones, evaluar la calidad de los datos y realizar análisis estadísticos.

En este documento, se describen las características clave de las estadísticas de datos y el proceso para automatizar la generación de consultas para la exploración de datos valiosa.

Antes de comenzar

Las estadísticas de datos se generan con Gemini en BigQuery. Para comenzar a generar estadísticas, primero debes configurar Gemini en BigQuery.

Roles obligatorios

Para crear, administrar y recuperar estadísticas de datos, pídele a tu administrador que te otorgue los siguientes roles de IAM:

Para obtener acceso de solo lectura a las estadísticas generadas, pídele a tu administrador que te otorgue el siguiente rol de IAM:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a las cuentas de servicio.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido. Para ver los permisos exactos que son necesarios para generar estadísticas, expande la sección Permisos requeridos:

Permisos necesarios

  • bigquery.jobs.create
  • bigquery.tables.get
  • bigquery.tables.getData
  • dataplex.datascans.create
  • dataplex.datascans.get
  • dataplex.datascans.getData
  • dataplex.datascans.run

Habilita las APIs

Para usar las estadísticas de datos, habilita las siguientes APIs en tu proyecto:

Para obtener más información sobre cómo habilitar la API de Gemini para Google Cloud, consulta Habilita la API de Gemini para Google Cloud en un proyecto de Google Cloud.

Acerca de las estadísticas de datos

Cuando exploran una tabla nueva y desconocida, los analistas de datos a menudo se enfrentan al problema de inicio en frío. A menudo, el problema implica incertidumbres sobre la estructura de datos, los patrones clave y las estadísticas pertinentes en los datos, lo que dificulta comenzar a escribir consultas. Las estadísticas de datos abordan el problema de inicio en frío mediante la generación automática de consultas en lenguaje natural y SQL según los metadatos de la tabla. En lugar de comenzar con un editor de consultas vacío, puedes iniciar rápidamente la exploración de datos con consultas significativas que ofrezcan estadísticas valiosas. Las consultas generadas con estadísticas de datos se basan en los datos de análisis de perfil publicados para mejorar su precisión y utilidad.

Ejemplo de una ejecución de estadística

Considera una tabla llamada telco_churn con los siguientes metadatos:

Nombre del campo Tipo
CustomerID STRING
Género STRING
Permanencia INT64
InternetService STRING
StreamingTV STRING
OnlineBackup STRING
Contrato STRING
TechSupport STRING
PaymentMethod STRING
MonthlyCharges FLOAT
Deserción BOOLEAN

Estos son algunas de las consultas de ejemplo que las estadísticas de datos generan para esta tabla:

  • Identifica a los clientes que se hayan suscrito a todos los servicios premium y que sean clientes desde hace más de 50 meses.

    SELECT
      CustomerID,
      Contract,
      Tenure
    FROM
      agentville_datasets.telco_churn
    WHERE
      OnlineBackup = 'Yes'
      AND TechSupport = 'Yes'
      AND StreamingTV = 'Yes'
      AND Tenure > 50;
    
  • Identifica qué servicio de Internet tiene los clientes más desertores.

    SELECT
      InternetService,
      COUNT(DISTINCT CustomerID) AS total_customers
    FROM
      agentville_datasets.telco_churn
    WHERE
      Churn = TRUE
    GROUP BY
      InternetService
    ORDER BY
      total_customers DESC
    LIMIT 1;
    
  • Identifica las tasas de deserción por segmento entre los clientes valiosos.

    SELECT
      Contract,
      InternetService,
      Gender,
      PaymentMethod,
      COUNT(DISTINCT CustomerID) AS total_customers,
      SUM(CASE WHEN Churn = TRUE THEN 1 ELSE 0 END) AS churned_customers,
      (SUM(CASE WHEN Churn = TRUE THEN 1 ELSE 0 END) / COUNT(DISTINCT CustomerID))
      * 100 AS churn_rate
    FROM
      agentville_datasets.telco_churn
    WHERE
      MonthlyCharges > 100
    GROUP BY
      Contract,
      InternetService,
      Gender,
      PaymentMethod;
    

Acerca de la fundamentación de estadísticas con análisis de perfiles

Cuando creas un análisis de perfil de datos para una tabla, puedes elegir publicar los resultados del análisis en BigQuery y Dataplex Catalog. BigQuery usa los datos del análisis de perfil publicados para generar consultas más precisas y pertinentes sobre la tabla.

Los datos de análisis de perfiles proporcionan información sobre la distribución de datos, los tipos de datos y los resúmenes estadísticos del conjunto de datos. Las estadísticas de datos usan datos de análisis de perfiles para crear consultas basadas en la distribución de datos y los patrones reales dentro del conjunto de datos. Este proceso implica los siguientes pasos:

  • Analizar los datos de análisis de perfil para identificar patrones, tendencias o valores atípicos interesantes en los datos
  • Generar consultas que se centren en estos patrones, tendencias o valores atípicos para descubrir estadísticas
  • Validar las consultas generadas con los datos del análisis de perfil para garantizar que las consultas muestren resultados significativos

Si no hay análisis disponibles, las estadísticas se generan en función de los nombres y las descripciones de las columnas.

Sugerencias para mejorar las estadísticas de datos

Las consultas de fundamentación garantizan que las estadísticas generadas se basen en tendencias y valores reales en tus datos. Para aprovechar al máximo las consultas basadas en los datos de análisis de perfil, sigue estas sugerencias:

  • Asegúrate de que tu tabla tenga datos de análisis de perfil publicados y actualizados.
  • Revisa las consultas generadas para comprender cómo se basan en los datos de análisis de perfil.
  • Ajusta la configuración del análisis de perfil para aumentar el tamaño de muestreo y filtrar filas y columnas.
  • Agrega descripciones a la tabla y sus columnas. Las descripciones más precisas y detalladas pueden ayudar a generar estadísticas de mayor calidad.
  • Después de actualizar el análisis de perfil o las descripciones, vuelve a generar las estadísticas de tu tabla.

Genera estadísticas para una tabla de BigQuery

Para generar estadísticas para una tabla de BigQuery, debes acceder a la entrada de la tabla en BigQuery mediante BigQuery Studio.

  1. En la consola de Google Cloud, ve a BigQuery Studio.

    Ve a BigQuery Studio

  2. En el panel Explorador, selecciona la tabla para la que deseas generar estadísticas.

  3. Haz clic en la pestaña Estadísticas. Si la pestaña está vacía, significa que las estadísticas de esta tabla aún no se generaron.

  4. Para activar la canalización de estadísticas, haz clic en Generar estadísticas.

    Las estadísticas tardan unos minutos en propagarse.

    Si hay un análisis de perfil publicado para la tabla, se usará para generar estadísticas completas. De lo contrario, las estadísticas se generan en función de los nombres y las descripciones de las columnas. Este enfoque garantiza que recibas estadísticas sin importar la disponibilidad de un análisis de perfil.

  5. En la pestaña Estadísticas, explora las consultas generadas y sus descripciones.

  6. Para abrir una consulta en BigQuery, haz clic en Copiar en consulta.

  7. Para generar un conjunto de consultas nuevo, haz clic en Generar estadísticas y vuelve a activar la canalización.

Después de generar estadísticas para una tabla, cualquier persona que tenga el permiso dataplex.datascans.getData y acceso a la tabla puede ver esas estadísticas.

Genera estadísticas para una tabla externa de BigQuery

Las estadísticas de datos de BigQuery admiten la generación de estadísticas para tablas externas de BigQuery con datos en Cloud Storage. Tú y la cuenta de servicio de Dataplex del proyecto actual deben tener el rol de visualizador de objetos de almacenamiento (roles/storage.objectViewer) en el bucket de Cloud Storage que contiene los datos. Para obtener más información, consulta Agrega una principal a una política a nivel del bucket.

A fin de generar estadísticas para una tabla externa de BigQuery, sigue las instrucciones descritas en la sección Genera estadísticas para una tabla de BigQuery de este documento.

Genera estadísticas para una tabla de BigLake

Para generar estadísticas para una tabla de BigLake, sigue estos pasos:

  1. Habilita la API de conexión de BigQuery en tu proyecto.

    Habilita la API de conexión de BigQuery

  2. Crea una conexión de BigQuery. Para obtener más información, consulta Administra conexiones.

  3. Otórgale el rol de IAM de visualizador de objetos de almacenamiento (roles/storage.objectViewer) a la cuenta de servicio correspondiente a la conexión de BigQuery que creaste.

    Puedes recuperar el ID de la cuenta de servicio desde los detalles de conexión.

  4. Para generar estadísticas, sigue las instrucciones descritas en la sección Genera estadísticas para una tabla de BigQuery de este documento.

Precios

Para obtener detalles sobre los precios de esta función, consulta la descripción general de los precios de Gemini en BigQuery.

Cuotas y límites

Si deseas obtener información sobre las cuotas y los límites de esta función, consulta Cuotas para Gemini en BigQuery.

Limitaciones

  • Las estadísticas de datos están disponibles para tablas de BigQuery, tablas de BigLake, tablas externas y vistas.
  • Para los clientes de múltiples nubes, los datos de otras nubes no están disponibles.
  • Las estadísticas de datos no admiten tipos de columna Geo ni JSON.
  • Las ejecuciones de estadísticas no garantizan la presentación de las consultas cada vez. Para aumentar la probabilidad de generar consultas más atractivas, reinicia la canalización de estadísticas.
  • Para las tablas con control de acceso (LCA) a nivel de columna y permisos de usuario restringidos, puedes generar estadísticas si tienes acceso de lectura a todas las columnas de la tabla. Para ejecutar las consultas generadas, debes tener permisos suficientes.

¿Qué sigue?