Š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