En esta página, se explica cómo usar Data Boost de Spanner cuando se ejecutan consultas federadas de BigQuery a Spanner. Con Data Boost, Se ejecutan consultas federadas con un impacto casi nulo en las cargas de trabajo existentes del instancia de Spanner aprovisionada.
La federación de Spanner permite que BigQuery consulte datos residen en Spanner en tiempo real, sin copiar ni mover datos.
Para obtener más información sobre las consultas federadas de Spanner, visita Spanner. Consultas federadas
Para conocer más sobre Data Boost, consulta Data Boost. descripción general.
Antes de comenzar
Completa las siguientes tareas antes de intentar ejecutar consultas federadas con Data Boost.
Habilita la API de conexión de BigQuery
La API de conexión de BigQuery te permite administrar Conexiones de BigQuery a fuentes de datos externas.
-
Enable the BigQuery connection API.
Para obtener más información, consulta Conexión a BigQuery de la API de Google Ads.
Otorga permisos de IAM para Data Boost a principales
Las principales necesitan spanner.instances.get
y spanner.databases.useDataBoost
Permisos de Identity and Access Management (IAM) para ejecutar
y exportaciones con Data Boost.
Te recomendamos crear un rol de IAM personalizado basado en
Spanner Database Reader
(roles/spanner.databaseReader
) y agregar
spanner.instances.get
y spanner.databases.useDataBoost
.
Para obtener más información, consulta Roles predefinidos.
Crea conexiones de BigQuery para Spanner con Data Boost
Las conexiones de BigQuery te permiten consultar datos en BigQuery. Para establecer una conexión entre BigQuery y Spanner, debes crear un panel de conexión. Luego, puedes ejecutar consultas que unan los datos de BigQuery con Spanner de datos no estructurados.
Para crear una conexión de datos externa a Spanner que use Data Boost, selecciona una de las siguientes opciones:
Console
Ve a Crea conexiones de Spanner. en la documentación de BigQuery y sigue los pasos de la Consola instrucciones.
En el panel Fuente de datos externa, selecciona la opción Leer datos en paralelo y Usar Data Boost de Spanner.
bq
Ve a Crea conexiones de Spanner. en la documentación de BigQuery y sigue los pasos de bq instrucciones.
Configura las siguientes propiedades de conexión en
true
:
useParallelism
useDataBoost
En el siguiente ejemplo, se usa bq
mk
para crear una nueva conexión llamada my_connection
con los dos
Propiedades requeridas para Data Boost:
bq mk --connection --connection_type='CLOUD_SPANNER' --location='us' \
--properties='{"database":"projects/my-project/instances/my-instance/databases/my-database", "useParallelism":true, "useDataBoost": true}' my_connection
Ejecuta una consulta federada
Para ejecutar una consulta federada con Data Boost, usa un conexión de BigQuery que especifique el uso de Data Boost. Para obtener más información, consulta Crear Conexiones de BigQuery para Spanner con Data Boost
Puedes comenzar desde la página de Spanner de la la consola de Google Cloud o desde BigQuery.
Comenzar desde la página de Spanner de la consola
Ve a la página Instancias de Spanner en la consola de Google Cloud.
En la consola, se muestra una lista de tus instancias individuales.
Selecciona una instancia de Spanner y, luego, una base de datos.
En el menú de navegación de la página Descripción general de la base de datos, haz clic en Spanner Studio.
Haz clic en la pestaña Ver en BigQuery.
En el diálogo Ver en BigQuery, ingresa un ID de conexión.
Esto crea una conexión nueva. Se produce un error si el ID ya existe.
Completa el resto del diálogo, selecciona Read data in parallel. Las casillas de verificación Usar Data Boost de Spanner
Haz clic en Ver en BigQuery.
Se abrirá BigQuery Studio. Ingresa y ejecuta consulta federada.
En el siguiente ejemplo, se realiza una consulta federada a una base de datos de Cloud Spanner llamada
orders
y se unen los resultados con una tabla de BigQuery llamadamydataset.customers
.SELECT c.customer_id, c.name, rq.first_order_date FROM mydataset.customers AS c LEFT OUTER JOIN EXTERNAL_QUERY( 'my-project.us.example-db', '''SELECT customer_id, MIN(order_date) AS first_order_date FROM orders GROUP BY customer_id''') AS rq ON rq.customer_id = c.customer_id GROUP BY c.customer_id, c.name, rq.first_order_date;
Comenzar desde BigQuery
Ingresar la siguiente URL en tu navegador:
https://console.cloud.google.com/bigquery
BigQuery se abrirá en el último proyecto al que accediste y muestra BigQuery Studio. Ejecuta tu consulta federada aquí.
¿Qué sigue?
- Más información sobre Data Boost en Descripción general de Data Boost.
- Usa Data Boost en tus aplicaciones
- Supervisa el uso de Data Boost
- Supervisa y administra el uso de cuotas de Data Boost