Pitão

Como criar um banco de dados no MongoDB usando Python

Como criar um banco de dados no MongoDB usando Python
Não há dúvida de que Python é uma linguagem de programação poderosa e popular capaz de lidar com qualquer projeto que lançamos em seu caminho. É muito flexível e pode se ajustar a vários ambientes de desenvolvimento, como teste de penetração para desenvolvimento web e aprendizado de máquina.

Quando acoplado a grandes aplicativos, como aqueles que exigem bancos de dados, o Python adiciona mais funcionalidade e pode ser difícil de trabalhar, especialmente para iniciantes.

Python sabe que esta adição nos fornece melhores maneiras de adicionar bancos de dados aos nossos projetos sem comprometer nosso fluxo de trabalho usando um banco de dados NoSQL simples e intuitivo. Usando Python e um banco de dados NoSQL popular, MongoDB, o desenvolvimento se torna mais confortável e, no geral, divertido.

Este artigo examinará vários conceitos de banco de dados MongoDB para dar a você um entendimento firme do que isso envolve. Depois disso, abordaremos como instalar o MongoDB no Linux e mostraremos como usar Python para interagir com o MongoDB.

Vamos começar:

Uma introdução básica ao MongoDB

MongoDB é um banco de dados de código aberto baseado em documentos que oferece alta escalabilidade e flexibilidade. Como a maioria dos bancos de dados NoSQL, o MongoDB usa JSON para armazenar os dados, tornando-o um dos bancos de dados mais flexíveis e fáceis de trabalhar porque não requer esquema.

Graças à sua flexibilidade e facilidade de aprendizado, os desenvolvedores costumam usar o MongoDB para grandes projetos que requerem velocidades rápidas de leitura e gravação de dados. Ele vem pré-empacotado com drivers para linguagens de programação populares, eliminando assim a necessidade de aprender novas linguagens de programação antes de usá-lo.

NOTA: Se você não está familiarizado com o conceito de bancos de dados SQL e NoSQL, verifique o recurso fornecido abaixo:

https: // www.Mongodb.com / nosql-explicado / nosql-vs-sql

Aprender a trabalhar com o MongoDB é uma habilidade essencial, principalmente porque vivemos em um mundo orientado por dados onde, como um programador, você trabalhará com dados 90% do tempo - se não mais.

É bom observar que há mais no MongoDB do que abordaremos no guia de hoje. Considere verificar a documentação oficial e recursos externos para saber mais.

Como instalar o MongoDB no Linux (Debian 10)

Vamos revisar rapidamente como instalar o MongoDB Community Edition no Debian 10.

NOTA: Certifique-se de desinstalar o pacote MongoDB mantido pelo Debian porque não é o pacote MongoDB oficial e a falha ao desinstalá-lo pode entrar em conflito com a versão mais recente:

Primeiro, certifique-se de que seu sistema esteja atualizado, o que você pode fazer usando o comando:

sudo apt-get update && sudo apt-get upgrade -y

Em seguida, instale o GnuPG e importe a chave pública do repositório MongoDB usando o comando:

sudo apt-get install gnupg && wget -qO - https: // www.Mongodb.org / static / pgp / server-4.4.asc | sudo apt-key add -

Adicione uma lista de arquivos nas fontes.Lista.diretório d usando o comando:

echo "deb http: // repo.Mongodb.org / apt / debian buster / mongodb-org / 4.4 principais "| sudo tee / etc / apt / sources.Lista.d / mongodb-org-4.4.Lista

Atualize seus repositórios locais e instale o pacote mongodb-org.

sudo apt-get update && sudo apt-get install mongodb-org

Depois de instalar o MongoDB com êxito, inicie o serviço usando o sistema da seguinte maneira:

sudo systemctl start mongod

Você também pode iniciar um shell mongo usando o comando mongo

Como usar Python para trabalhar com MongoDB

Vamos agora discutir como usar Python para trabalhar com MongoDB.

Neste ponto, assumirei que você já configurou e instalou o Python em seu sistema.

Como este é um guia rápido para iniciantes, não um guia abrangente do MongoDB, discutiremos apenas os fundamentos do uso do PyMongo para interagir com o banco de dados.

PyMongo

Devemos olhar para o método padrão ao interagir com MongoDB para usar o driver oficial Python, PyMongo. PyMongo é uma maneira muito eficiente de trabalhar com Python e MongoDB e é uma das melhores maneiras de começar.

NOTA: Embora este guia de primeiros passos tenha muitos detalhes, você deve considerar consultar a documentação oficial para saber mais.

Aqui estão alguns recursos para sua consideração:

https: // pymongo.readthedocs.io / en / stable / index.html
https: // pypi.org / project / pymongo /
https: // docs.Mongodb.com / drivers / pymongo

Como instalar o PyMongo

Como de costume, a primeira coisa que precisamos fazer é instalar o driver PyMongo em nosso ambiente Python; você pode usar conda ou pip.

Para instalar, use o comando:

pip instalar pymongo

Espere até que as transações necessárias sejam concluídas e você tenha o PyMongo instalado com sucesso em seu sistema. Para confirmar, acione um shell Python interativo e execute o comando:

>>> importar pymongo

Assim que for executado com sucesso e sem erros, você instalou o PyMongo com sucesso e podemos passar para a próxima seção.

Como usar o PyMongo para se conectar ao MongoDB

Para se conectar ao MongoDB usando PyMongo, usamos o objeto MongoClient e criamos uma instância para mongod, o principal processo daemon do MongoDB.

>>> de pymongo import MongoClient
>>> client = MongoClient (“localhost”, 27017)

O trecho de código acima importa o objeto MongoClient de PyMongo e, em seguida, cria uma instância de cliente para mongod. Se você não precisa especificar o host e a porta de destino, pode deixá-lo vazio, estabelecendo assim uma conexão padrão.

Você também pode usar o formato URI do MongoDB como:

>>> client = MongoClient ("mongodb: // localhost: 27017 /")

Ambos os métodos farão a mesma coisa; só depende de qual você prefere usar em seu projeto.

Como criar um banco de dados usando PyMongo

Usar o PyMong para criar um banco de dados no MongoDB é relativamente simples. Tudo que você precisa fazer é consultar o banco de dados e, se ele não existir, o MongoDB o criará automaticamente.

Considere o código abaixo:

>>> de pymongo import MongoClient
>>> client = MongoClient ("localhost", 27017)
>>> banco de dados = cliente ["test_database"]

Você também pode usar o método de atributo, em vez do método de dicionário, para acessar um banco de dados.

>>> banco de dados = cliente.test_database

Ao contrário de outros bancos de dados, no MongoDB, um banco de dados não é totalmente criado até que as coleções (dados) sejam salvas - pense nas coleções como tabelas em bancos de dados SQL.

Como inserir documentos em um banco de dados

Conforme mencionado no início deste tutorial, o MongoDB armazena dados como documentos JSON armazenados em uma coleção - pense em documentos como linhas em bancos de dados SQL.

No PyMongo, usamos dicionários python para representar um documento. Considere o seguinte código de exemplo:

de pymongo import MongoClient
client = MongoClient ("localhost", 27017)
banco de dados = cliente ["movie_db"]
filmes = banco de dados.filmes
movie_ =
"título": "Sr. Robô",
"Estrelando": "Rami Malek, Christian Slater, Carly Chaikin",
"criado": "Sam Esmail",
"Ano": "2016"

id = filmes.insert_one (filme_).insert_id
imprimir (id)

Este código deve imprimir o id conforme mostrado:

5ff57066fee7e4e965f02267

Quando criamos um novo documento e o adicionamos à coleção, uma chave especial ou _id é criada. O valor do id deve ser único na coleção definida.

Podemos verificar se o banco de dados, coleção e documento existem usando uma consulta simples.

>>> banco de dados.list_collection_names ()
['filmes']

Os programadores são muito eficientes e preguiçosos.

Por causa dessa inclinação padrão, também podemos usar o método insert_many () para adicionar vários documentos em vez de um único documento com o método insert_one ().

Considere o código abaixo:

de pymongo import MongoClient
client = MongoClient ("localhost", 27017)
banco de dados = cliente ["movie_db"]
filmes = banco de dados.filmes
movies_ = [

“Título”: “Sr. Robô,"
“Estrelando”: “Rami Malek, Christian Slater, Carly Chaikin,”
"criado": "Sam Esmail",
“Ano”: “2016.”
,

“Title”: “The Big Bang Theory,”
“Estrelando”: “Jim Parsons, Kaley Cuoco, Johnny Galecki, Kunal Nayyar, Simon Helber, Mayim Bialik, Melissa Rauch,”
“Criado”: ​​“Chuck Lorre, Bill Prady,”
“Ano”: “2007.”
,

"title": "Star Trek: série original",
“Estrelando”: “William Shatner, Leonard Nimoy, Nichelle Nicholas,”
"Criado": "Gene Roddenberry",
“Ano”: “1966.”

]
ids = filmes.insert_many (movies_).inseridos_ids
imprimir (ids)

Isso deve fornecer a você os _ids do documento inserido, conforme mostrado abaixo:

[ObjectId ('5ff5749fbbc71282a634303d'), ObjectId ('5ff5749fbbc71282a634303e'), ObjectId ('5ff5749fbbc71282a634303f')]

Como obter documentos

Obter documentos de uma coleção também é muito simples e, usando o método find_one (), podemos fazer isso em uma linha de código. Considere o exemplo abaixo para coletar os filmes de Gene Roddenberry.

imprimir (filmes.find_one ("Criado": "Gene Roddenberry"))

Isso deve recuperar todos os filmes criados por Gene Roddenberry nesse banco de dados.

'_id': ObjectId ('5ff57472e027b7cd22b1f2f4'), 'title': 'Star Trek: Original Series', 'Estrelando': 'William Shatner, Leonard Nimoy, Nichelle Nicholas,', 'Criado': 'Gene Roddenbery', Ano ':' 1966 '

Você pode ver uma tela GUI do banco de dados e das coleções. Aqui está uma imagem capturada do MongoDB Compass no Windows.

Conclusão

Para usar a linguagem de programação Python de maneira eficaz ao trabalhar com bancos de dados, você precisará de um banco de dados flexível e eficiente para o seu projeto. MongoDB é a escolha certa. Por favor, não confunda com o significado de MongoDB é a melhor escolha de banco de dados de todos os tempos. Tem deficiências, mas também é a escolha ideal para a maioria dos casos de uso.

Este guia deu a você tudo que você precisa para começar a experimentar bancos de dados usando sua linguagem de escolha.

Ao terminar, considere a leitura de documentação e manuais para obter uma compreensão mais profunda deste tópico específico.

OpenTTD vs Simutrans
Criar sua própria simulação de transporte pode ser divertido, relaxante e extremamente atraente. É por isso que você precisa ter certeza de experiment...
Tutorial OpenTTD
OpenTTD é um dos jogos de simulação de negócios mais populares que existem. Neste jogo, você precisa criar um maravilhoso negócio de transporte. No en...
SuperTuxKart para Linux
SuperTuxKart é um ótimo título projetado para trazer a você a experiência Mario Kart gratuitamente em seu sistema Linux. É bastante desafiador e diver...