Python

Kako ustvariti bazo podatkov v MongoDB z uporabo Pythona

Kako ustvariti bazo podatkov v MongoDB z uporabo Pythona
Nobenega dvoma ni, da je Python zmogljiv in priljubljen programski jezik, ki je sposoben obvladati kateri koli projekt, ki ga postavimo na pot. Je zelo prilagodljiv in se lahko prilagodi različnim razvojnim okoljem, kot so testiranje penetracije, spletni razvoj in strojno učenje.

Ko je Python povezan z velikimi aplikacijami, na primer tistimi, ki zahtevajo zbirke podatkov, doda več funkcionalnosti in je z njimi težko delati, zlasti za začetnike.

Python ve, da nam ta dodatek ponuja boljše načine za dodajanje zbirk podatkov v naše projekte, ne da bi pri tem ogrožal naš potek dela s preprosto in intuitivno bazo podatkov NoSQL. Z uporabo Pythona in priljubljene zbirke podatkov NoSQL, MongoDB, postane razvoj bolj prijeten in vse skupaj zabaven.

Ta članek bo opisal različne koncepte zbirke podatkov MongoDB, da boste bolje razumeli, kaj to pomeni. Po tem bomo obravnavali, kako namestiti MongoDB v Linux, in vam pokazali, kako uporabljati Python za interakcijo z MongoDB.

Začnimo:

Osnovni uvod v MongoDB

MongoDB je odprtokodna zbirka podatkov, ki temelji na dokumentih in zagotavlja visoko razširljivost in prilagodljivost. Kot večina baz podatkov NoSQL tudi MongoDB za shranjevanje podatkov uporablja JSON, zaradi česar je ena najbolj prilagodljivih in enostavnih baz podatkov za delo, ker ne potrebuje sheme.

Zahvaljujoč svoji prilagodljivosti in enostavnosti učenja razvijalci pogosto uporabljajo MongoDB za velike projekte, ki zahtevajo hitro hitrost branja in pisanja podatkov. Na voljo je predpakiran z gonilniki za priljubljene programske jezike in tako odpravlja potrebo po učenju novih programskih jezikov pred njegovo uporabo.

OPOMBA: Če niste seznanjeni s konceptom baz podatkov SQL in NoSQL, si oglejte spodnji vir:

https: // www.mongodb.com / nosql-obrazloženo / nosql-vs-sql

Naučiti se delati z MongoDB je bistvena spretnost, predvsem zato, ker živimo v svetu, ki temelji na podatkih, kjer boste kot programer 90% časa delali s podatki, če ne celo več.

Dobro je opozoriti, da MongoDB vsebuje več kot tisto, kar bomo obravnavali v današnjem priročniku. Če želite izvedeti več, si oglejte uradno dokumentacijo in zunanje vire.

Kako namestiti MongoDB v Linux (Debian 10)

Pojdimo na hitro, kako namestiti MongoDB Community Edition na Debian 10.

OPOMBA: Prepričajte se, da ste odstranili paket MongoDB, ki ga vzdržuje Debian, ker to ni uradni paket MongoDB, in če ga ne odstranite, bi lahko bil v nasprotju z najnovejšo različico:

Najprej zagotovite, da je vaš sistem posodobljen, kar lahko storite z ukazom:

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

Nato namestite GnuPG in z ukazom uvozite javni ključ repozitorija MongoDB:

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

V vire dodajte seznam datotek.seznam.d z uporabo ukaza:

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

Posodobite svoja lokalna skladišča in namestite paket mongodb-org.

posodobitev sudo apt-get && sudo apt-get namestitev mongodb-org

Ko ste uspešno namestili MongoDB, zaženite storitev s sistemom, kot sledi:

sudo systemctl start mongod

Mongo lupino lahko zaženete tudi z ukazom mongo

Kako uporabljati Python za delo z MongoDB

Zdaj pa se pogovorimo o tem, kako uporabljati Python za delo z MongoDB.

Na tej točki domnevam, da imate Python že nameščen in nameščen v vašem sistemu.

Ker gre za hiter začetni priročnik in ne za celovit MongoDB priročnik, bomo razpravljali le o osnovah uporabe PyMonga za interakcijo z bazo podatkov.

PyMongo

Pri interakciji z MongoDB za uporabo uradnega gonilnika Python, PyMongo, bomo preučili standardno metodo. PyMongo je zelo učinkovit način za delo s Pythonom in MongoDB in je eden najboljših načinov za začetek.

OPOMBA: Čeprav ima ta vodnik za začetek veliko podrobnosti, si oglejte uradno dokumentacijo, če želite izvedeti več.

Tukaj je nekaj virov za razmislek:

https: // pymongo.preberite doktorske dokumente.io / en / stabilen / indeks.html
https: // pypi.org / project / pymongo /
https: // docs.mongodb.com / drivers / pymongo

Kako namestiti PyMongo

Kot ponavadi moramo najprej namestiti PyMongo Driver v naše Pythonovo okolje; lahko uporabite conda ali pip.

Za namestitev uporabite ukaz:

pip namestite pymongo

Počakajte, da se zahtevane transakcije zaključijo in PyMongo je v vašem sistemu uspešno nameščen. Za potrditev sprožite interaktivno lupino pythona in izvedite ukaz:

>>> uvozi pymongo

Ko se uspešno zažene brez napak, ste uspešno namestili PyMongo in se lahko premaknemo na naslednji razdelek.

Kako uporabljati PyMongo za povezavo z MongoDB

Za povezavo z MongoDB s pomočjo PyMongo uporabimo objekt MongoClient in ustvarimo primerek za mongod, glavni daemon proces za MongoDB.

>>> iz pymongo import MongoClient
>>> odjemalec = MongoClient (“localhost”, 27017)

Zgornji delček kode uvozi objekt MongoClient iz PyMongo in nato ustvari primerek odjemalca za mongod. Če vam ni treba določiti ciljnega gostitelja in vrat, jih lahko pustite prazne in tako vzpostavite privzeto povezavo.

Format URI MongoDB lahko uporabite tudi kot:

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

Obe metodi bosta storili isto stvar; odvisno je le od tega, katero raje uporabite v svojem projektu.

Kako ustvariti bazo podatkov s pomočjo PyMongo

Uporaba PyMonga za ustvarjanje baze podatkov v MongoDB je razmeroma preprosta. Vse, kar morate storiti, je poizvedba baze podatkov in če ta ne obstaja, jo bo MongoDB ustvaril samodejno.

Upoštevajte spodnjo kodo:

>>> iz pymongo import MongoClient
>>> odjemalec = MongoClient ("localhost", 27017)
>>> baza podatkov = odjemalec ["test_database"]

Namesto metode slovarja lahko za dostop do baze podatkov uporabite tudi metodo atributov.

>>> baza podatkov = odjemalec.test_database

Za razliko od drugih baz podatkov baza podatkov v MongoDB ni v celoti ustvarjena, dokler se zbirke (podatki) ne shranijo - o zbirkah razmišljajte kot o tabelah v bazah podatkov SQL.

Kako vstaviti dokumente v bazo podatkov

Kot je bilo omenjeno na začetku te vadnice, MongoDB podatke shranjuje kot dokumente JSON, ki so shranjeni v zbirki - mislijo na dokumente kot vrstice v zbirkah podatkov SQL.

V PyMongo za predstavitev dokumenta uporabljamo slovarje python. Upoštevajte naslednjo kodo primera:

iz pymongo import MongoClient
odjemalec = MongoClient ("localhost", 27017)
database = odjemalec ["movie_db"]
filmi = baza podatkov.filmi
film_ =
"title": "g. Robot ",
"Igrajo": "Rami Malek, Christian Slater, Carly Chaikin",
"created": "Sam Esmail",
"Leto": "2016"

id = filmi.vstavi_ eno (film_).vstavljen_id
natisni (id)

Ta koda mora natisniti ID, kot je prikazano:

5ff57066fee7e4e965f02267

Ko ustvarimo nov dokument in ga dodamo v zbirko, se ustvari poseben ključ ali _id. Vrednost id mora biti enolična v zbirki naborov.

Z enostavno poizvedbo lahko preverimo, ali baza podatkov, zbirka in dokument obstajajo.

>>> baza podatkov.list_collection_names ()
['filmi']

Programerji niso nič, če ne celo učinkoviti in leni.

Zaradi tega privzetega nagiba lahko z metodo insert_many () dodamo več dokumentov namesto enega dokumenta z metodo insert_one ().

Upoštevajte spodnjo kodo:

iz pymongo uvoz MongoClient
odjemalec = MongoClient ("localhost", 27017)
database = odjemalec ["movie_db"]
filmi = baza podatkov.filmi
filmi_ = [

„Naslov“: „g. Robot, "
"Igrajo": "Rami Malek, Christian Slater, Carly Chaikin,"
"created": "Sam Esmail",
»Leto«: »2016."
,

"Title": "Teorija velikega poka",
"Igrajo": "Jim Parsons, Kaley Cuoco, Johnny Galecki, Kunal Nayyar, Simon Helber, Mayim Bialik, Melissa Rauch,"
"Ustvarjeno": "Chuck Lorre, Bill Prady,"
„Leto“: „2007."
,

"title": "Star Trek: Original Series",
"Igrajo": "William Shatner, Leonard Nimoy, Nichelle Nicholas,"
"Ustvarjeno": "Gene Roddenberry",
»Leto«: »1966."

]
ids = filmi.insert_many (filmi_).vstavljeni_id
natisni (id)

To vam bo dalo _id vstavljenega dokumenta, kot je prikazano spodaj:

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

Kako pridobiti dokumente

Tudi pridobivanje dokumentov iz zbirke je zelo preprosto in z uporabo metode find_one () lahko to dosežemo v eni vrstici kode. Oglejte si spodnji primer za zbiranje filmov Gene Roddenberry.

tiskanje (filmi.find_one ("Ustvarjeno": "Gene Roddenberry"))

To bi moralo pridobiti vse filme, ki jih je ustvaril Gene Roddenberry v tej bazi podatkov.

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

Ogledate si lahko prikaz GUI baze podatkov in zbirk. Tu je posnetek zaslona, ​​posnet iz MongoDB Compass v sistemu Windows.

Zaključek

Za učinkovito uporabo programskega jezika Python pri delu z bazami podatkov potrebujete prilagodljivo in učinkovito bazo podatkov za svoj projekt. MongoDB je prava izbira. Prosimo, da tega ne zamenjate s tem, da je MongoDB najboljša izbira zbirke podatkov doslej. Ima pomanjkljivosti, vendar je tudi idealna izbira za večino primerov uporabe.

Ta priročnik vam ponuja vse, kar potrebujete, da začnete eksperimentirati z bazami podatkov z izbranim jezikom.

Na ločitvi razmislite o branju dokumentacije in priročnikov, da boste globlje razumeli to temo.

Najboljših 5 izdelkov z ergonomsko računalniško miško za Linux
Ali dolgotrajna uporaba računalnika povzroča bolečine v zapestju ali prstih? Ali imate trde sklepe in bi se morali neprestano tresti z rokami? Ali čut...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
S pomočjo gumba X-Mouse Button Control različno prilagodite gumbe miške za različno programsko opremo
Mogoče potrebujete orodje, ki bi lahko spremenilo nadzor miške z vsako aplikacijo, ki jo uporabljate. V tem primeru lahko preizkusite aplikacijo z ime...