Uvod v MongoDB za začetnike

Preberite, kaj so MongoDB, navodila za namestitev in osnovno delovanje.


MongoDB NoSQL je bolj kot kdaj koli prej. Ali ga potrebujete za razumevanje?

Brez skrbi, če ne, vam bo pomagalo naslednje.

Uvod

Ker je spletno mesto prešlo v paradigmo k dinamičnim vsebinam, se je povpraševanje po podatkovni bazi No-SQL povečalo. To je povzročilo številne no-SQL baze podatkov, kot so MongoDB.

MongoDB je razvrščen kot baza podatkov, ki ne vsebuje SQL, podatkovna baza na osnovi dokumentov, ki shranjuje podatke v obliki dokumentov JSON z avtomatizirano identificirano za vsak dokument.

Baza podatkov brez SQL je baza podatkov, v kateri struktura tabel ni fiksna, za razliko od strukturiranih baz podatkov SQL. MongoDB shrani podatke v obliki niza JSON, ne glede na število atributov ali imena atributov v določenem stolpcu.

To razvijalcem omogoča hitro spreminjanje entitet brez sprememb na ravni baze podatkov.

Namestitev MongoDB

MongoDB je tako kot vsaka druga baza podatkov na voljo v več različicah, odvisno od razvojnih potreb. Različice so navedene spodaj in jih lahko uporabite ali prenesete iz tega povezava

  • MongoDB Atlas – Baza podatkov kot storitev
  • Skupnostni strežnik – Brezplačna uporaba za skupnost razvijalcev
  • MongoDB Enterprise Edition – Komercialna različica z dodatnimi funkcijami

Vsak od njih je popolnoma združljiv z vsakim operacijskim sistemom. Za začetek namestite strežnik skupnosti, prenesite ustrezno namestitveno datoteko v skladu z vašim operacijskim sistemom.

Postopek namestitve se nekoliko razlikuje za vsak operacijski sistem, zato bi šli skozi vsako namestitev operacijskega sistema posebej.

Namestitev v MacOS

Namestitev MongoDB v MacOS. Prenesite arhiv .tgz, ki vsebuje potrebne binarne datoteke. Če ne želite arhivirati datoteke, bi si morali ogledati kup dvopredstavnih datotek v košara mapo.

  • Premaknite mapo s koši na želeno mesto
  • Odprite terminal in spremenite imenik v zgoraj navedeni imenik
  • Izvedite spodnji ukaz, da ustvarite bazo podatkov na želenem mestu.

$ ./mongod –dbpath / pot do želenega imenika /

V zgornjem ukazu pot do imenika zamenjajte z želeno potjo in strežnik se bo zagnal takoj, ko se ukaz izvede.

Namestitev v sistemu Windows

MongoDB center za prenos ponuja izvedljiv program .msi paket za namestitev MongoDB v okna. Namestitev v operacijskem sistemu Windows je precej enostavna in jo je mogoče izvesti z nekaj ukazi po prenosu nastavitve.

  • Izvedite spodnje ukaze za namestitev MongoDB v Windows PC / strežnik.

> CD / mapa za nastavitev /
> msiexec.exe / q / i .msi ^
NAMESTITEV ="C: \ Programske datoteke \ MongoDB \" ^
ADDLOCAL ="MonitoringTools, ImportExportTools, MiscellaneousTools"

Zgornji ukazi vas bodo vodili do ustreznega imenika in izvedli namestitev za namestitev na določenem mestu. Ko je nameščen, morate konfigurirati privzeto pot za shranjevanje baze podatkov za MongoDB. Spodnji ukaz vam pomaga nastaviti isto

> md \ db \ podatki

Zgornji ukaz ustvari mapo db / data v imeniku, na katero trenutno kaže ukazni poziv. Če boste morali znova konfigurirati bazo podatkov, lahko uporabite mongod.exe z dbpath argument, kot je prikazano spodaj:

>"C: \ programske datoteke \ MongoDB \ bin \ mongod.exe" –dbpath d: \ tutorial \ mongodb \ data

Namestitev v Linux

Podobno kot pri prenosih MacOS je tudi različica MongoDB za Linux na voljo v obliki arhiviranega niza binarnih datotek. Postopek namestitve MongoDB je precej podoben.

  • Premaknite dvojiške na želeno mesto
  • Odprite terminal v mapi
  • Izvedite spodnji ukaz z želeno lokacijo DB

$ ./mongod –dbpath / pot do želenega imenika /

Ustvarjanje prve zbirke

MongoDB podatke hrani v obliki dokumentov JSON. Skupina takšne dokumentacije je skupno znana kot zbirka v MongoDB. Tako je zbirka analogna tabeli v relacijski podatkovni bazi, medtem ko je dokument analogen zapisu.

Za shranjevanje dokumentov moramo najprej ustvariti zbirko. Vznemirljiva stvar baze podatkov NoSQL je, da za razliko od baze podatkov SQL v njej ni treba določiti imen stolpcev ali vrst podatkov.

Prvi korak k ustvarjanju zbirke je ustvarjanje baze podatkov. Če želite ustvariti bazo podatkov in se z njo povezati z ukazno vrstico, izvedite spodnji ukaz iz domačega imenika MongoDB.

Vadnica za $ ./bin/mongo

Ta ukaz se uporablja za zagon povezave z bazo podatkov in istočasno povezovanje z bazo vadnic. V dnevniku bo prikazal kup vrstic, ki kažejo, da se je ukazna vrstica povezala z bazo podatkov MongoDB.

Spodnja je prikazana vzorčna slika ukazne vrstice, da bi dobili boljše predstave o isti.

  • Če želite ustvariti zbirko, izvedite spodnji ukaz:

$ > db.createCollection (‘firstCollection’);

Tako nastane prazna zbirka. Naslednji korak je vstavljanje podatkov in obdelava zapisov z ukazno vrstico MongoDB.

Vstavljanje dokumenta v zbirko

Kot je razloženo zgoraj, je v vsako zbirko MongoDB mogoče vstaviti skoraj katerikoli JSON.

Začnimo z vstavitvijo prvega dokumenta JSON v prva Zbirka zbirka, ustvarjena zgoraj.

> db.firstCollection.insertOne ({ime: ‘Abhishek’, spretnost: ‘MongoDB’});

Zgornji ukaz vstavi en dokument JSON v firstCollection. Enako je mogoče preveriti s spodnjim ukazom:

> db.firstCollection.find ();

Zgornji ukaz ima več možnosti, odvisno od variacije funkcije find (). Kadar ni nobenih argumentov, kot velja za zgornji ukaz, pridobi vse razpoložljive dokumente iz zbirke.

Lahko bi vstavili še en zapis in poskusili isto. Pri tem bi bil izhod zgornjega ukaza podoben tistemu, ki je prikazan spodaj:

> db.firstCollection.find ();
{ "_id" : ObjectId ("5b043a32c29a7184535e783a"), "ime" : "Abhišek", "spretnost" : "MongoDB" }
{ "_id" : ObjectId ("5b05b4f0c29a7184535e783b"), "ime" : "GeekFlare", "spretnost" : "Java, MongoDB, NodeJS" }

Kot je razvidno, sta prikazana dva razpoložljiva zapisa. Funkcijo find () je mogoče enostavno uporabiti za filtriranje dokumentov na podlagi določenih parametrov. Filtrirajmo dokument s pomočjo atributa imena.

Postopek filtriranja je preprost, razberemo pa ga lahko iz spodnjega ukaza:

db.firstCollection.find ({ime: ‘Abhishek’});
{ "_id" : ObjectId ("5b043a32c29a7184535e783a"), "ime" : "Abhišek", "spretnost" : "MongoDB" }

Filter se lahko uporablja tudi z več atributi v JSON. Čeprav je poizvedbi mogoče dodati poljubno število parametrov, je omejitev tega pristopa ta, da ustreza samo natančni vrednosti atributov.

Filtriranje zapisov z Regexom

Za izvedbo MongoDB ekvivalenta klavzule, kot je MySQL, uporablja MongoDB regex. Regex je niz znakov, ki tvorijo vzorec, ki se mora ujemati. Dobesedni izrazi v regexu so podobni tiste, ki se uporabljajo v Javascript.

Za trenutno zbirko bomo podatke poskušali pridobiti tako, da bomo primerjali vzorec za atribut spretnosti. Spodnji ukaz dobi seznam ljudi z veščino MongoDB. Tako bo dobil dva zapisa, saj oba vsebujeta niz MongoDB.

> db.firstCollection.find ({spretnost: /.* MongoDB. * /});
{ "_id" : ObjectId ("5b043a32c29a7184535e783a"), "ime" : "Abhišek", "spretnost" : "MongoDB" }
{ "_id" : ObjectId ("5b05b4f0c29a7184535e783b"), "ime" : "GeekFlare", "spretnost" : "Java, MongoDB, NodeJS" }
> db.firstCollection.find ({spretnost: /.* Java. * /});
{ "_id" : ObjectId ("5b05b4f0c29a7184535e783b"), "ime" : "GeekFlare", "spretnost" : "Java, MongoDB, NodeJS" }

Zgornja koda prikazuje rezultat dveh različnih nizov v obliki regex. Prva poizvedba pridobi seznam dokumenta, kjer atribut spretnosti vsebuje ključno besedo MongoDB, druga pa pridobi ljudi, ki so usposobljeni samo za Java.

Naslednji izziv pri poizvedovanju na podlagi meril je poizvedovanje s pogojem OR ali AND.

Kompleksna poizvedba v MongoDB

Kot je razvidno iz zgornjih ukazov, MongoDB, kjer klavzule delujejo na JSON. Proces združevanja pogojev je odvisen tudi od samega JSON-a. MongoDB zagotavlja operaterje, kot so $ ali, $ in tudi, da ne izvajajo ustreznih poizvedbenih operacij.

Poskusimo pridobiti seznam dokumentov, kjer atribut imena vsebuje Abhishek ali spretnost vsebuje Java.

> db.firstCollection.find ({$ ali: [{ime: ‘Abhishek’}, {spretnost: /.* Java. * /}]});
{ "_id" : ObjectId ("5b043a32c29a7184535e783a"), "ime" : "Abhišek", "spretnost" : "MongoDB" }
{ "_id" : ObjectId ("5b05b4f0c29a7184535e783b"), "ime" : "Geekflare", "spretnost" : "Java, MongoDB, NodeJS" }

Kot je razvidno, prejema oba zapisa. Lahko poskusite uporabiti atribut imena kot Geekflare in si ogledati spremembo. Prikaže se samo dokument s tremi znanji in imenom Geekflare.

Podobno je mogoče uporabiti $ in operator z nizom pogojev JSON, kot je prikazano zgoraj.

Za naslednji niz operaterjev bi morali ustvariti še eno zbirko in ji dodati nekaj zapisov s pomočjo spodnjih ukazov.

> db.createCollection (‘oznake študentov’);
{ "v redu" : 1}
> db.studentmarks.insertMany ([{ime: ‘A’, oznake: 20}, {ime: ‘B’, oznake: 25}, {ime: ‘C’, znamke: 22}, {ime: ‘D’, znamke: 30}]);
{
"priznan" : prav,
"inserIds" : [
ObjectId ("5b06e7b5c29a7184535e783c"),
ObjectId ("5b06e7b5c29a7184535e783d"),
ObjectId ("5b06e7b5c29a7184535e783e"),
ObjectId ("5b06e7b5c29a7184535e783f")
]
}

Naslednji niz operaterjev, ki bi jih uporabili, so primerjalni operaterji v poizvedbi. Primerjati vrednosti z uporabo takšnih meril manj kot ali večji kot ali ni enako, v vrednosti, ki jo prenesemo, uporabimo ustrezne operaterje.

Spodaj je prikazan primer pridobivanja seznama študentov z ocenami, večjimi od 22.

db.studentmarks.find ({znamke: {$ gt: 22}});
{ "_id" : ObjectId ("5b06e7b5c29a7184535e783d"), "ime" : "B", "znamk" : 25}
{ "_id" : ObjectId ("5b06e7b5c29a7184535e783f"), "ime" : "D", "znamk" : 30}

$ Gt tukaj kaže večji kot v merilih. Tako so prikazani dokumenti z oznakami več kot 22. Podobno obstajajo tudi drugi operaterji, ki jih je mogoče uporabiti. Spodaj so navedeni.

Operater
Uporaba
Primer
$ eqPreverite, ali je vrednost enaka{znamke: {$ eq: 20}}
$ ltPreverite, ali je vrednost nižja od{znamke: {$ lt: 20}}
$ gtePreverite, ali je vrednost večja ali enaka{znamke: {$ gte: 22}}
$ ltePreverite, ali je vrednost manj zahvalna ali enaka{znamke: {$ lte: 22}}
$ nePreverite, če vrednost ni enaka{znamke: {$ ne: 22}}
$ vPreverite, ali je vrednost enaka kateri koli od vrednosti matrike{znamke: {$ in: [20,22]}}
$ ninPreverite, če vrednost ni enaka nobeni vrednosti iz matrike{znamke: {$ nin: [22,25]}}

GUI za MongoDB

V zgornji razpravi smo uporabili ukazno vrstico za izvajanje poizvedb v MongoDB.

Uporaba ukazne vrstice bi bila lahko zahtevna, ko gre za zapletene poizvedbe in večji kup podatkov. Za lažji pregled podatkov in izvajanje poizvedb vam MongoDB ponuja odlično orodje GUI, imenovano MongoDB Compass.

Kompas MongoDB je enostavno prenesti s spletnega mesta MongoDB prenaša spletno mesto. Ko naložite in namestite MongoDB Compass, zaženite aplikacijo in pozdravil vas bo zaslon, podoben spodnjem zaslonu..

MongoDBCompass

Glede na to, da imate nameščen MongoDB strežnik, kliknite povezavo s privzetimi podrobnostmi. Morate biti prijavljeni in prikazati seznam razpoložljivih baz podatkov.

Kliknite zbirko vadnic in si oglejte seznam zbirk v db. Kot je prikazano spodaj, prikaže seznam zbirk, ki so na voljo v vadnici db.

Ko kliknete zbirko, se prikaže seznam dokumentov s potrebnimi kontrolami za filtriranje zapisov s pomočjo JSON, kot tudi možnost za ogled dokumentov v obliki JSON ali tabeli, kot je to primerno.

GUI prav tako poenostavlja dodajanje dokumenta. Vse, kar morate storiti, je, da na spodnjem zaslonu kliknete gumb Vstavi dokument. Odpre se majhno pogovorno okno, ki zahteva podrobnosti dokumenta z samodejno ustvarjenim idom dokumenta.

MongoDBDokumenti

GUI poenostavlja veliko operacij, ki jih je morda težko izvajati z vmesnikom MongoDB ukazne vrstice.

Zaključek

Bistvo NoSQL smo ujeli z različnimi primeri in razumeli namestitev, kako so dokumenti drugačni v primerjavi s tipičnim zapisom relacijske baze podatkov. To lahko navedete tudi vi učenje MongoDB iz nič spletni tečaj.

In če ste razvijalec, vas bo morda zanimalo tale.

Oznake:

  • Baza podatkov

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map