Herramientas y funciones para desarrolladores
En este documento se ofrece una descripción general de algunas de las funciones y herramientas que te ayudan a desarrollar soluciones con BigQuery.
Funciones para desarrolladores
En esta sección se describen algunas funciones integradas habituales para desarrolladores que usan BigQuery.
Cargar y transformar datos
BigQuery ofrece formas de cargar, transmitir y generar datos por lotes. Para elegir la mejor opción para tu caso práctico, consulta el artículo Introducción a la carga de datos.
Consultas
BigQuery está optimizado para ejecutar consultas analíticas escritas en GoogleSQL en grandes conjuntos de datos. Puede programar, guardar y compartir consultas que se ejecuten en datos almacenados en BigQuery, datos externos, datos almacenados en otras nubes o conjuntos de datos públicos.
Funciones remotas
Puedes usar funciones remotas para desplegar tus funciones en Cloud Run Functions o Cloud Run y, a continuación, invocarlas directamente desde tus consultas de GoogleSQL. Este enfoque es especialmente útil si necesitas implementar tus funciones en otros idiomas que no sean SQL o JavaScript. Puedes usar funciones remotas para muchas cosas, como traducir texto de una tabla de un idioma a otro, iniciar acciones como notificarte cuando los valores de una tabla estén por debajo de un umbral o ejecutar transformaciones por lotes, como aplicar un modelo de aprendizaje automático.
Aprendizaje automático
Puedes usar BigQuery ML para crear y ejecutar modelos de aprendizaje automático mediante consultas de GoogleSQL.
Procedimientos almacenados de SQL
Puedes usar procedimientos almacenados en SQL para llamar a colecciones de instrucciones desde otras consultas o procedimientos almacenados. Puedes llamar a procedimientos almacenados integrados o escribir los tuyos propios, que te permiten definir variables e implementar el flujo de control.
y semiestructurados
Puedes usar datos JSON
en GoogleSQL
para ingerir datos semiestructurados en BigQuery sin proporcionar
un esquema por adelantado. Puedes usar el operador de acceso a campos para consultar los valores de los campos y los elementos de la matriz directamente.
Viaje en el tiempo
Puedes usar la función de viaje en el tiempo para acceder a los datos almacenados en BigQuery que se hayan modificado o eliminado en cualquier momento de los últimos siete días. Esta función te permite restaurar tablas actualizadas, eliminadas o caducadas, aunque no hayas creado una copia de seguridad de tus datos.
Capturas de tablas
Puedes usar capturas de tablas cuando necesites crear una copia de seguridad de una tabla de un momento posterior al periodo de la función de viaje en el tiempo. BigQuery solo almacena los bytes que son diferentes entre una instantánea y su tabla base, por lo que una instantánea de una tabla suele usar menos almacenamiento que una copia completa de la tabla.
Clones de tablas
Puedes usar clones de tablas para crear versiones de las tablas y probar los cambios en el esquema de las tablas. Un clon de una tabla es una copia ligera y editable de otra tabla. Solo se te cobra por el almacenamiento de los datos de la clonación de la tabla que difieran de la tabla base, por lo que, al principio, no hay ningún coste de almacenamiento para la clonación de la tabla.
Tablas externas
Puede consultar tablas externas directamente desde BigQuery, como datos de otra base de datos, archivos de Cloud Storage o de otro producto en la nube. Google CloudEsta función te permite realizar cargas de trabajo de ELT con una sola consulta o unir tablas de BigQuery con datos que cambian con frecuencia desde otra fuente.
Funciones definidas por el usuario
Puedes escribir funciones definidas por el usuario (UDFs) en GoogleSQL o JavaScript que se puedan reutilizar en varias consultas. Puedes autorizar una función definida por el usuario como rutina, lo que te permite compartir resultados de consultas con usuarios o grupos específicos sin darles acceso a las tablas subyacentes.
APIs de BigQuery
BigQuery ofrece APIs REST y gRPC para interactuar mediante programación con sus diferentes tipos de servicios. Puedes autenticar la identidad de tu cliente para acceder a las APIs mediante cuentas de servicio o de usuario. Las siguientes APIs están disponibles:
- API de BigQuery
- API DataPolicy de BigQuery
- API Connection de BigQuery
- API BigQuery Migration
- API Storage de BigQuery
- API Reservation de BigQuery
- Compartir datos de BigQuery (antes Analytics Hub)
- API de BigQuery Data Transfer Service
Para obtener más información sobre lo que ofrece cada API, consulta la información general sobre las APIs y las bibliotecas de BigQuery.
Biblioteca BigQuery DataFrames
BigQuery DataFrames es una API de Python que puedes usar para analizar datos y realizar tareas de aprendizaje automático en BigQuery. Puedes consultar el código fuente de la API en GitHub.
Para empezar a usar BigQuery DataFrames, consulta la guía de inicio rápido de BigQuery DataFrames.
Bibliotecas de cliente
Las bibliotecas de cliente te permiten acceder a las APIs de BigQuery directamente con tu lenguaje de programación preferido, como C#, Go, Java, Node.js, PHP, Python y Ruby. Para ver estos recursos de la API BigQuery, selecciona uno de los siguientes idiomas:
C#
- Guía de inicio rápido. Sigue las instrucciones detalladas para ejecutar una consulta en BigQuery con la biblioteca de cliente.
- Documentación de referencia de la API Consulta las descripciones de los métodos y objetos admitidos en tu idioma.
- Código fuente de GitHub. Consulta el código fuente de la biblioteca de cliente de BigQuery en GitHub.
- Stack Overflow Lee, haz y responde preguntas relacionadas con la biblioteca de cliente de BigQuery.
Go
- Guía de inicio rápido. Sigue las instrucciones detalladas para ejecutar una consulta en BigQuery con la biblioteca de cliente.
- Documentación de referencia de la API Consulta las descripciones de los métodos y objetos admitidos en tu idioma.
- Código fuente de GitHub. Consulta el código fuente de la biblioteca de cliente de BigQuery en GitHub.
- Stack Overflow Lee, haz y responde preguntas relacionadas con la biblioteca de cliente de BigQuery.
Java
- Guía de inicio rápido. Sigue las instrucciones detalladas para ejecutar una consulta en BigQuery con la biblioteca de cliente.
- Documentación de referencia de la API Consulta las descripciones de los métodos y objetos admitidos en tu idioma.
- Código fuente de GitHub. Consulta el código fuente de la biblioteca de cliente de BigQuery en GitHub.
- Stack Overflow Lee, haz y responde preguntas relacionadas con la biblioteca de cliente de BigQuery.
Node.js
- Guía de inicio rápido. Sigue las instrucciones detalladas para ejecutar una consulta en BigQuery con la biblioteca de cliente.
- Documentación de referencia de la API Consulta las descripciones de los métodos y objetos admitidos en tu idioma.
- Código fuente de GitHub. Consulta el código fuente de la biblioteca de cliente de BigQuery en GitHub.
- Stack Overflow Lee, haz y responde preguntas relacionadas con la biblioteca de cliente de BigQuery.
PHP
- Guía de inicio rápido. Sigue las instrucciones detalladas para ejecutar una consulta en BigQuery con la biblioteca de cliente.
- Documentación de referencia de la API Consulta las descripciones de los métodos y objetos admitidos en tu idioma.
- Código fuente de GitHub. Consulta el código fuente de la biblioteca de cliente de BigQuery en GitHub.
- Stack Overflow Lee, haz y responde preguntas relacionadas con la biblioteca de cliente de BigQuery.
Python
- Guía de inicio rápido. Sigue las instrucciones detalladas para ejecutar una consulta en BigQuery con la biblioteca de cliente.
- Documentación de referencia de la API Consulta las descripciones de los métodos y objetos admitidos en tu idioma.
- Código fuente de GitHub. Consulta el código fuente de la biblioteca de cliente de BigQuery en GitHub.
- Stack Overflow Lee, haz y responde preguntas relacionadas con la biblioteca de cliente de BigQuery.
Ruby
- Guía de inicio rápido. Sigue las instrucciones detalladas para ejecutar una consulta en BigQuery con la biblioteca de cliente.
- Documentación de referencia de la API Consulta las descripciones de los métodos y objetos admitidos en tu idioma.
- Código fuente de GitHub. Consulta el código fuente de la biblioteca de cliente de BigQuery en GitHub.
- Stack Overflow Lee, haz y responde preguntas relacionadas con la biblioteca de cliente de BigQuery.
Para obtener más información sobre cómo usar las bibliotecas de cliente de BigQuery en tu entorno local, consulta Bibliotecas de cliente de la API BigQuery.
Códigos de ejemplo
Puedes consultar ejemplos de código de BigQuery que proporcionan fragmentos completos para llevar a cabo tareas comunes en BigQuery, como crear tablas, enumerar conexiones, ver compromisos de capacidad y reservas, y cargar datos. Para ver un ejemplo, selecciona una API, una tarea y el idioma que prefieras.
Herramientas y servicios programáticos
Los siguientes servicios están integrados con BigQuery y ofrecen funciones adicionales para crear soluciones:
- Dataproc. Un servicio totalmente gestionado para ejecutar trabajos de Apache Hadoop y Apache Spark. Dataproc proporciona el conector de BigQuery, que permite que Hadoop y Spark procesen directamente datos de BigQuery.
- Dataflow. Servicio totalmente gestionado para ejecutar trabajos de Apache Beam a gran escala. El conector de entrada/salida de BigQuery para Beam permite que las canalizaciones de Beam lean y escriban datos en BigQuery.
- Cloud Composer. Servicio totalmente gestionado de programación de flujos de trabajo, integrado en Apache Airflow. Los operadores de BigQuery permiten que los flujos de trabajo de Airflow gestionen conjuntos de datos y tablas, ejecuten consultas y validen datos.
- Pub/Sub. Un servicio de mensajería asíncrono y escalable. Pub/Sub ofrece suscripciones de BigQuery para escribir mensajes en una tabla de BigQuery a medida que se reciben.
Integración y despliegue continuos
Las siguientes opciones te ayudan a gestionar y automatizar tu flujo de trabajo de desarrollo con BigQuery:
- Módulo de Terraform de BigQuery. Un módulo para automatizar la creación y la implementación de tus conjuntos de datos y tablas de BigQuery.
- Herramienta de línea de comandos bq. Una herramienta de línea de comandos basada en Python para BigQuery.
- Dataform. Un servicio para que los analistas de datos desarrollen, prueben, controlen versiones y programen flujos de trabajo de SQL complejos para transformar datos en BigQuery.
- dbt. Un framework que te ayuda a programar y desplegar flujos de trabajo, probar y catalogar tus datos, y reutilizar fragmentos de código como macros.
- Liquibase. Una solución de gestión de cambios de esquemas de bases de datos que te permite revisar y lanzar cambios de forma rápida y segura desde el desarrollo hasta la producción.
Controladores ODBC y JDBC
Los controladores Open Database Connectivity (ODBC) y Java Database Connectivity (JDBC) te permiten escribir aplicaciones de software independientes de la base de datos en lenguajes de programación populares para conectar BigQuery a tu infraestructura. Para obtener más información y las últimas versiones de los controladores, consulta Controladores ODBC y JDBC para BigQuery.
Siguientes pasos
- Para obtener más información sobre los próximos eventos y recursos para desarrolladores, consulta el centro para desarrolladores. Google Cloud
- Para obtener más información sobre cómo usan otras empresas Google Cloud, consulta Nube de datos para ISVs.
- Para obtener más información sobre las soluciones de partners validadas que se integran con BigQuery, consulta Google Cloud Ready - BigQuery.