Data warehouse serverless e totalmente gerenciado para analytics em petabytes
Google BigQuery é um data warehouse serverless, altamente escalável e econômico, projetado para agilidade empresarial. Construído sobre a infraestrutura do Google, BigQuery permite análises em petabytes de dados usando SQL padrão, com machine learning integrado e recursos avançados de BI.
Lançado em 2010 como parte do Google Cloud Platform, BigQuery foi um dos primeiros serviços de data warehouse totalmente gerenciados na nuvem. Baseado na tecnologia interna do Google (Dremel), revolucionou o mercado ao oferecer análises em petabytes sem necessidade de gerenciamento de infraestrutura.
BigQuery utiliza uma arquitetura serverless distribuída:
Machine learning integrado com SQL
Analytics em memória para dashboards
Migração automatizada de dados
Analytics multi-cloud (AWS, Azure)
Streaming Inserts | Ingestão de dados em tempo real |
Federated Queries | Consultas em fontes externas |
Materialized Views | Views pré-computadas para performance |
Column-level Security | Controle granular de acesso |
Time Travel | Acesso a dados históricos |
Dashboards e relatórios empresariais com BI Engine.
Modelos de ML diretamente em SQL com BigQuery ML.
Análises em tempo real com streaming inserts.
Consultas em data lakes com formatos diversos.
Análise de logs de aplicações e infraestrutura.
-- Análise de vendas por região
SELECT
region,
SUM(sales_amount) as total_sales,
COUNT(DISTINCT customer_id) as unique_customers,
AVG(sales_amount) as avg_sale
FROM `project.dataset.sales`
WHERE sale_date >= DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY)
GROUP BY region
ORDER BY total_sales DESC;
-- Criar modelo de previsão de vendas
CREATE OR REPLACE MODEL `project.dataset.sales_forecast`
OPTIONS(
model_type='linear_reg',
input_label_cols=['sales_amount']
) AS
SELECT
region,
product_category,
marketing_spend,
season,
sales_amount
FROM `project.dataset.historical_sales`;
-- Fazer previsões
SELECT *
FROM ML.PREDICT(MODEL `project.dataset.sales_forecast`,
(SELECT region, product_category, marketing_spend, season
FROM `project.dataset.new_data`));
-- Inserção em tempo real via API
from google.cloud import bigquery
client = bigquery.Client()
table_id = "project.dataset.events"
rows_to_insert = [
{"timestamp": "2024-01-15T10:30:00", "user_id": 123, "event": "click"},
{"timestamp": "2024-01-15T10:30:01", "user_id": 124, "event": "view"},
]
errors = client.insert_rows_json(table_id, rows_to_insert)
if errors == []:
print("Dados inseridos com sucesso")
else:
print(f"Erros: {errors}")
-- Consulta federada em Cloud SQL
SELECT
bq.product_id,
bq.sales_amount,
cs.product_name,
cs.category
FROM `project.dataset.sales` bq
JOIN EXTERNAL_QUERY(
'projects/project/locations/us/connections/mysql-conn',
'SELECT product_id, product_name, category FROM products'
) cs ON bq.product_id = cs.product_id;
Aspecto | BigQuery | Snowflake | Redshift | ClickHouse |
---|---|---|---|---|
Serverless | ✅ Totalmente | ✅ Parcialmente | ✅ Serverless disponível | ❌ Não |
ML Integrado | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ |
Performance | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
Facilidade de Uso | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ |
Custo | Médio-Alto | Alto | Médio | Baixo |