As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Conecte-se a uma fonte de dados do MongoDB
A fonte de dados do MongoDB permite que você visualize dados do MongoDB na Amazon Managed Grafana.
nota
Essa fonte de dados é somente para a Grafana Enterprise. Para ter mais informações, consulte Gerencie o acesso aos plug-ins corporativos.
Além disso, em espaços de trabalho compatíveis com a versão 9 ou mais recente, essa fonte de dados pode exigir a instalação do plug-in apropriado. Para ter mais informações, consulte Amplie seu espaço de trabalho com plug-ins.
Uso
Editor de consultas
O editor de consultas suporta a mesma sintaxe do MongoDB Shell, com algumas limitações: * Você só pode executar um comando/consulta. * Somente comandos de leitura são suportados: localizar e agregar * A maioria dos construtores de objetos não é suportada (com exceção do ISODate, que é compatível)
O editor expande a sintaxe do MongoDB Shell das seguintes maneiras:
-
Seleção do banco de dados — Você pode fornecer o nome do banco de dados no lugar do “db” normal:
nota
Você ainda pode usar “db”. Ele se referirá ao banco de dados padrão em sua string de conexão.
sample_mflix.movies.find()
-
Classificação agregada — Normalmente, a classificação acontece com uma etapa dentro do pipeline agregado, no entanto, o nível gratuito do MongoDB Atlas não permite a classificação. Expandimos a sintaxe para permitir isso para aqueles que usam o nível gratuito.
nota
O MongoDB não executa a classificação com essa sintaxe. A classificação acontece depois que os resultados são consultados na coleção.
sample_mflix.movies.aggregate({}).sort({"time": 1})
-
Com um editor em branco, Ctrl + Space mostrará uma seleção de todos os bancos de dados disponíveis.
-
Inserir um ponto após o banco de dados mostrará uma seleção de todas as coleções disponíveis para esse banco de dados.
-
Inserir um ponto após a coleção mostrará os métodos de consulta disponíveis.
-
Inserir um ponto após o método de consulta mostrará funções adicionais: sort/limit.
Executando a consulta
Pressione Cmd + S para executar a consulta
Séries temporais
Ao visualizar dados de séries temporais, o plug-in precisa saber qual campo usar como hora. Basta projetar o campo com um alias de nome “time”. O tipo de dados do campo deve ser uma data.
Você pode coagir tipos de dados não datados até o momento. Isso permitirá o uso de campos sem data como o tempo da série temporal. O exemplo a seguir mostra como converter o campo int “ano” em uma data projetada como “hora” usando o operador de pipeline MongoDB $dateFromParts .
sample_mflix.movies.aggregate([ {"$match": { "year": {"$gt" : 2000} }}, {"$group": { "_id": "$year", "count": { "$sum": 1 }}}, {"$project": { "_id": 0, "count": 1, "time": { "$dateFromParts": {"year": "$_id", "month": 2}}}} ] ).sort({"time": 1})
Diagnóstico
Atualmente, há suporte para os seguintes comandos de diagnóstico: “stats”, “ServerStatus”, “Status”, “GetLog”, replSetGet "“, “ConnectionStatus”, connPoolStats “BuildInfo”, “DBStats”, “HostInfo”, “LockInfo”
Exemplos:
admin.connectionStatus() // run the connectionStatus command admin.connectionStatus({"authInfo.authenticatedUserRoles": 1}) // run and only return the "authInfo.authenticatedUserRoles" field admin.connPoolStats({arg: "pool"}) // run the connPoolStats command and pass 1 argument admin.serverStatus({args: {repl: 0, metrics:0}}) // run the serverStatus command and pass multiple args
Macros
Você pode referenciar o intervalo de tempo do painel em suas consultas.
-
$__timeFrom
— uma macro que faz referência à hora de início do painel -
$__timeTo
— uma macro que faz referência ao horário de término do painel
$__timeTo - ``` sample_mflix.movies.find({released: {$gt: "$__timeFrom"}}).sort({year: 1})
Variáveis do modelo
O MongoDB suporta a ideia de “Variáveis compostas”, que permitem que você use uma variável como várias variáveis para realizar filtros complexos de várias chaves.
Para criar uma variável composta, use a convenção de nomenclatura de dividir as variáveis usando sublinhados (deve começar com sublinhado): _var1_var2
Ao consultar, a resposta deve estar no formato: val1-val2
Exemplo: quero filtrar os resultados pelo nome do filme e pelo ano.
-
Crie uma variável do tipo Query:
_movie_year
-
Defina a consulta variável como uma consulta que retornará uma matriz de itens com uma propriedade de ano do filme, conforme mostrado no exemplo a seguir.
// Example sample_mflix.movies.aggregate([ {"$match": {year: {"$gt": 2011}}}, {"$project": {_id: 0, movie_year: {"$concat": ["$title", " - ", {"$toString":"$year"}]}}} ])
// [{"movie-year": "Ted - 2016"}, {"movie-year": "The Terminator - 1985"}]
-
Agora, em sua consulta, você pode referenciar “Filme” e “Ano” como variáveis de modelo separadas usando a sintaxe “$_variable”.
Usando filtros ad-hoc
Além da variável padrão do tipo “filtro ad-hoc” de qualquer nome, uma segunda variável auxiliar deve ser criada. Deve ser um tipo “constante” com o nome `mongodb_adhoc_query` e um valor compatível com o editor de consultas. O resultado da consulta será usado para preencher os filtros selecionáveis. Você pode optar por ocultar essa variável da visualização, pois ela não serve para mais nada.
sample_mflix.movies.aggregate([ {"$group": { "_id": "$year"}}, {"$project": { "year": "$_id","_id": 0 }} ] )