Se você não estiver familiarizado com o MongoDB, é um modelo de dados NoSQL orientado a documentos, que usa documentos em vez de tabelas e linhas, como você encontraria com tabelas relacionais.
Dessa forma, devido à forma única de construção, o MongoDB é um dos melhores modelos de dados para banco de dados de alto desempenho com grande escalabilidade. Claro, isso não significa que não tenha concorrência, e o MongoDB é frequentemente comparado ao Firebase ou Cassandra.
Claro, o problema torna-se então que qualquer solicitação de consulta em um armazenamento de dados tão grande pode ser problemática e requer um certo nível de guru de consulta.
Felizmente, o MongoDB introduziu um recurso totalmente novo que não apenas elimina a consulta de código, mas também o torna tão simples quanto alguns cliques. Isso significa que você não precisa gastar muito tempo e problemas para fazer o mesmo tipo de consulta e associação que faria normalmente.
Consulta tradicional no MongoDB
Embora os bancos de dados orientados a documentos já sejam incrivelmente flexíveis, provavelmente ainda existem situações em que você pode precisar de dados ativos em várias coleções. Por exemplo, uma coleção pode conter dados do usuário e outra pode conter atividade do usuário. Isso pode até ser expandido para ter várias coleções de dados para diferentes aplicativos, sites e assim por diante.
É por isso que o MongoDB Query Language (MQL) nasceu e forneceu uma maneira para os programadores criarem consultas complexas. Na verdade, o MongoDB tem uma página inteira para documentos de consulta e como executá-los. Se você não estiver familiarizado com ele, aqui está um rápido processo passo a passo de como ele funciona, para que você possa comparar com os novos gráficos de pesquisa mais tarde:
Primeiro, você precisa conectar sua instância do MongoDB passando o URI para o shell do Mongo e, em seguida, usando --password
mongo.exe mongodb://$[hostlist]/$[database]?authSource=$[authSource] --username $[username]
Segundo, mude para o Banco de Dados, neste caso, usaremos um banco de dados de 'teste' hipotético
use test
Neste ponto, você carregaria mais dados no MongoDB, se necessário. Você pode fazer isso com o método insertMany():
db.inventory.insertMany( [
{ "item": "journal", "qty": 25, "size": { "h": 14, "w": 21, "uom": "cm" }, "status": "A" },
{ "item": "notebook", "qty": 50, "size": { "h": 8.5, "w": 11, "uom": "in" }, "status": "A" },
{ "item": "paper", "qty": 100, "size": { "h": 8.5, "w": 11, "uom": "in" }, "status": "D" },
{ "item": "planner", "qty": 75, "size": { "h": 22.85, "w": 30, "uom": "cm" }, "status": "D" },
{ "item": "postcard", "qty": 45, "size": { "h": 10, "w": 15.25, "uom": "cm" }, "status": "A" }
]);
Em seguida, vem a consulta real por meio da recuperação de documentos em uma coleção específica:
myCursor = db.inventory.find( { status: "D" } )
Geralmente, isso mostrará 20 documentos e retornará um cursor, mas se você quiser. Se o seu conjunto de resultados for maior, você desejará iterar sobre os resultados:
while (myCursor.hasNext()) {
print(tojson(myCursor.next()));
}
Finalmente, você verificaria os resultados para ter certeza de que tudo está correto. Tenha em mente que no exemplo abaixo, seus valores de ObjectID serão diferentes:
{
item: "paper",
qty: 100,
size: {
h: 8.5,
w: 11,
uom: "in"
},
status: "D"
},
{
item: "planner",
qty: 75,
size: {
h: 22.85,
w: 30,
uom: "cm"
},
status: "D"
}
Benefícios dos gráficos de pesquisa
Como você pode ver, o processo é bastante complicado com muitas etapas e, portanto, faz sentido que o MongoDB queira tornar o processo um pouco mais simplificado. Claro, vai um pouco além de apenas facilitar as coisas e há muitos benefícios nos gráficos de pesquisa.
Por exemplo, você pode obter melhores insights por meio do formato de exibição única juntando várias coleções. Mais importante, ter um gráfico visual e fácil de analisar atualizado ao vivo de acordo com suas especificações é inestimável. Isso geralmente permite que você obtenha informações quase imediatamente apenas a partir da inspeção visual, especialmente se você dividir as informações em outras categorias.
Finalmente, o maior benefício é não precisar aprender e dominar MQL para apenas um banco de dados, o que reduz a barreira de entrada para muitos programadores.
Como usar gráficos de pesquisa
Certo, então vimos como a consulta geralmente funciona no MongoDB e temos uma boa ideia de como os gráficos de consulta podem nos ajudar a obter informações mais relevantes mais rapidamente, mas como isso realmente funciona?
Bem, os passos são relativamente simples:
- Primeiro, você precisa escolher a fonte de dados selecionando-a no menu suspenso no canto superior esquerdo.
- Em seguida, clique no botão ‘ . . .' do campo entre suas coleções e clique em 'Campo de pesquisa'
- Quando a nova janela aparecer, selecione a "Fonte de dados remota" de onde você extrairá os dados.
- Depois, você precisa selecionar "Campo remoto" e esse seria o campo comum entre suas duas fontes de dados.
- Finalmente, você pode salvar um nome específico para o campo de resultado e, caso contrário, basta clicar em 'Salvar'
E é basicamente isso! Agora você pode arrastar e soltar dos novos campos no construtor de gráficos. Não se esqueça de escolher um método de redução de matriz também, ou você pode não ver nenhum gráfico aparecendo para você.
Familiarizando-se com gráficos do MongoDB
Claro, é pertinente neste momento mencionar que o novo recurso LookUp faz parte do MongoDB Charts, e o próprio MongoDB tem alguns artigos interessantes para ajudá-lo a se orientar com o software:
- Novas maneiras de personalizar seus gráficos
- Visualização dos dados do pedido
- Adicionar um campo de pesquisa (diferente dos gráficos de pesquisa)
Conclusão
Como você pode ver, o novo LookUp Charts é uma ferramenta incrivelmente poderosa que reduz enormemente o conhecimento técnico das consultas do MongoDB. Com apenas algumas etapas simples, você pode ver um gráfico de informações reunidas de várias coleções e entender novas informações quase imediatamente.
Compare isso com o método antigo de fazer isso que exigia várias etapas de codificação, além de entender esse código, e você começará a ver o quão brilhante é essa nova versão.