Explore o novo chatbot do Developer Center! O MongoDB AI chatbot pode ser acessado na parte superior da sua navegação para responder a todas as suas perguntas sobre o MongoDB .

Learn why MongoDB was selected as a leader in the 2024 Gartner® Magic Quadrant™
Desenvolvedor do MongoDB
Central de desenvolvedor do MongoDBchevron-right
Produtoschevron-right
Atlaschevron-right

Pesquisa entre clusters usando Atlas Search e Data Federation

Pavel Duchovny3 min read • Published Jul 22, 2022 • Updated Jul 22, 2022
AtlasPesquisa
Ícone do FacebookÍcone do Twitterícone do linkedin
Avalie esse Artigo
star-empty
star-empty
star-empty
star-empty
star-empty
O document model é a melhor maneira de trabalhar com dados e é o principal fator para impulsionar a popularização do MongoDB. O document model também está ajudam o MongoDB a inovar suas próprias soluções para atender aos requisitos de dados mais sofisticados do mundo.
Atlas Data Federation, permite formar instâncias de banco de dados federadas que abrangem várias fontes de dados, como diferentes clusters do Atlas, buckets do AWS S3 e outras fontes de HTTPs. Agora, um aplicativo ou serviço pode trabalhar com seu cluster individual com recursos dedicados e conformidade de dados, enquanto as queries podem ser executadas em uma união dos conjuntos de dados. Isso é ótimo para análises ou para os painéis de visualização global e muitos outros casos de uso em sistemas distribuídos.
O Atlas Search também é um produto recente que permite que os aplicativos criem pesquisas baseadas em relevância com a tecnologia Lucene diretamente em suas collection do MongoDB. Embora ambos os produtos sejam incríveis por si só, eles podem trabalhar juntos para formar uma pesquisa de texto robusta e de vários clusters para resolver desafios que eram difíceis de resolver antes.

Exemplo de caso de uso

Plotar atributos em um mapa com base em coordenadas geográficas é uma necessidade comum para muitos aplicativos. O código complexo precisa ser adicionado se quisermos mesclar diferentes fontes de pesquisa em um conjunto de dados com base na relevância ou em outros fatores de pontuação em uma única solicitação.
Com as queries federadas do Atlas executadas nos índices de pesquisa do Atlas, essa tarefa se torna tão fácil quanto disparar uma query.
No meu caso de uso, tenho dois clusters: cluster-airbnb (dados do Airbnb) e cluster-quescooking (dados do restaurante). Para a maioria dos meus aplicativos, ambos os conjuntos de dados não têm nada em comum e, portanto, são mantidos em clusters diferentes para cada aplicativo.
Atlas Clusters para cada aplicativo
No entanto, se eu estiver interessado em plotar os locais de restaurantes e Airbnbs (e talvez lojas, mais tarde) em torno do usuário, terei que mesclar os conjuntos de dados com um índice de pesquisa criado com base nos dados mesclados.

Com queries federadas, tudo se torna mais fácil

Conforme mencionado acima, os dois aplicativos estão sendo executados em dois Atlas clusters separados devido à sua natureza de microsserviço independente. Eles podem até ser colocados em diferentes cloud e regiões, como nesta imagem.
Os dados dos restaurantes são armazenados em uma collection chamada “restaurants” seguida por uma modelagem comum, como gradas/menu/localização.
O aplicativo Airbnb armazena um modelo de conjunto de dados diferente que mantém os dados do Airbnb, como reservas/detalhes do apartamento/localização.
O poder do document model e das consultas federadas é que esses conjuntos de dados podem se tornar um se criarmos uma instância de banco de dados federado e agrupá-los em um "virtual collection" chamado "pointsOfInterest."
Configuração do Atlas Query Federation
Os conjuntos de dados agora podem ser consultados como se tivéssemos uma coleção chamada "pointsOfInterest" unindo os dois.

Vamos adicionar Atlas Search à mistura

Como as collections estão localizadas no Atlas, podemos usar facilmente o Atlas Search para indexar cada uma individualmente. Também é mais provável que já tenhamos feito isso, pois nossos aplicativos subjacentes exigem recursos de pesquisa de restaurantes e instalações do Airbnb.
Configuração do índice de pesquisa do Atlas
No entanto, se nos certificarmos de que os nomes dos índices são idênticos — por exemplo, "default"— e que os campos-chave para pesquisa especial — como geo — são os mesmos (por exemplo, "location"), podemos executar consultas de pesquisa federadas em "pointsOfInterest." Podemos fazer isso porque as consultas federadas são propagadas para cada fonte de dados individual que compõe a collection virtual. Com Atlas Search, ele é surpreendentemente poderoso, pois podemos obter resultados com uma mesclagem correta das pontuações de pesquisa entre todos os nossos conjuntos de dados. Isso significa que, se os pontos de interesse da geo search estiverem próximos à minha localização, obteremos o Airbnb ou restaurantes ordenados corretamente pela distância. O que é ainda mais legal é que o Atlas Data Federation “pushes down” de forma inteligente “” é o máximo de consulta possível, então a operação de pesquisa será feita localmente nos clusters e a união será feita na camada de federação, tornando essa operação o mais eficiente possível.
Query geográfica do Compass

Finalmente, vamos mapeá-lo

Podemos pegar a query que acabamos de executar no Compass e exportá-la para o MongoDB Charts, nossa oferta de gráficos nativos que pode se conectar diretamente a uma instância do banco de dados federado, traçando os dados em um mapa:

Resumo

Novos produtos oferecem novo poder e novas possibilidades. Unir as força do Data Federation e doAtlas Search permite que os criadores criem aplicativos facilmente como nunca antes. Comece a renovar hoje mesmo com o MongoDB Atlas.

Ícone do FacebookÍcone do Twitterícone do linkedin
Avalie esse Artigo
star-empty
star-empty
star-empty
star-empty
star-empty
Relacionado
Tutorial

Acelere sua experiência em AI : simplifique a geração de AI RAG com o MongoDB Atlas e o mecanismo de lógica de AI Vertex do Google


Aug 16, 2024 | 6 min read
Tutorial

Múltiplas conexões MongoDB em um único aplicativo


Apr 02, 2024 | 10 min read
Tutorial

Otimize com o MongoDB Atlas: Performance Advisor, analisador de queries e muito mais


Jan 30, 2024 | 6 min read
Artigo

Integração do Atlas Data Lake SQL para formar interações de dados poderosas


Jun 12, 2023 | 3 min read
Sumário