Python

Kuinka luoda tietokanta MongoDB ssä Pythonin avulla

Kuinka luoda tietokanta MongoDB ssä Pythonin avulla
Ei ole epäilystäkään siitä, että Python on tehokas ja suosittu ohjelmointikieli, joka kykenee käsittelemään mitä tahansa heittämäämme projektia. Se on erittäin joustava ja voi sopeutua erilaisiin kehitysympäristöihin, kuten tunkeutumistestaus verkkokehitykseen ja koneoppimiseen.

Yhdistettynä suuriin sovelluksiin, kuten tietokantoja vaativiin sovelluksiin, Python lisää toimintoja ja voi olla vaikea työskennellä etenkin aloittelijoille.

Python tietää, että tämä lisäys tarjoaa meille parempia tapoja lisätä tietokantoja projekteihimme vaarantamatta työnkulkua yksinkertaisen ja intuitiivisen NoSQL-tietokannan avulla. Pythonin ja suositun NoSQL-tietokannan, MongoDB: n avulla kehitys tulee mukavammaksi ja kaiken kaikkiaan hauskaksi.

Tässä artikkelissa käydään läpi useita MongoDB-tietokantakonsepteja, jotta saat selkeän käsityksen siitä, mitä se sisältää. Sen jälkeen käsittelemme MongoDB: n asentamista Linuxiin ja näytämme sinulle, miten Pythonia käytetään vuorovaikutuksessa MongoDB: n kanssa.

Aloitetaan:

Perustiedot MongoDB: stä

MongoDB on avoimen lähdekoodin asiakirjapohjainen tietokanta, joka tarjoaa suuren skaalautuvuuden ja joustavuuden. Kuten useimmat NoSQL-tietokannat, MongoDB käyttää JSONia tietojen tallentamiseen, mikä tekee siitä yhden joustavimmista ja helpoimmista tietokannoista työskennellä, koska se ei vaadi skeemaa.

Joustavuuden ja oppimisen helppouden ansiosta kehittäjät käyttävät MongoDB: tä usein suurissa projekteissa, jotka edellyttävät nopeita tietojen luku- ja kirjoitusnopeuksia. Se on valmiiksi pakattu suosittujen ohjelmointikielien ohjaimien kanssa, jolloin uusien ohjelmointikielten oppiminen ei ole tarpeen ennen sen käyttöä.

MERKINTÄ: Jos et ole perehtynyt SQL- ja NoSQL-tietokantojen käsitteeseen, tutustu seuraavaan resurssiin:

https: // www.mongodb.com / nosql-selitetty / nosql-vs-sql

Oppiminen työskentelemään MongoDB: n kanssa on välttämätön taito lähinnä siksi, että elämme datavetoisessa maailmassa, jossa ohjelmoijana työskentelet datan kanssa 90% ajasta - ellei enemmän.

On hyvä huomata, että MongoDB: ssä on enemmän kuin mitä käsittelemme tämän päivän oppaassa. Harkitse lisätietoja virallisista asiakirjoista ja ulkoisista resursseista.

MongoDB: n asentaminen Linuxiin (Debian 10)

Mennään nopeasti, miten MongoDB Community Edition asennetaan Debian 10: een.

MERKINTÄ: Varmista, että poistat Debianin ylläpitämän MongoDB-paketin, koska se ei ole virallinen MongoDB-paketti, ja sen poistamisen epäonnistuminen saattaa olla ristiriidassa uusimman version kanssa:

Varmista ensin, että järjestelmäsi on ajan tasalla, minkä voit tehdä komennolla:

sudo apt-get update && sudo apt-get päivitys -y

Asenna seuraavaksi GnuPG ja tuo MongoDB-tietovaraston julkinen avain komennolla:

sudo apt-get install gnupg && wget -qO - https: // www.mongodb.org / staattinen / pgp / palvelin-4.4.asc | sudo apt-key lisää -

Lisää tiedostoluettelo lähteisiin.lista.d-hakemisto komennolla:

echo "deb http: // repo.mongodb.org / apt / debian buster / mongodb-org / 4.4 tärkeintä "| sudo tee / etc / apt / sources.lista.d / mongodb-org-4.4.lista

Päivitä paikalliset arkistot ja asenna mongodb-org-paketti.

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

Kun olet asentanut MongoDB: n onnistuneesti, käynnistä palvelu järjestelmän avulla seuraavasti:

sudo systemctl Käynnistä mongod

Voit myös käynnistää mongo-kuoren komennolla mongo

Kuinka käyttää Pythonia työskentelemään MongoDB: n kanssa

Keskustellaan nyt siitä, miten Pythonia käytetään työskentelemään MongoDB: n kanssa.

Oletan tässä vaiheessa, että Python on jo asennettu ja asennettu järjestelmääsi.

Koska tämä on pika-aloitusopas, ei kattava MongoDB-opas, keskustelemme vain PyMongon käytön perusteista vuorovaikutuksessa tietokannan kanssa.

PyMongo

Tarkastelemme standardimenetelmää, kun olemme tekemisissä MongoDB: n kanssa virallisen Python-ohjaimen, PyMongon, käyttämiseksi. PyMongo on erittäin tehokas tapa työskennellä Pythonin ja MongoDB: n kanssa ja on yksi parhaista tavoista aloittaa.

MERKINTÄ: Vaikka tässä aloitusoppaassa on paljon yksityiskohtia, sinun kannattaa harkita virallisen dokumentaation tarkastelemista saadaksesi lisätietoja.

Tässä on joitain resursseja harkittavaksi:

https: // pymongo.readthedocs.io / fi / vakaa / indeksi.html
https: // pypi.org / project / pymongo /
https: // docs.mongodb.fi / drivers / pymongo

Kuinka asentaa PyMongo

Kuten tavallista, meidän on ensin asennettava PyMongo-ohjain Python-ympäristöön; voit käyttää conda tai pip.

Asenna komento:

pip asenna pymongo

Odota, kunnes vaaditut tapahtumat ovat suoritettu ja PyMongo on asennettu järjestelmääsi onnistuneesti. Vahvista käynnistämällä interaktiivinen python-kuori ja suorittamalla komento:

>>> tuo pymongo

Kun se toimii onnistuneesti ilman virheitä, olet asentanut PyMongon onnistuneesti, ja voimme siirtyä seuraavaan osioon.

Kuinka käyttää PyMongoa yhteyden muodostamiseen MongoDB: hen

Yhteyden muodostamiseksi MongoDB: hen PyMongon avulla käytämme MongoClient-objektia ja luomme ilmentymän mongodille, joka on MongoDB: n tärkein daemon-prosessi.

>>> Pymongo-tuonnista MongoClient
>>> asiakas = MongoClient (“localhost”, 27017)

Yllä oleva koodinpätkä tuo MongoClient-objektin PyMongosta ja luo sitten asiakkaan ilmentymän mongodiin. Jos sinun ei tarvitse määrittää kohde-isäntää ja porttia, voit jättää sen tyhjäksi, jolloin muodostetaan oletusyhteys.

Voit käyttää MongoDB URI -muotoa myös:

>>> asiakas = MongoClient ("mongodb: // paikallinen isäntä: 27017 /")

Molemmat näistä menetelmistä tekevät saman; se riippuu vain siitä, mitä haluat käyttää projektissasi.

Kuinka luoda tietokanta PyMongon avulla

PyMongin käyttäminen tietokannan luomiseen MongoDB: hen on suhteellisen yksinkertaista. Sinun tarvitsee vain tehdä kysely tietokannasta, ja jos sitä ei ole, MongoDB luo sen automaattisesti.

Harkitse alla olevaa koodia:

>>> Pymongo-tuonnista MongoClient
>>> asiakas = MongoClient ("paikallinen isäntä", 27017)
>>> tietokanta = asiakas ["test_database"]

Voit käyttää tietokantamenetelmää sanamenetelmän sijasta myös attribuuttimenetelmällä.

>>> tietokanta = asiakas.test_database

Toisin kuin muut tietokannat, MongoDB: ssä tietokantaa ei luoda kokonaan ennen kuin kokoelmat (tiedot) on tallennettu - ajattele kokoelmia taulukoina SQL-tietokannoissa.

Kuinka lisätä asiakirjoja tietokantaan

Kuten tämän opetusohjelman alussa mainittiin, MongoDB tallentaa tiedot kokoelmana tallennettuina JSON-asiakirjoina - ajattele asiakirjoja SQL-tietokantojen riveinä.

PyMongossa käytämme python-sanakirjoja edustamaan asiakirjaa. Harkitse seuraavaa esimerkkikoodia:

pymongo-tuonnista MongoClient
asiakas = MongoClient ("paikallinen isäntä", 27017)
tietokanta = asiakas ["movie_db"]
elokuvat = tietokanta.elokuvia
elokuva_ =
"title": "Herra. Robotti",
"Pääosissa": "Rami Malek, Christian Slater, Carly Chaikin",
"luotu": "Sam Esmail",
"Vuosi": "2016"

id = elokuvat.insert_one (elokuva_).insert_id
tulosta (id)

Tämän koodin tulisi tulostaa tunnus kuvan mukaisesti:

5ff57066fee7e4e965f02267

Kun luot uuden asiakirjan ja lisätään se kokoelmaan, luodaan erityinen avain tai _id. Tunnuksen arvon on oltava yksilöllinen joukossa.

Voimme varmistaa, että tietokanta, kokoelma ja asiakirja ovat olemassa yksinkertaisen kyselyn avulla.

>>> tietokanta.list_collection_names ()
['elokuvat']

Ohjelmoijat eivät ole mikään, ellei tehokas ja laiska.

Tämän oletuskallistuksen takia voimme myös käyttää insert_many () -menetelmää lisätäksesi useita asiakirjoja yhden asiakirjan sijaan insert_one () -menetelmällä.

Harkitse alla olevaa koodia:

pymongo-tuonnista MongoClient
asiakas = MongoClient ("paikallinen isäntä", 27017)
tietokanta = asiakas ["movie_db"]
elokuvat = tietokanta.elokuvia
elokuvat_ = [

"Title": "Herra. Robotti,"
"Pääosissa": "Rami Malek, Christian Slater, Carly Chaikin"
"luotu": "Sam Esmail",
"Vuosi": "2016.”
,

"Otsikko": "The Big Bang Theory"
"Pääosissa": "Jim Parsons, Kaley Cuoco, Johnny Galecki, Kunal Nayyar, Simon Helber, Mayim Bialik, Melissa Rauch"
"Luotu": "Chuck Lorre, Bill Prady"
"Vuosi": "2007.”
,

"title": "Star Trek: Alkuperäinen sarja",
"Pääosissa": "William Shatner, Leonard Nimoy, Nichelle Nicholas"
"Luotu": "Gene Roddenberry",
"Vuosi": "1966.”

]
ids = elokuvat.lisää_many (elokuvat_).insert_ids
tulosta (tunnukset)

Tämän pitäisi antaa sinulle lisätyn asiakirjan _ids alla olevan kuvan mukaisesti:

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

Kuinka noutaa asiakirjoja

Asiakirjojen saaminen kokoelmasta on myös hyvin yksinkertaista, ja käyttämällä find_one () -menetelmää voimme saavuttaa tämän yhdellä koodirivillä. Harkitse alla olevaa esimerkkiä kerätäksesi Gene Roddenberryn elokuvia.

tulosta (elokuvat.find_one ("Luotu": "Gene Roddenberry"))

Tämän pitäisi noutaa kaikki Gene Roddenberryn luomat elokuvat kyseisestä tietokannasta.

'_id': ObjectId ('5ff57472e027b7cd22b1f2f4'), 'title': 'Star Trek: Original Series', 'Starring': 'William Shatner, Leonard Nimoy, Nichelle Nicholas', 'Luotu': 'Gene Roddenbery', Vuosi ':' 1966 '

Voit tarkastella tietokannan ja kokoelmien GUI-näyttöä. Tässä on kuvakaappaus, joka on kaapattu MongoDB Compassista Windowsissa.

Johtopäätös

Tarvitset joustavan ja tehokkaan tietokannan projektiisi, jotta voit käyttää Python-ohjelmointikieliä tehokkaasti tietokantojen kanssa työskennellessäsi. MongoDB on oikea valinta. Älkää erehtykö tätä tarkoittamaan, että MongoDB on kaikkien aikojen paras tietokantavalinta. Siinä on puutteita, mutta se on myös ihanteellinen valinta useimpiin käyttötapauksiin.

Tämä opas on antanut sinulle kaiken mitä tarvitset kokeilemaan tietokantoja valitsemallasi kielellä.

Harkitse eron aikana lukemalla dokumentaatio ja käsikirjat saadaksesi syvällisemmän käsityksen tästä aiheesta.

Kuinka käyttää AutoKey-toimintoa Linux-pelien automatisointiin
AutoKey on työpöydän automaatioapuohjelma Linuxille ja X11: lle, ohjelmoitu Python 3, GTK ja Qt. Komentosarjojen ja MACRO-toimintojen avulla voit auto...
Kuinka näyttää FPS-laskuri Linux-peleissä
Linux-pelaaminen sai suuren työn, kun Valve ilmoitti Linux-tuesta Steam-asiakkaalle ja heidän peleilleen vuonna 2012. Siitä lähtien monet AAA- ja indi...
How to download and Play Sid Meier's Civilization VI on Linux
Introduction to the game Civilization 6 is a modern take on the classic concept introduced in the series of the Age of Empires games. The idea was fai...