Što je MongoDB? Kako radi MongoDB?
MongoDB je moderan sustav za upravljanje distribuiranom bazom podataka otvorenog koda opće namjene koji se temelji na dokumentima i koji je razvio, distribuirao i podržava MongoDB Inc. To je moćna i fleksibilna, agilna NoSQL (nerelacijska) baza podataka dokumenata koja pohranjuje podatke u dokumente slične JSON (JavaScript Object Notation) objekti. MongoDB radi na operativnim sustavima Linux, Windows i macOS.
Dolazi s opsežnim paketom alata za jednostavno upravljanje podacima i izgrađen je za razvoj modernih aplikacija i za oblak te je namijenjen za korištenje od strane programera, analitičara podataka i znanstvenika podataka.
MongoDB nudi se u dva različita izdanja: MongoDB Community Server koji je izvorno dostupno i besplatno izdanje MongoDB i MongoDB Enterprise Server koji je dio MongoDB Enterprise Advanced pretplate.
Preuzmite MongoDB
- MongoDB poslužitelj zajednice
- MongoDB Enterprise poslužitelj
Kako radi MongoDB?
MongoDB strukturiran je na modelu klijent-poslužitelj gdje poslužiteljski demon prihvaća veze od klijenata i obrađuje akcije baze podataka od njih. Poslužitelj mora biti pokrenut da bi se klijenti mogli povezati i komunicirati s bazama podataka.
Pohrana podataka pod MongoDB razlikuje se od tradicionalnih baza podataka. Zapis u MongoDB-u je dokument (struktura podataka sastavljena od parova polja i vrijednosti, slično JSON objektima) i dokumenti su pohranjeni u zbirkama (analogno tablicama u RDBMS-u).
Ključne značajke MongoDB-a
Slijede ključne značajke MongoDB-a.
- MongoDB podržava prikaze samo za čitanje i materijalizirane prikaze na zahtjev. Također podržava nizove i ugniježđene objekte jer vrijednosti dopuštaju fleksibilne i dinamičke sheme. Osim toga, podržava višestruke mehanizme za pohranu podataka i pruža plug-in API za pohranu podataka koji možete koristiti za razvoj svojih mašina za pohranu.
- MongoDB dizajniran je za visoku izvedbu i postojanost podataka. Podržava ugrađene modele podataka koji ublažavaju I/O aktivnost na sustavu baze podataka. Osim toga, njegovi indeksi omogućuju brže upite i što je još važnije, mogu uključivati ključeve iz ugrađenih dokumenata i nizova.
- Dolazi s bogatim i snažnim upitnim jezikom (za podršku operacijama čitanja i pisanja), podržava agregaciju podataka i druge moderne slučajeve upotrebe kao što su pretraživanje teksta, pretraživanje grafikona i geoprostorni upiti.
- Nudi snagu relacijskih baza podataka podržavajući potpune ACID transakcije, spojeve u upitima i dvije vrste odnosa umjesto jednog: referentni i ugrađeni.
- MongoDB također podržava visoku dostupnost, koristeći mogućnost replikacije koja se naziva skup replika (skupina MongoDB poslužitelja koji održavaju skup podataka i tako osiguravaju automatsko nadogradnju, redundantnost podataka i dostupnost). Također postoji podrška za horizontalnu skalabilnost gdje dijeljenje distribuira podatke preko klastera MongoDB poslužitelja.
- Kako bi osigurao implementaciju baze podataka, MongoDB pruža razne sigurnosne značajke, kao što su autentifikacija i autorizacija, kontrola pristupa, TLS/SSL enkripcija, revizija i više.
- Također, pruža sigurnosnu kontrolnu listu koja je popis preporučenih sigurnosnih mjera koje trebate implementirati kako biste zaštitili MongoDB implementaciju. Također, osigurajte da ste ojačali sigurnost na mrežnom i poslužiteljskom sloju.
MongoDB klijent i alati
Osim toga, MongoDB dolazi s nekim korisnim naredbama baze podataka i alatima za praćenje njezine izvedbe, kao što su mongostat, mongotop i drugi, koji vam pomažu da vidite statistika u stvarnom vremenu o stanju pokrenute MongoDB instance na lokalnom hostu.
Za integraciju vaših aplikacija ili vanjskih sustava s MongoDB bazom podataka, možete koristiti jedan od mnogih službenih konektora i biblioteka. Postoje i knjižnice koje podržava zajednica, kao što su libmongo-client za C, Djongo za Django, mgo za Go, Mango za Perl, i MongoEngine, MongoKit i drugi za Python, i još mnogo toga.
Tko koristi MongoDB?
Kompanije navodno koriste MongoDB u svojim tehnološkim paketima, uključujući Google, Facebook, EA Sports, Adobe, Uber, Cisco, Verizon i mnoge druge.
Evo nekoliko korisnih članaka o MariaDB-u:
- Kako instalirati MongoDB na Ubuntu 18.04
- Instalirajte MongoDB Community Edition 4.0 na Linux
- Kako instalirati MongoDB 4 u CentOS 8
- Kako instalirati MongoDB 4 na Debian 10