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 .

Junte-se a nós no Amazon Web Services re:Invent 2024! Saiba como usar o MongoDB para casos de uso de AI .
Desenvolvedor do MongoDB
Central de desenvolvedor do MongoDBchevron-right
Produtoschevron-right
Atlaschevron-right

Início rápido: Introdução ao MongoDB Atlas e Python

SM
Sujee Maniyam4 min read • Published Apr 09, 2024 • Updated Apr 10, 2024
AtlasPython
Ícone do FacebookÍcone do Twitterícone do linkedin
Avalie esse Início rápido
star-empty
star-empty
star-empty
star-empty
star-empty

O que você vai aprender

  • Como configurar o MongoDB Atlas no cloud
  • Como carregar dados de amostra
  • Como consultar dados de amostra usando a biblioteca PyMongo

Onde está o código?

O Notebook Jupyter para este tutorial de início rápido pode ser encontrado aqui.

Etapa 1: Implante o MongoDB Atlas

Aqui está um guia rápido adotado da documentação oficial:

Crie uma conta Atlas gratuita

Criar uma instância gratuita

  • Você pode escolher qualquer instância de nuvem.
  • Escolha o nível “FREE.
  • Siga o assistente de configuração e atribua um nome à sua instância.
  • Anote seu nome de usuário e senha para se conectar à instância.
  • Adicione 0.0.0.0/0 à lista de acesso IP.
Isso torna a instância disponível a partir de qualquer endereço IP, o que é adequado para uma instância de teste.
Veja a captura de tela abaixo para saber como adicionar o IP:
Editando as configurações de acesso à rede na IU do Atlas MongoDB

Carregar dados de amostra

Em seguida, vamos carregar os conjuntos de dados de amostra disponíveis no Atlas por padrão. Observe que o carregamento dos dados pode demorar alguns minutos.
Carregando conjuntos de dados de amostra na UI do MongoDB Atlas

Visualize os dados de amostra.

Você pode navegar pelos dados na UI do Atlas. Vejamos a coleçãoembedded_movies no banco de dadossample_mflix . Você verá que cada documento tem detalhes como título, ano, lote etc.
Visualizando dados de exemplo na UI do MongoDB Atlas

Etapa 2: configurar pré-requisitos

Para conectar ao Atlas, precisamos da connection string MongoDB. Veja como você consegue isso:
  • Navegue até a IU do Atlas.
  • Selecione o banco de dados ao qual você deseja se conectar.
  • Escolha a opçãoConectar para prosseguir.
  • Na seção de conexão, clique em Drivers para ver os detalhes da conexão.
  • Por fim, copie a cadeia de conexão exibida para uso na configuração do aplicativo.
Veja as capturas de tela abaixo para obter orientação:
insira a descrição da imagem aqui
Obtendo a connection string a partir da UI do MongoDB Atlas
Depois de obter a connection string, atribua-a a uma variável em seu código Python:
1ATLAS_URI = "Enter your Atlas URI value here"
Estamos mantendo isso muito simples para fins deste início rápido. Para sistemas de produção, considere usar bibliotecas como python-dotenv para obter definições de configuração.

Etapa 3: instalar as bibliotecas necessárias

Para nos conectar ao nosso Atlas cluster usando o cliente PyMongo , precisaremos instalar as seguintes bibliotecas:
1! pip install pymongo[srv]==4.6.2
Precisamos apenas de um pacote aqui:
  • pymongo: biblioteca Python para se conectar ao MongoDB Atlas.

Etapa 4: Defina a classe AtlasClient

Esta classeAtlasClient lidará com tarefas como estabelecer conexões, executar queries etc. Ela tem os seguintes métodos:
  • init: Inicializa um objeto da classe AtlasClient, com o cliente MongoDB (mongodb_client) e o nome do banco de dados (database) como atributos
  • ** ping: Usado para testar se podemos conectar ao nosso cluster do Atlas
  • get_collection: A coleção do MongoDB à qual se conectar
  • encontrar: Retorna os resultados de uma query; leva o nome da collection (collection) para consultar e quaisquer critérios de pesquisa (filter) como argumentos
1from pymongo import MongoClient
2
3class AtlasClient ():
4
5 def __init__ (self, altas_uri, dbname):
6 self.mongodb_client = MongoClient(altas_uri)
7 self.database = self.mongodb_client[dbname]
8
9 ## A quick way to test if we can connect to Atlas instance
10 def ping (self):
11 self.mongodb_client.admin.command('ping')
12
13 def get_collection (self, collection_name):
14 collection = self.database[collection_name]
15 return collection
16
17 def find (self, collection_name, filter = {}, limit=0):
18 collection = self.database[collection_name]
19 items = list(collection.find(filter=filter, limit=limit))
20 return items

Etapa 5: Conecte-se ao MongoDB Atlas

Nesta fase, estabeleceremos uma conexão com a collectionembedded_movies dentro do banco de dadossample_mflix. Para confirmar que nossa conexão foi bem-sucedida, realizaremos uma operaçãoping().
1DB_NAME = 'sample_mflix'
2COLLECTION_NAME = 'embedded_movies'
3
4atlas_client = AtlasClient (ATLAS_URI, DB_NAME)
5atlas_client.ping()
6print ('Connected to Atlas instance! We are good to go!')
Se você receber um erro “Connection failed, certifique-se 0.0.0.0/0 é adicionado como um endereço IP permitido para conexão (consulte Etapa 1).

Etapa 6: executar uma query de amostra

Vamos executar uma Atlas Search por filmes usando o métodofind(). O métodofind() usa dois parâmetros. O primeiro parâmetro, collection_name, determina a specific collection a ser consultada — neste caso, incorporado_movies. O segundo parâmetro, limit, restringe a pesquisa para retornar apenas o número especificado de resultados — neste caso, 5.
1movies = atlas_client.find (collection_name=COLLECTION_NAME, limit=5)
2print (f"Found {len (movies)} movies")
3
4# print out movie info
5for idx, movie in enumerate (movies):
6 print(f'{idx+1}\nid: {movie["_id"]}\ntitle: {movie["title"]},\nyear: {movie["year"]}\nplot: {movie["plot"]}\n')
Os resultados são retornados como uma lista e estamos simplesmente iterando sobre eles e imprimindo os resultados.
1Found 5 movies
21
3id: 573a1390f29313caabcd5293
4title: The Perils of Pauline,
5year: 1914
6plot: Young Pauline is left a lot of money when her wealthy uncle dies. However, her uncle's secretary has been named as her guardian until she marries, at which time she will officially take ...
7
82
9id: 573a1391f29313caabcd68d0
10title: From Hand to Mouth,
11year: 1919
12plot: A penniless young man tries to save an heiress from kidnappers and help her secure her inheritance.
13...

Query por um atributo

Se quisermos fazer query por um determinado atributo, podemos passar um argumento filterpara o métodofind(). filter é um dicionário com pares de valores-chave. Portanto, para encontrar filmes do ano 1999, definimos o filtro como {"year" : 1999}.
1movies_1999 = atlas_client.find(collection_name=COLLECTION_NAME,
2 filter={"year": 1999}
Observamos que 81 filmes retornam como resultado. Vamos imprimir os primeiros.
1======= Finding movies from year 1999 =========================
2Found 81 movies from the year 1999. Here is a sample...
31
4id: 573a139af29313caabcf0cfd
5title: Three Kings,
6year: 1999
7plot: In the aftermath of the Persian Gulf War, 4 soldiers set out to steal gold that was stolen from Kuwait, but they discover people who desperately need their help.
8
92
10id: 573a139af29313caabcf0e61
11title: Beowulf,
12year: 1999
13plot: A sci-fi update of the famous 6th Century poem. In a beseiged land, Beowulf must battle against the hideous creature Grendel and his vengeance seeking mother.
14

Conclusão

Neste início rápido, aprenderam como configurar o MongoDB Atlas na nuvem, carregamos alguns dados de exemplo em nosso cluster e executamos query dos dados usando o cliente PyMongo . Para aproveitar o que você aprendera neste início rápido, aqui estão mais alguns recursos:
Principais comentários nos fóruns
Ainda não há comentários sobre este artigo.
Iniciar a conversa

Ícone do FacebookÍcone do Twitterícone do linkedin
Avalie esse Início rápido
star-empty
star-empty
star-empty
star-empty
star-empty
Relacionado
Notícias e anúncios

RAG facilitado com o MongoDB Atlas e o Azure OpenAI


Nov 20, 2024 | 4 min read
Tutorial

Como escolher o melhor modelo de incorporação para seu aplicativo LLM


Nov 07, 2024 | 16 min read
Tutorial

Usando o driver Node.js MongoDB com AWS Lambda


Jan 23, 2024 | 5 min read
Tutorial

Transmissão de dados do MongoDB para o BigQuery usando conectores Confluent


Jul 11, 2023 | 4 min read
Sumário