Descripción general de los análisis de BigQuery

En este documento, se describe cómo BigQuery procesa las consultas y se proporciona una descripción general de varias funciones que son útiles para el análisis de datos.

BigQuery está optimizado para ejecutar consultas analíticas en conjuntos de datos grandes, incluidos terabytes de datos en segundos y petabytes en minutos. Comprender sus capacidades y cómo se procesan las consultas puede ayudarte a maximizar tus inversiones de análisis de datos.

Para realizar un recorrido por las funciones de análisis de datos de BigQuery directamente en la consola de Google Cloud, haz clic en Realizar el recorrido.

Realizar el recorrido

Flujos de trabajo analíticos

BigQuery es compatible con varios flujos de trabajo de análisis de datos:

  • Análisis ad hoc. BigQuery usa GoogleSQL, el dialecto de SQL en BigQuery, para admitir el análisis ad hoc. Puedes ejecutar consultas en la consola de Google Cloud o mediante herramientas de terceros que se integren en BigQuery.

  • Análisis geoespacial. BigQuery usa tipos de datos geográficos y funciones geográficas de GoogleSQL para que puedas analizar y visualizar datos geoespaciales. Para obtener información sobre estos tipos de datos y funciones, consulta Introducción a las estadísticas geoespaciales.

  • El aprendizaje automático se basa. BigQuery ML usa consultas de GoogleSQL para que puedas crear y ejecutar modelos de aprendizaje automático (AA) en BigQuery.

  • Inteligencia empresarial. BigQuery BI Engine es un servicio de análisis rápido en la memoria que te permite compilar informes y paneles interactivos y completos sin comprometer el rendimiento, la escalabilidad, la seguridad o la actualidad de los datos.

Consultas

La unidad principal de análisis con BigQuery es la consulta de SQL. BigQuery tiene dos dialectos de SQL: GoogleSQL y SQL heredado. GoogleSQL es el dialecto preferido. Admite SQL:2011 y, además, incluye extensiones que admiten el análisis geoespacial o el AA.

En las siguientes secciones, se describe cómo BigQuery admite y ejecuta consultas de datos.

Fuentes de datos

BigQuery te permite consultar los siguientes tipos de fuentes de datos:

  • Datos almacenados en BigQuery. Puedes cargar datos en BigQuery para su análisis. También puedes generar datos mediante declaraciones de lenguaje de manipulación de datos (DML) o escribiendo resultados de consultas en una tabla. Puedes consultar datos almacenados en ubicaciones de una sola región o multirregión, pero no puedes ejecutar una consulta en varias ubicaciones, incluso si una es una ubicación de una sola región y la otra es la multirregión ubicación que contiene esa ubicación de una sola región. Para obtener más información, consulta Ubicaciones, reservas y trabajos.

  • Datos externos. Puedes consultar varias fuentes de datos externas, como otros servicios de almacenamiento de Google Cloud (como Cloud Storage) o servicios de bases de datos (como Spanner o Cloud SQL). Para obtener información sobre cómo configurar conexiones a fuentes externas, consulta Introducción a las fuentes de datos externas.

  • Datos de múltiples nubes. Puedes consultar datos almacenados en otras nubes públicas, como AWS o Azure. Para obtener información sobre cómo configurar las conexiones al almacenamiento de BLOB de Amazon S3 o Azure, lee una introducción a BigQuery Omni.

  • Conjuntos de datos públicos. Si no tienes tus propios datos, puedes analizar cualquiera de los conjuntos de datos que están disponibles en el mercado de conjuntos de datos públicos.

Trabajos de consulta

Los trabajos son acciones que BigQuery ejecuta por ti para cargar datos, exportarlos, consultarlos o copiarlos.

Cuando usas la consola de Google Cloud o la herramienta de bq para realizar uno de estos trabajos, automáticamente se crea, se programa y se ejecuta un recurso de trabajo. También puedes crear un trabajo de carga, exportación, consulta o copia de manera programática. Cuando creas un trabajo de manera programática, BigQuery programa y ejecuta el trabajo por ti.

Dado que los trabajos pueden llevar mucho tiempo en completarse, estos se ejecutan de forma asíncrona y se pueden sondear para determinar su estado. Las acciones más cortas, como obtener metadatos o enumerar recursos, no se administran mediante un recurso de trabajo.

Tipos de consultas

Puedes consultar datos de BigQuery a través de uno de los siguientes tipos de trabajos de consulta:

  • Trabajos de consultas interactivas. De manera predeterminada, BigQuery ejecuta trabajos de consultas interactivas (a pedido) lo antes posible.
  • Trabajos de consulta continua (Vista previa). Con estos trabajos, la consulta se ejecuta de forma continua, lo que te permite analizar datos entrantes en BigQuery en tiempo real y, luego, escribir los resultados en una tabla de BigQuery o exportar los resultados a Bigtable o Pub/Sub. Puedes usar esta capacidad para realizar tareas sensibles urgentes, como crear y tomar medidas inmediatas sobre las estadísticas, aplicar inferencias de aprendizaje automático (AA) en tiempo real y compilar canalizaciones de datos controladas por eventos.

  • Trabajos de consultas Batch. Con estos trabajos, BigQuery pone en cola cada consulta por lotes en tu nombre y, luego, inicia la consulta cuando los recursos inactivos están disponibles, por lo general, en el plazo de unos minutos.

Puedes ejecutar trabajos de consulta con los siguientes métodos:

Consultas guardadas y compartidas

BigQuery te permite guardar y compartir consultas con otros.

Cuando guardas una consulta, puede ser privada (solo visible para ti), compartida a nivel de proyecto (visible para principales específicas) o pública (visible para todo el mundo). Para obtener más información, consulta Trabaja con consultas guardadas.

Cómo procesa BigQuery las consultas

Se producen varios procesos cuando BigQuery ejecuta una consulta:

  • Árbol de ejecución. Cuando ejecutas una consulta, BigQuery genera un árbol de ejecución que divide la consulta en etapas. Estas etapas contienen pasos que pueden ejecutarse en paralelo.

  • Nivel aleatorio. Las etapas se comunican entre sí mediante un nivel aleatorio distribuido y rápido que almacena los datos intermedios producidos por los trabajadores de una etapa. Cuando sea posible, el nivel aleatorio aprovecha tecnologías como una red de petabits y RAM para mover los datos a los nodos trabajadores con rapidez.

  • Plan de consultas. Cuando BigQuery tiene toda la información que necesita para ejecutar una consulta, genera un plan de consultas. Puedes ver este plan en la consola de Google Cloud y usarlo para solucionar problemas o optimizar el rendimiento de las consultas.

  • Supervisión y planificación dinámica de consultas. Además de los trabajadores que realizan el trabajo del plan de consultas, los trabajadores adicionales supervisan y dirigen el progreso general del trabajo en todo el sistema. A medida que la consulta avanza, BigQuery puede ajustar dinámicamente el plan de consulta para adaptarse a los resultados de las distintas etapas.

  • Resultados de la consulta. Cuando se completa una consulta, BigQuery escribe los resultados en el almacenamiento persistente y los muestra al usuario. Este diseño permite que BigQuery entregue resultados almacenados en caché la próxima vez que se ejecute esa consulta.

Simultaneidad y rendimiento de las consultas

El rendimiento de las consultas que se ejecutan de manera repetida en los mismos datos puede variar debido a la naturaleza compartida del entorno de BigQuery, o porque BigQuery ajusta de forma dinámica el plan de consulta mientras se ejecuta la consulta. En el caso de un sistema ocupado típico en el que muchas consultas se ejecutan en simultáneo, BigQuery usa varios procesos para reducir las variaciones en el rendimiento de la consulta:

  • BigQuery ejecuta muchas consultas en paralelo, por lo que rara vez es necesario ponerlas en cola.

    En los sistemas ocupados, las colas son una fuente importante de rendimiento menos predecible porque no está claro cuánto tiempo puede permanecer una consulta en la cola. El tiempo en que una consulta está en la cola puede depender más de otras consultas que se ejecutan o están en la cola que sobre las cualidades de la consulta en sí.

  • A medida que las consultas comienzan y finalizan, BigQuery redistribuye los recursos de manera equitativa entre las consultas nuevas y las que se ejecutan. Este proceso garantiza que el rendimiento de las consultas no dependa del orden en el que se envíen las consultas, sino de la cantidad de consultas que se ejecutan en un momento determinado.

Optimización de consultas

Una vez que se completó la consulta, puedes ver el plan de consulta en la consola de Google Cloud. También puedes solicitar detalles de ejecución con las vistas INFORMATION_SCHEMA.JOBS* o el método de la API de RESTjobs.get.

El plan de consulta incluye detalles sobre las etapas y los pasos de una consulta. Estos detalles pueden ayudarte a identificar formas de mejorar el rendimiento de las consultas. Por ejemplo, si notas una etapa que escribe mucho más resultados que otras etapas, es posible que debas filtrar con anterioridad en la consulta.

Para obtener más información sobre el plan de consulta y la optimización de consultas, visita los siguientes recursos:

Supervisión de consultas

La supervisión y el registro son fundamentales para ejecutar aplicaciones confiables en la nube. Las cargas de trabajo de BigQuery no son la excepción, en especial si la tuya tiene volúmenes altos o es crítica. BigQuery proporciona varias métricas, registros y vistas de metadatos para ayudarte a supervisar el uso de BigQuery.

Para obtener más información, consulta los siguientes recursos:

Precios de consulta

BigQuery ofrece dos modelos de precios para las estadísticas:

Para obtener información sobre los dos modelos de precios y sobre cómo realizar reservas de precios basados en la capacidad, consulta Introducción a las reservas.

Cuotas y controles de precio de las consultas

BigQuery aplica cuotas a nivel de proyecto a las consultas en ejecución. Para obtener más información sobre las cuotas de consulta, visita Cuotas y límites.

Para controlar los costos de consulta, BigQuery ofrece varias opciones, incluidas las cuotas personalizadas y las alertas de facturación. Para obtener más información, consulta Cómo crear controles de costos personalizados.

Funciones de análisis de datos

BigQuery admite estadísticas descriptivas y predictivas. Para consultar tus datos directamente a fin de responder algunas preguntas estadísticas, puedes usar la consola de Google Cloud. Para explorar los datos de forma visual, como tendencias y anomalías, puedes usar herramientas como Tableau o Looker que se integran en BigQuery.

BigQuery Studio

BigQuery Studio te ayuda a descubrir, analizar y ejecutar inferencias sobre datos en BigQuery con las siguientes funciones:

BigQuery ML

BigQuery ML te permite usar SQL en BigQuery para realizar aprendizaje automático (AA) y estadísticas predictivas. Para obtener más información, consulta Introducción a BigQuery ML.

Integración de herramientas de estadísticas

Además de ejecutar consultas en BigQuery, puedes analizar tus datos con varias herramientas de inteligencia empresarial y estadísticas que se integran en BigQuery, como las siguientes:

  • Looker. Looker es una plataforma empresarial para la inteligencia empresarial, las aplicaciones de datos y las estadísticas incorporadas. La plataforma Looker funciona con muchos almacenes de datos, incluido BigQuery. Para obtener información sobre cómo conectar Looker con BigQuery, consulta Usa Looker.

  • Looker Studio. Después de ejecutar una consulta, puedes iniciar Looker Studio directamente desde BigQuery en la consola de Google Cloud. Luego, en Looker Studio, puedes crear visualizaciones y explorar los datos que se muestran desde la consulta. Para obtener información sobre Looker Studio, consulta Descripción general de Looker Studio.

  • Hojas conectadas. También puedes iniciar hojas conectadas directamente desde BigQuery en la consola. Las hojas conectadas ejecutan consultas de BigQuery en tu nombre en función de la solicitud o de un programa definido. Los resultados de esas consultas se guardan en la hoja de cálculo para analizar los datos y compartirlos. Para obtener información sobre las hojas conectadas, consulta Usa hojas conectadas.

Integración de herramientas de terceros

Varias herramientas de estadísticas de terceros funcionan con BigQuery. Por ejemplo, puedes conectar Tableau a datos de BigQuery y usar sus herramientas de visualización para analizar y compartir tu análisis. Para obtener más información sobre las consideraciones cuando se usan herramientas de terceros, consulta Integración de herramientas de terceros.

Los controladores ODBC y JDBC están disponibles y se pueden usar para integrar tu aplicación en BigQuery. El propósito de estos controladores es ayudar a los usuarios a aprovechar la potencia de BigQuery con la infraestructura y las herramientas existentes. Para obtener información sobre la actualización más reciente y los problemas conocidos, consulta Controladores de ODBC y JDBC para BigQuery.

Las bibliotecas de Pandas, como pandas-gbq, te permiten interactuar con datos de BigQuery en notebooks de Jupyter. Para obtener más información sobre esta biblioteca y cómo se compara con el uso de la biblioteca cliente de Python de BigQuery, consulta Comparación con pandas-gbqpandas-gbq.

También puedes usar BigQuery con otros notebooks y herramientas de análisis. Para obtener más información, consulta Herramientas de análisis programático.

Para obtener una lista completa de las estadísticas de BigQuery y los socios de tecnología más amplios, consulta la lista Socios en la página de productos de BigQuery.

¿Qué sigue?