MongoDB
MongoDB
Para adicionar uma conexão de banco de dados, clique no ícone de engrenagem no canto superior direito e navegue até Configurações administrativas > Bancos de dados > Adicionar um banco de dados.
Versões suportadas
O Analytics suporta desde a versão mais antiga suportada do MongoDB até a versão estável mais recente. Veja Cronogramas do ciclo de vida do software MongoDB.
Conectando ao MongoDB
Existem duas formas de conectar ao MongoDB:
- Usando os campos do Analytics para preencher os detalhes da conexão.
- Colando a string de conexão.
Usando os campos do Analytics
A forma padrão de conectar ao MongoDB é preenchendo os detalhes da conexão nos campos que o Analytics disponibiliza:
- Host
- Nome do banco de dados
- Porta
- Nome de usuário
- Senha
- Authentication Database (opcional)
- Opções adicionais da string de conexão (opcional)
Também haverá a opção de Usar conexão segura (SSL). Ative o SSL e cole o conteúdo da cadeia de certificados SSL do servidor na caixa de texto. Essa opção está disponível somente para esse método de conexão (ou seja, não é possível incluir um certificado ao conectar usando uma string de conexão).
Configurações avançadas para conexão direta
- Usar DNS SRV ao conectar: Usar essa opção exige que o host fornecido seja um FQDN. Se estiver conectado a um cluster Atlas, talvez precise habilitar essa opção. Se não souber o que isso significa, deixe desabilitado.
Usando uma string de conexão
Se preferir conectar ao MongoDB usando uma string de conexão, clique em Colar uma string de conexão. A interface do Analytics atualizará para exibir um campo onde você poderá colar sua string de conexão.
Atualmente, o Analytics NÃO suporta os seguintes parâmetros em strings de conexão:
tlsCertificateKeyFile
tlsCertificateKeyFilePassword
tlsCAFile
Se precisar usar um certificado, conecte-se via o método padrão e habilite Usar conexão segura (SSL).
Configurações comuns a ambas as opções de conexão
- Usar túnel SSH: Algumas instalações de banco de dados só podem ser acessadas conectando-se através de um host bastion SSH. Essa opção também oferece uma camada extra de segurança quando uma VPN não está disponível. Habilitar essa opção geralmente torna a conexão mais lenta que uma direta.
- Reexecutar consultas para exploração simples: Quando ativado, o Analytics executa automaticamente consultas quando os usuários fazem explorações simples com os botões Resumir e Filtrar ao visualizar uma tabela ou gráfico. Você pode desativar se as consultas neste banco forem lentas. Essa configuração não afeta drill-throughs ou consultas SQL.
- Escolher quando os syncs e scans ocorrem: Veja syncs e scans.
- Refazer fingerprint periodicamente nas tabelas: Essa configuração — desativada por padrão — permite que o Analytics escaneie mais valores de campo durante os syncs, possibilitando comportamentos mais inteligentes, como auto-bin melhorado nos seus gráficos de barras.
Conectando a um cluster MongoDB Atlas
Colocar IPs na whitelist
Se estiver usando o Analytics Cloud, será necessário colocar na whitelist os IPs do Analytics Cloud no seu cluster Atlas. Se estiver usando o Analytics auto-hospedado, será necessário colocar na whitelist o IP da sua instância do Analytics.
- Faça login no seu cluster Atlas
- Acesse Acesso à Rede
- Adicione os endereços IP que o seu Analytics usa para conectar.
Conecte o Analytics ao seu cluster Atlas
A string de conexão fornecida na interface “Connect” do Atlas não inclui o banco de dados. O Analytics requer que você informe um nome de banco de dados ao conectar, então é necessário editar a string de conexão para adicionar o nome do banco de dados.
-
Faça login na sua conta Atlas
-
Selecione o cluster ao qual deseja conectar e clique em Connect.
-
Selecione Drivers.
-
Copie a string de conexão da seção Add your connection string into your application code.
- No Analytics, vá para Configurações Administrativas -> Bancos de dados e clique no botão Adicionar banco de dados.
- Selecione MongoDB no menu e defina um Nome de exibição para este banco de dados.
- Clique em “Colar a string de conexão” e cole sua string de conexão.
-
Edite a string de conexão para incluir o nome do banco de dados após a barra
/
:mongodb+srv://metabot:metapass@my-test-cluster.a5ej7.mongodb.net/DATABASE_NAME?retryWrites=true&w=majority&appName=my-test-cluster
Se estiver usando os campos do Analytics para preencher as informações de conexão para seu cluster Atlas em vez de usar a string de conexão, talvez precise ativar Usar DNS SRV ao conectar.
Veja mais informações sobre Opções avançadas.
Configurando SSL via linha de comando
Você pode inserir um certificado self-signed pela interface do Analytics (embora não ao usar a string de conexão), ou pode usar a linha de comando para adicionar um certificado self-signed.
cp /usr/lib/jvm/default-jvm/jre/lib/security/cacerts ./cacerts.jks keytool -import -alias cacert -storepass changeit -keystore cacerts.jks -file my-cert.pem
Depois, inicie o Analytics usando o store:
java -Djavax.net.ssl.trustStore=cacerts.jks -Djavax.net.ssl.trustStorePassword=changeit -jar metabase.jar
Saiba mais sobre configurar SSL com MongoDB.
Como o Analytics sincroniza dados no MongoDB
Como o MongoDB contém dados não estruturados, o Analytics adota uma abordagem diferente para sincronizar os metadados do seu banco. Para entender o esquema, o Analytics consulta os primeiros e últimos 500 documentos (a maior parte do cálculo é feita no MongoDB). Essa amostragem ajuda o Analytics a diferenciar campos datetime de campos string e fornece filtros pré-preenchidos para as pessoas. O motivo de o Analytics escanear apenas uma amostra dos documentos é que escanear todos os documentos em todas as coleções em cada sincronização causaria muito impacto na sua base.
Embora a amostragem faça um bom trabalho mantendo o Analytics atualizado, pode acontecer de alguns campos novos não serem detectados, o que pode causar problemas nas visualizações ou campos que simplesmente não aparecem nos seus resultados. Para mais informações, veja nosso guia de solução de problemas.
Preocupações gerais de conectividade
- Conecte usando
DNS SRV
, que é o método recomendado para clusters Atlas mais recentes. - Você verificou a whitelist do host do seu cluster? Ao testar uma conexão e ocorrer falha, já tentou colocar
0.0.0.0/0
na whitelist de IPs? Isso permite conexões de qualquer IP. Se souber os endereços IP ou bloco CIDR dos clientes, use-os em vez disso. - Conecte ao servidor secundário. Ao conectar a um cluster, sempre use o argumento
?readPreference=secondary
na string de conexão, que permite que o Analytics leia de um servidor secundário em vez de consumir recursos do servidor primário.
Adicionei campos ao meu banco de dados, mas não os vejo no Analytics
O Analytics pode não sincronizar todos os seus campos. Como qualquer documento em uma coleção MongoDB pode conter qualquer número de campos, a única forma de garantir cobertura 100% é escanear todo documento em toda coleção. O motivo de o Analytics não fazer a varredura completa é evitar sobrecarregar sua base.
Em vez disso, o Analytics obtém uma amostra dos campos em uma coleção escaneando 1000 documentos de amostra em cada coleção (os primeiros 500 e os últimos 500 documentos).
Se não estiver vendo todos os campos de uma coleção no Analytics, uma solução é incluir todas as chaves possíveis no primeiro documento da coleção, mesmo que com valor null. Assim, o Analytics conseguirá reconhecer o esquema correto para toda a coleção.
Roteamento de banco de dados
Veja Roteamento de banco de dados.
Zona perigosa
Veja Zona perigosa.
Leitura adicional
Consulte nosso guia de solução de problemas para problemas de conexão.
Leia a documentação para outras versões do Analytics.