Tutorial MongoDB pentru începători: Învață MongoDB în pași simpli
Publicat: 2022-08-31MongoDB este o bază de date de documente și o bază de date NoSQL de top, care este open-source. Este scris în C++ și este o bază de date NoSQL orientată spre documente, utilizată pentru stocarea de date de mare volum, gestionarea și livrarea conținutului, infrastructuri mobile și sociale, gestionarea datelor utilizatorilor etc.
Constă într-un model de date cu ajutorul căruia puteți reprezenta relații ierarhice. Se bazează pe documente asemănătoare JSON cu schemă opțională și nu utilizează rânduri și tabele așa cum sunt utilizate în bazele de date relaționale tradiționale. Documentele cu perechi cheie-valoare sunt unitățile fundamentale de date din MongoDB.
MongoDB stochează datele în format JSON. Cererea sa mare se bazează în principal pe indexul său pentru orice atribut, replicare și disponibilitate ridicată, auto-sharding, interogări bogate, actualizări rapide la locul lor și suport bogat pentru comunitate. Să ne aprofundăm în tutorialul de interogare mongodb.
Caracteristici MongoDB
Utilizabilitatea acestei baze de date orientate pe date depinde de anumite caracteristici integrale ale Mongo DB:-
- Fiecare bază de date constă din colecții care mai conțin documente. Aceste documente și dimensiunea și conținutul lor pot diferi în funcție de un număr diferit de câmpuri.
- Structura documentului se bazează pe modul în care dezvoltatorii construiesc clase și obiecte în programele lor.
- Rândurile nu necesită o schemă predefinită, deoarece puteți crea câmpurile din mers.
- Cu modelul de date MongoDB, puteți reprezenta relații ierarhice pentru stocarea matricelor și a altor structuri complexe.
- Mediile MongoDB sunt foarte scalabile.
- Obiectele aplicației nu trebuie convertite sau mapate la obiecte de bază de date.
- Memoria internă stochează setul de lucru cu ferestre care permite accesul mai ușor la date.
- Structura unui singur obiect este clară.
- Nu există îmbinări complexe.
- Capacitatea sa de interogare profundă acceptă interogări dinamice pe documente.
De asemenea, consultați cursul nostru de știință a datelor pentru a vă îmbunătăți abilitățile.
Lucruri pe care trebuie să le știți despre MongoDB și RDBMS
MongoDB este o bază de date multiplatformă, orientată spre documente, care oferă performanță ridicată, scalabilitate eficientă și disponibilitate ridicată. Funcționează bazat pe document și colecție. Fiecare bază de date din MongoDB are setul său distinct de fișiere și, în mod ideal, un singur server MongoDB are numeroase baze de date.
Pe de altă parte, o colecție este un grup de documente MongoDB echivalent cu tabelul RDBMS. Există într-o singură bază de date și nu impune o schemă. Documentele dintr-o colecție pot avea diverse câmpuri, iar toate documentele dintr-o colecție au un scop similar sau similar. Un set de perechi cheie-valoare se numește Documente care au o schemă dinamică, în care documentele din aceeași colecție nu trebuie să aibă același set de structură sau câmpuri.
Veți găsi relația dintre terminologia RDBMS cu MongoDB în tabelul următor.
RDBMS | MongoDB |
Bază de date | Bază de date |
Tuplu | Document |
Masa | Colectie |
Unire la masă | Documente încorporate |
coloană | Camp |
Cheia principala | Cheie primară (MongoDB oferă cheia implicită _id) |
Server și client bază de date | |
mysqld/Oracle | mongod |
mysql/sqlplus | mongo |
Diferența dintre bazele de date MongoDB și SQL
MongoDB este mai flexibil decât SQL și oferă o disponibilitate mai bună a datelor. De asemenea, este portabil și extensibil. Bazele de date SQL sunt cunoscute pentru durabilitatea și consistența lor. Astfel, cea mai bună soluție de bază de date depinde de tipul de proiect în care este implicat.
MongoDB este mai bun pentru conductele de dezvoltare, în timp ce bazele de date SQL sunt grozave pentru tranzacții fiabile de date organizaționale. MongoDB este excelent pentru procesarea și lucrul cu date nestructurate. Această bază de date NoSQL este una dintre cele mai bune alternative pentru alimentarea conductelor de date și pentru aplicații, cum ar fi analiza în timp real.
MongoDB este excelent pentru lucrul cu dispozitive IoT și aplicații mobile/web. Devine rapid alegerea preferată pentru dezvoltatorii din întreaga lume datorită flexibilității și capacității sale de a se extinde fără probleme.
În timp ce bazele de date SQL sunt excelente pentru lucrul cu date structurate, Data Science și pentru sarcini organizaționale avansate, MongoDB satisface cerințele dezvoltatorilor și companiilor moderne prin dezvoltarea eficientă a software-ului sau a serviciilor online.
Exemple de utilizare a MongoDB
Stocarea structurilor de date imbricate
Abilitatea de a imbrica obiecte în documente este una dintre cele mai mari caracteristici ale MongoDB. Pentru a încorpora datele în documente, dezvoltatorii structurează datele în MongoDB, mai degrabă decât să le despartă în diferite colecții.
Iată un exemplu: -
{_id: ObjectId(„5effaa5662679b5af2c58829”),
e-mail: „[email protected]”,
nume: {date: „Lily”, familie: „Mona”},
varsta: 31,
adrese: [{label: „acasă”,
strada: „22 1b Baker Street”,
oraș: „Londra”,
stare: „ENG”,
zip: „NW1 6XE”,
țara: „UK”},
{label: „mamă”,
strada: „555 Park Street”,
oraș: „Lake Town”,
provincia: „Ontario”,
tara: „CA”}]
}
Câmpul de nume este obiectul imbricat care are componente date și nume de familie în câmpul de adrese unde mai multe adrese sunt stocate într-o singură matrice. Fiecare adresă poate avea diverse câmpuri, ceea ce face ușoară stocarea altor tipuri de date.
Folosind MongoDB Shell
Shell-ul MongoDB este folosit în principal pentru navigarea, manipularea și inspectarea datelor documentelor. Când MongoDB este rulat pe o mașină locală, pornirea shell-ului se conectează la MongoDB la localhost pe portul standard. Asigurați-vă că adăugați șirul de conexiune după comanda mongo dacă trebuie să vă conectați la un cluster MongoDB Atlas sau la altă instanță la distanță.
Veți găsi mai jos exemple rapide de shell:-
Listează colecții
> utilizați baza_mei de date;
> afișează colecții;
utilizatorii
postări
>
Listează baze de date
> arată dbs;
admin 0.000 GB
config 0.000GB
local 0.000 GB
baza_mei de date 0,004 GB
>
Explorați cursurile noastre populare de știință a datelor
Program Executive Postuniversitar în Știința Datelor de la IIITB | Program de certificat profesional în știința datelor pentru luarea deciziilor de afaceri | Master în Știința Datelor de la Universitatea din Arizona |
Program de certificat avansat în știința datelor de la IIITB | Program de certificat profesional în știința datelor și analiză de afaceri de la Universitatea din Maryland | Cursuri de știință a datelor |
Găsiți primul document dintr-o colecție
> db.users.findOne()
{
„_id”: ObjectId(„5ce45d7606444f199acfba1e”),
„nume”: {date: „Anna”, familie: „Smith”},
„e-mail”: „[email protected]”
„vârsta”: 36
}
>
Numărați documentele dintr-o colecție
> utilizați baza_mei de date;
> db.users.count()
20234
>
Găsiți un document după ID
> db.users.findOne({_id: ObjectId(„5ce45d7606444f199acfba1e”)})
{
„_id”: ObjectId(„5ce45d7606444f199acfba1e”),
„nume”: {date: „Anna”, familie: „Smith”},
„e-mail”: „[email protected]”,
„vârsta”: 36
}
>
Interogarea colecțiilor MongoDB
Aceeași sintaxă în limbajul de interogare MongoDB (MQL) este utilizată în documentele care pot fi utilizate în interogări avansate. Veți găsi mai jos exemplele de interogare MongoDB:
Găsiți un număr limitat de rezultate
> db.users.find().limit(10)
…
>
Găsiți utilizatori după numele de familie
> db.users.find({“nume.familie”: „Smith”).count()
1
>
Rețineți că includem „nume.familie” între ghilimele, deoarece are un punct în mijloc.
Interogați documentele după intervale numerice
// Toate postările care au un câmp „aprecieri” cu valoare numerică mai mare de unu:
> db.post.find({aprecie: {$gt: 1}})
// Toate postările care au 0 aprecieri
> db.post.find({like: 0})
// Toate postările care NU au exact 1 like
> db.post.find({aprecie: {$ne: 1}})
Sortați rezultatele după un câmp
// ordine în funcție de vârstă, în ordine crescătoare (mai întâi valorile cele mai mici)
> db.user.find().sort({vârsta: 1})
{
„_id”: ObjectId(„5ce45d7606444f199acfba1e”),
„nume”: {date: „Alex”, familie: „Smith”},
„e-mail”: „[email protected]”,
„Vârsta”: 27
}
{
_id: ObjectId(„5effaa5662679b5af2c58829”),
e-mail: „[email protected]”,
nume: {date: „Jesse”, familia: „Xiao”},
varsta: 31
}
>
// ordine în funcție de vârstă, în ordine descrescătoare (mai întâi valorile cele mai mari)
> db.user.find().sort({vârsta: -1})
{
_id: ObjectId(„5effaa5662679b5af2c58829”),
e-mail: „[email protected]”,
nume: {date: „Lilly”, familie: „Mona”},
varsta: 31
}
{
„_id”: ObjectId(„5ce45d7606444f199acfba1e”),
„nume”: {date: „Anna”, familie: „Smith”},
„e-mail”: „[email protected]”,
„vârsta”: 36
}
>
Cele mai bune abilități de știință a datelor de învățat în 2022
SL. Nu | Cele mai bune abilități de știință a datelor de învățat în 2022 | |
1 | Curs Analiza Datelor | Cursuri de Statistică Inferenţială |
2 | Programe de testare a ipotezelor | Cursuri de regresie logistică |
3 | Cursuri de regresie liniară | Algebră liniară pentru analiză |
Concluzie
Scalabilitatea MongoDB o face una dintre cele mai utilizate baze de date, deoarece oferă o serie de beneficii în domeniul dezvoltării software și al științei datelor. Urmărirea unei cariere în aceste domenii este o opțiune profitabilă. Programul Executive PG în știința datelor de la upGrad este un loc minunat pentru a vă începe cariera în știința datelor și în alte domenii conexe.
De ce este MongoDB atât de ușor de scalat?
MongoDB este ușor de scalat, deoarece nu este o bază de date SQL, deoarece datele din MongoDB nu sunt cuplate relațional. Datele din MongoDB sunt stocate într-un format autonom, care permite scalarea orizontală ușoară prin distribuirea acestor documente pe mai multe sisteme (noduri).
Care este diferența dintre MongoDB și sistemele de baze de date precum MariaDB și MySQL?
MongoDB este o bază de date NoSQL, în timp ce MariaDB și MySQL sunt baze de date SQL. De asemenea, MongoDB este o bază de date non-relațională, în timp ce celelalte două sunt baze de date relaționale.
De ce este MongoDB atât de popular?
MongoDB este o parte esențială a stivei MERN în dezvoltarea web. De asemenea, este ușor să implementați și să scalați proiecte pe MongoDB. MongoDB este cunoscut pentru scalabilitatea sa. Se potrivește perfect pentru orice conductă de dezvoltare.