Metabase
Esta documentação descreve a implementação e configuração do Metabase nos projetos do Datahub Igarapé.
Introdução ao Metabase
O Metabase é uma ferramenta de Business Intelligence (BI) open source que permite criar dashboards interativos, relatórios e visualizações de dados sem necessidade de conhecimento técnico avançado. Funciona como uma camada de apresentação que se conecta a diversas fontes de dados, transformando consultas complexas em insights visuais acessíveis para toda a organização.
No contexto do Datahub, o metabase será conectado com o projeto igarape-datahub onde ficam armazenados os dados validados e tabelas derivadas construidas a partir deles.
Tutorias e guias de melhores práticas
Recomendamos consultar os seguintes tutorias e recursos para entender como usufruir do metabase com boas práticas: - Tutorial de primeiros passos com o Metabase - Guia Oficial de Melhores Práticas: Documentação oficial com diretrizes para configuração e uso - Dashboard Design Guidelines: Princípios de design para dashboards eficazes - Query Performance Optimization: Técnicas para otimização de consultas e performance - CONHEÇA O METABASE | GUIA COMPLETO PELA FERRAMENTA: Vídeo introdutório sobre o metabase - Metabase Tutorials - Matthew Hefferon : Série vídeos introdutórios sobre o metabase - Metabase Tutoriais - Gabriel Santos**: Série vídeos introdutórios sobre o metabase
Conexão com BigQuery
Integração com o Projeto Datahub
O Metabase está configurado para conectar-se ao projeto datahub-igarape no Google BigQuery, proporcionando acesso direto aos datasets e tabelas do datahub. Isto é feito utilizando a conta de serviço metabase-user, para qual foi atribuida o papel de Usuário Leitor:
Gestão de Usuários e Acessos
Painel Administrativo
O gerenciamento de usuários e controle de acessos no Metabase é realizado através do painel administrativo, acessível apenas por usuários com privilégios de administrador. Este painel centraliza todas as funcionalidades de governança da plataforma.
Funcionalidades de Gestão
- Criação e remoção de usuários: Controle completo do ciclo de vida das contas
- Definição de grupos e permissões: Organização hierárquica de acessos
- Configuração de coleções: Estruturação lógica de dashboards e análises
- Auditoria de atividades: Monitoramento de uso e performance da plataforma
Configurações de Ambiente
Repositório e Organização
O código do Metabase está hospedado no repositório datalake-2025
Configurações de Performance
As configurações de Virtual Machine (VM) foram dimensionadas seguindo as recomendações oficiais do Metabase at Scale.
Configurações de Administrador no Metabase
As configurações descritas neste documento são realizadas no painel Admin do Metabase, acessível apenas por usuários com privilégios de administrador. O foco principal é a redução de custos de processamento no BigQuery mantendo funcionalidades essenciais.
🗄️ 1. Configurações de Banco de Dados
1.1 ID de Usuário e Hash de Consulta
Status: ❌ DESATIVADO
📝 Descrição
Esta configuração controla se o Metabase inclui identificadores únicos nas consultas enviadas ao BigQuery.
⚙️ Comportamento
- Quando ativa: Cada consulta inclui ID do usuário e hash único
- Quando desativa: Consultas são executadas pela conta de serviço do Metabase
💰 Impacto nos Custos
- ✅ Benefícios: Reduz custos significativamente por permitir cache de consultas frequentes
- ❌ Malefícios:
- Reduz capacidade de auditoria
- Dificulta depuração de problemas
- Todas as consultas aparecem como executadas pela conta de serviço no BigQuery
🔍 Recomendação
Manter desativado para projetos com foco em redução de custos, especialmente em ambientes com alto volume de consultas repetitivas.
1.2 Sincronizações e Varreduras de Metadados
📊 Configuração Padrão vs. Implementada
| Tipo de Sincronização | Padrão Metabase | Configuração Atual | Justificativa |
|---|---|---|---|
| Sincronização Leve | A cada hora | 1x por dia | Reduzir consultas de 10MB mínimas |
| Varredura Intensiva | Diariamente | Sob demanda | Evitar custos desnecessários |
🔄 Sincronização Leve
- Função: Atualização dos metadados das tabelas
- Custo: 10MB por consulta (valor mínimo BigQuery)
- Frequência atual: 1 vez por dia
- Motivo: Com o crescimento do Datahub, sincronizações horárias se tornariam custosas
🔍 Varredura Intensiva (Scan de Valores)
- Função: Verificar novos valores em campos para filtros
- Quando executa: Somente quando um usuário adiciona novo filtro
- Comportamento:
- Usuário adiciona filtro → Metabase escaneia campos mapeados
- Exibe lista de opções disponíveis para o filtro
- Não executa varreduras preventivas/automáticas
Monitoramento Recomendado
- Acompanhar tempo de resposta de novos filtros
- Monitorar custos do BigQuery mensalmente
- Revisar configurações conforme crescimento da base de dados
✅ Resumo das Configurações
| Configuração | Status | Objetivo | Impacto |
|---|---|---|---|
| ID de usuário em consultas | ❌ Desativado | Reduzir custos | Alto impacto positivo nos custos |
| Sincronização leve | 🕐 1x/dia | Controlar custos | Redução significativa de consultas |
| Varredura intensiva | 🎯 Sob demanda | Eliminar custos desnecessários | Custos apenas quando necessário |
1.3 Datasets conectados ao Metabase
No momento, todos os datasets e tabelas dos conjuntos de dados no projeto igarape_datahub estão sendo indexados no metabase. É possível restrigir a indexação a datasets e tabelas específicos se for necessário.
Arquitetura de Deploy
O deploy utiliza Docker Compose baseado na configuração do metabase-traefik-compose.
Metabase Container
O container principal executa a aplicação Metabase, conectando-se ao PostgreSQL para persistência de dados e configurações. Este componente processa todas as consultas dos usuários, gerencia sessões e renderiza a interface web.
PostgreSQL Database
Serve como backend de dados para o Metabase, armazenando metadados de configuração, definições de dashboards, cache de resultados de consultas e informações de usuários. O PostgreSQL garante persistência e performance superior comparado ao banco H2 padrão.
Traefik Reverse Proxy
Atua como proxy reverso e load balancer, gerenciando o roteamento de requisições HTTP/HTTPS para o Metabase. O Traefik proporciona terminação SSL automática e certificados Let's Encrypt.