Conectar BigQuery y bases de datos
Conecta fuentes de datos empresariales y bases de datos SQL.
Cuando tus datos crecen mas alla de lo que Google Sheets puede manejar eficientemente, es momento de usar BigQuery o bases de datos SQL. En esta leccion aprenderemos a conectar estas fuentes mas potentes a Looker Studio.
Cuando usar BigQuery vs Sheets
Indicadores de que necesitas BigQuery
| Senal | Sheets | BigQuery |
|---|---|---|
| Filas de datos | < 100,000 | Millones+ |
| Actualizaciones | Pocas al dia | Continuas |
| Consultas complejas | Basicas | JOINs, agregaciones |
| Tiempo de carga | > 30 segundos | Requiere optimizacion |
| Costo | Gratis | Pago por consulta |
Beneficios de BigQuery
- Escala: Maneja petabytes de datos
- Velocidad: Consultas en segundos sobre millones de filas
- SQL estandar: Lenguaje familiar
- Integracion: Nativo con Google Analytics 4, Ads, Firebase
- Machine Learning: BigQuery ML integrado
Conectar BigQuery a Looker Studio
Requisitos previos
- Proyecto de Google Cloud con BigQuery habilitado
- Permisos: BigQuery Data Viewer (minimo)
- Datos en al menos una tabla
Paso 1: Iniciar la conexion
- En Looker Studio, Crear > Fuente de datos
- Busca y selecciona "BigQuery"
- Autoriza acceso si es necesario
Paso 2: Seleccionar datos
Tienes tres opciones para seleccionar datos:
Opcion A: Tabla existente
Proyecto > Dataset > Tabla
Ejemplo:
mi-proyecto-123 > analytics > eventos_ga4
- Selecciona tu proyecto de GCP
- Selecciona el dataset
- Selecciona la tabla
- Clic en "Conectar"
Opcion B: Consulta personalizada
Usa SQL para definir exactamente que datos quieres:
SELECT
event_date,
event_name,
COUNT(*) as eventos,
COUNT(DISTINCT user_pseudo_id) as usuarios
FROM
`mi-proyecto.analytics_123456789.events_*`
WHERE
_TABLE_SUFFIX BETWEEN '20260101' AND '20260131'
GROUP BY
event_date, event_name
Ventajas de consulta personalizada:
- Filtrar datos antes de cargar
- Agregar datos para reducir volumen
- JOIN entre tablas
- Calculos complejos en SQL
Opcion C: Vista de BigQuery
- Crea una VIEW en BigQuery
- Conecta la VIEW como si fuera una tabla
CREATE VIEW `mi-proyecto.mi_dataset.vista_dashboard` AS
SELECT
fecha,
canal,
SUM(revenue) as revenue_total
FROM
`mi-proyecto.mi_dataset.ventas`
GROUP BY
fecha, canal
Ventaja: La logica SQL vive en BigQuery, Looker Studio solo consume.
Paso 3: Configurar la fuente
Despues de conectar, revisa:
- Tipos de datos: Verifica que fechas, numeros y texto esten correctos
- Campos: Renombra si es necesario para claridad
- Agregaciones predeterminadas: SUM, AVG, COUNT, etc.
Entender los costos de BigQuery
Modelo de precios
BigQuery cobra por:
| Concepto | Costo aproximado |
|---|---|
| Almacenamiento | $0.02/GB/mes |
| Consultas (on-demand) | $5/TB procesado |
| Streaming inserts | $0.01/200MB |
Como Looker Studio genera costos
Cada vez que alguien:
- Abre el dashboard
- Cambia un filtro
- Actualiza los datos
Looker Studio ejecuta consultas a BigQuery, generando costos.
Ejemplo de calculo de costos
Tabla de eventos: 500 GB
Dashboard visto: 100 veces/dia
Promedio de consultas por vista: 5
Datos procesados por consulta: 10 GB
Costos diarios:
100 vistas x 5 consultas x 10 GB x $5/TB
= 100 x 5 x 0.01 TB x $5
= $25/dia
Costos mensuales: ~$750
Estrategias para reducir costos
1. Usa tablas agregadas
En lugar de consultar la tabla cruda:
-- Crear tabla resumen diaria
CREATE TABLE `proyecto.dataset.resumen_diario` AS
SELECT
DATE(timestamp) as fecha,
fuente,
COUNT(*) as eventos,
SUM(revenue) as revenue
FROM `proyecto.dataset.eventos_raw`
GROUP BY fecha, fuente
Conecta Looker Studio a la tabla resumen.
2. Usa particionamiento
Si tu tabla esta particionada por fecha:
-- Looker Studio solo procesa las particiones necesarias
SELECT * FROM `proyecto.dataset.eventos`
WHERE fecha BETWEEN '2026-01-01' AND '2026-01-31'
3. Habilita cache en Looker Studio
- Edita la fuente de datos
- Configura "Actualizacion de datos" a intervalos mayores
- El cache reduce consultas repetidas
4. Usa BigQuery BI Engine
Para dashboards de alto trafico:
- Reserva capacidad de BI Engine en GCP
- Looker Studio usa memoria en lugar de procesamiento
- Costos predecibles y mejor rendimiento
Conectar bases de datos SQL
Conectores disponibles
Looker Studio soporta conexiones directas a:
| Base de datos | Conector |
|---|---|
| MySQL | Nativo |
| PostgreSQL | Nativo |
| SQL Server | Conector comunidad |
| Cloud SQL | Nativo (Google) |
| Amazon Redshift | Conector comunidad |
Conectar MySQL/PostgreSQL
Paso 1: Informacion necesaria
Tendras que proporcionar:
| Campo | Ejemplo |
|---|---|
| Host | mi-servidor.ejemplo.com |
| Puerto | 3306 (MySQL) / 5432 (PostgreSQL) |
| Base de datos | mi_base_datos |
| Usuario | usuario_looker |
| Contrasena | ******** |
Paso 2: Configurar acceso
Tu base de datos debe permitir conexiones desde Google:
- Whitelist IPs de Google: Configura firewall para permitir IPs de Looker Studio
- Usa SSL: Recomendado para seguridad
- Usuario dedicado: Crea un usuario con permisos de solo lectura
-- MySQL: Crear usuario de solo lectura
CREATE USER 'looker_studio'@'%' IDENTIFIED BY 'password_seguro';
GRANT SELECT ON mi_base.* TO 'looker_studio'@'%';
FLUSH PRIVILEGES;
Paso 3: Conectar en Looker Studio
- Selecciona el conector de MySQL o PostgreSQL
- Ingresa la informacion de conexion
- Selecciona la tabla o escribe una consulta
- Conectar
Consideraciones de seguridad
| Practica | Descripcion |
|---|---|
| Usuario de solo lectura | Nunca uses usuario con permisos de escritura |
| IPs restringidas | Limita acceso a IPs de Google |
| SSL obligatorio | Encripta la conexion |
| Credenciales rotadas | Cambia contrasenas regularmente |
| Monitoreo | Revisa logs de acceso |
Optimizar rendimiento
1. Indexa columnas de filtro
Si filtras frecuentemente por fecha o categoria:
-- MySQL
CREATE INDEX idx_fecha ON ventas(fecha);
CREATE INDEX idx_region ON ventas(region);
2. Usa consultas personalizadas eficientes
En lugar de traer toda la tabla:
-- Malo: trae todo
SELECT * FROM ventas
-- Bueno: solo lo necesario
SELECT
fecha,
region,
SUM(monto) as total_ventas
FROM ventas
WHERE fecha >= '2026-01-01'
GROUP BY fecha, region
3. Considera materializar vistas
Para consultas complejas que se ejecutan frecuentemente:
-- BigQuery: Vista materializada
CREATE MATERIALIZED VIEW `proyecto.dataset.resumen_ventas`
AS SELECT
DATE(timestamp) as fecha,
COUNT(*) as transacciones,
SUM(revenue) as revenue_total
FROM `proyecto.dataset.transacciones`
GROUP BY fecha;
4. Monitorea tiempos de consulta
En BigQuery:
- Ve a la consola de GCP
- BigQuery > Historial de trabajos
- Identifica consultas lentas de Looker Studio
Ejemplo practico: Dashboard con BigQuery
Escenario
Tienes datos de Google Analytics 4 exportados a BigQuery y quieres crear un dashboard de rendimiento.
Paso 1: Crear consulta optimizada
-- Guardar como VIEW en BigQuery
CREATE OR REPLACE VIEW `mi-proyecto.analytics.dashboard_ga4` AS
SELECT
PARSE_DATE('%Y%m%d', event_date) as fecha,
traffic_source.source as fuente,
traffic_source.medium as medio,
COUNT(DISTINCT user_pseudo_id) as usuarios,
COUNT(*) as eventos,
COUNTIF(event_name = 'purchase') as compras,
SUM(IFNULL(ecommerce.purchase_revenue, 0)) as revenue
FROM
`mi-proyecto.analytics_123456789.events_*`
WHERE
_TABLE_SUFFIX >= FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 90 DAY))
GROUP BY
fecha, fuente, medio
Paso 2: Conectar la VIEW
- En Looker Studio, conecta BigQuery
- Selecciona la VIEW
dashboard_ga4 - Configura tipos de datos
Paso 3: Crear visualizaciones
Grafico de linea: Usuarios por dia
- Dimension: fecha
- Metrica: usuarios
Tabla: Rendimiento por fuente
- Dimension: fuente, medio
- Metricas: usuarios, compras, revenue
KPIs
- Total usuarios (ultimos 30 dias)
- Total revenue
- Tasa de conversion (compras/usuarios)
Puntos clave de esta leccion
- BigQuery es ideal cuando tus datos superan las capacidades de Sheets
- Cada consulta de Looker Studio a BigQuery tiene un costo ($5/TB)
- Usa tablas agregadas, particionamiento y cache para reducir costos
- Las consultas personalizadas te dan control total sobre los datos
- Para bases SQL (MySQL, PostgreSQL), crea usuarios de solo lectura
- Monitorea el rendimiento y optimiza consultas lentas
- Considera BigQuery BI Engine para dashboards de alto trafico
Proxima leccion
En la siguiente leccion, exploraremos los conectores de comunidad que te permiten conectar Looker Studio a cientos de otras fuentes como Facebook Ads, LinkedIn, HubSpot y mas.
Quiz de comprension
- Cual es el costo aproximado por TB de consultas on-demand en BigQuery?
- Menciona dos estrategias para reducir costos de BigQuery en Looker Studio
- Que permisos minimos necesita un usuario de base de datos para Looker Studio?
- Cual es la ventaja de usar una VIEW de BigQuery en lugar de una consulta directa?
¿Completaste esta lección?
Marca esta lección como completada. Tu progreso se guardará en tu navegador.