CloudBeaver
Gestão de Bases de Dados via Web
O CloudBeaver é uma ferramenta web open source de gestão e administração de bases de dados, desenvolvida pela DBeaver. Baseada na arquitetura do DBeaver (um dos clientes de bases de dados mais populares do mundo), o CloudBeaver oferece uma interface gráfica acessível via navegador, eliminando a necessidade de instalação de software cliente em cada estação de trabalho.
No TDP Kubernetes, o CloudBeaver é um componente exclusivo da edição Kubernetes, fornecendo uma interface web unificada para administração de todas as bases de dados e engines de consulta da plataforma.
Porquê CloudBeaver?
A inclusão do CloudBeaver no TDP Kubernetes traz diversos benefícios:
- Acesso centralizado: administre todas as bases de dados do TDP a partir de um único ponto de acesso via navegador
- Zero instalação no cliente: não requer instalação de software nas estações de trabalho dos utilizadores
- Interface intuitiva: editor SQL com autocomplete, visualização de dados em tabela, e navegação por esquemas
- Multi-base: suporta conexão simultânea com PostgreSQL, ClickHouse, Trino e outros engines SQL
- Controlo de acesso: gestão de utilizadores e permissões por conexão de base de dados
- Partilha de conexões: administradores podem configurar conexões partilhadas para toda a equipa
Principais Recursos
Editor SQL
O CloudBeaver disponibiliza um editor SQL completo com:
- Autocomplete inteligente: sugestões de tabelas, colunas e funções com base no contexto
- Syntax highlighting: destaque de sintaxe SQL para facilitar a leitura e escrita de queries
- Múltiplos separadores: execução simultânea de consultas em diferentes bases de dados
- Histórico de consultas: registo das consultas executadas para referência futura
- Exportação de resultados: exportação em CSV, JSON e outros formatos
Navegação de Esquemas
A interface permite navegar visualmente pela estrutura das bases de dados:
- Exploração de schemas, tabelas, colunas e índices
- Visualização de tipos de dados e constraints
- Inspeção de views e stored procedures
- Visualização de DDL (Data Definition Language) dos objetos
Visualização de Dados
O CloudBeaver oferece modos de visualização flexíveis para os resultados das consultas:
- Modo tabela: visualização tradicional em grid com ordenação e filtros
- Modo texto: visualização em formato texto para dados complexos
- Edição inline: edição direta dos dados na tabela (quando permitido)
Gestão de Conexões
Os administradores podem gerir conexões de forma centralizada:
- Configurar conexões para todas as bases de dados do TDP
- Definir quais conexões são partilhadas com quais utilizadores
- Configurar templates de conexão para facilitar o acesso
- Monitorizar conexões ativas e sessões de utilizadores
Integração com o TDP Kubernetes
No TDP Kubernetes, o CloudBeaver é pré-configurado para se conectar aos seguintes componentes:
| Componente | Driver | Porta Padrão | Uso Típico |
|---|---|---|---|
| PostgreSQL | PostgreSQL JDBC | 5432 | Administração da base de dados relacional |
| ClickHouse | ClickHouse JDBC | 8123 | Consultas analíticas e exploração de dados |
| Trino | Trino JDBC | 8080 | Consultas federadas em múltiplas fontes |
| Hive Metastore | Hive JDBC | 10000 | Exploração de metadados de tabelas |
Fluxo de Trabalho Típico
- O administrador configura as conexões das bases de dados do TDP no CloudBeaver
- Os analistas acedem ao CloudBeaver via navegador e autenticam-se
- As conexões partilhadas aparecem automaticamente na lista de conexões disponíveis
- Os analistas podem explorar esquemas, executar consultas SQL e exportar resultados
- O histórico de consultas permite rastrear e reutilizar queries anteriores
Arquitetura
O CloudBeaver é composto por:
- Frontend: aplicação web React acessível via navegador
- Backend: servidor Java baseado no Eclipse Equinox (OSGi)
- Drivers JDBC: conectores para cada tipo de base de dados suportado
- Workspace: armazenamento de configurações, conexões e preferências dos utilizadores
No TDP Kubernetes, o CloudBeaver é implantado como um Deployment com um Service do tipo ClusterIP, acessível via Ingress Controller.
Segurança
O CloudBeaver oferece mecanismos de segurança para proteger o acesso aos dados:
- Autenticação local: gestão de utilizadores e palavras-passe pelo próprio CloudBeaver
- Autenticação LDAP: integração com diretórios LDAP/Active Directory para autenticação corporativa
- Permissões por conexão: controlo granular de quais utilizadores podem aceder a quais bases de dados
- Conexões somente leitura: possibilidade de configurar conexões que permitem apenas consultas (SELECT)
- Logs de auditoria: registo de todas as ações realizadas pelos utilizadores
No TDP Kubernetes, recomenda-se configurar o CloudBeaver com autenticação LDAP quando disponível, alinhando-se com a estratégia de autenticação centralizada da organização.
Comparação com DBeaver
| Característica | DBeaver Desktop | CloudBeaver |
|---|---|---|
| Instalação | Local (por estação) | Centralizada (servidor) |
| Acesso | Aplicação desktop | Navegador web |
| Gestão | Individual | Centralizada por admin |
| Partilha | Manual | Conexões partilhadas |
| Recursos | Completo | Subconjunto focado em consultas |
| Ideal para | Desenvolvimento | Equipas e ambientes cloud |
Boas Práticas
- Configure conexões somente leitura para analistas que não precisam de modificar dados
- Organize conexões em pastas agrupando por ambiente (desenvolvimento, produção) ou por componente
- Utilize templates de conexão para padronizar configurações entre a equipa
- Monitorize sessões ativas para identificar consultas de longa duração que possam impactar a performance
- Habilite autenticação LDAP em ambientes corporativos para evitar proliferação de credenciais
Detalhes do Projeto CloudBeaver
O CloudBeaver tem o seu Frontend desenvolvido em TypeScript/React e o Backend em Java, baseado no framework Eclipse Equinox (OSGi), partilhando a mesma base do DBeaver Desktop.
Recursos do CloudBeaver
Fonte(s):