Šta je MongoDB? Kako radi MongoDB?


MongoDB je open-source, moderan, opće namjene, dokumentima baziran sistem za upravljanje distribuiranom bazom podataka koji je razvio, distribuira i podržava MongoDB Inc. To je moćna i fleksibilna, agilna NoSQL (nerelacija) baza podataka dokumenata koja pohranjuje podatke u dokumente slične JSON (JavaScript Object Notation) objekata. MongoDB radi na Linux, Windows i macOS operativnim sistemima.

Dolazi sa sveobuhvatnim paketom alata za jednostavno upravljanje podacima i izgrađen je za moderni razvoj aplikacija i za oblak i namijenjen je za korištenje od strane programera, analitičara podataka i naučnika podataka.

MongoDB se nudi u dva različita izdanja: MongoDB Community Server koji je izvorno dostupno i besplatno za korištenje izdanje MongoDB i MongoDB Enterprise Server koji je dio MongoDB Enterprise Advanced pretplate.

Preuzmite MongoDB

  • MongoDB Community Server
  • MongoDB Enterprise Server

Kako radi MongoDB?

MongoDB je strukturiran na klijent-server modelu gdje serverski demon prihvata veze od klijenata i obrađuje akcije baze podataka od njih. Server mora biti pokrenut da bi se klijenti mogli povezati i komunicirati s bazama podataka.

Skladištenje podataka pod MongoDB razlikuje se od tradicionalnih baza podataka. Zapis u MongoDB je dokument (struktura podataka sastavljena od parova polja i vrijednosti, slično JSON objektima) i dokumenti se pohranjuju u zbirke (analogno tabelama u RDBMS).

Ključne karakteristike MongoDB-a

Sljedeće su ključne karakteristike MongoDB-a.

  • MongoDB podržava poglede samo za čitanje i materijalizovane poglede na zahtjev. Takođe podržava nizove i ugniježđene objekte jer vrijednosti dozvoljavaju fleksibilne i dinamičke sheme. Osim toga, podržava višestruke mehanizme za pohranu i pruža priključni API za pohranu podataka koji možete koristiti za razvoj vaših mehanizama za pohranu.
  • MongoDB je dizajniran za visoke performanse i postojanost podataka. Podržava ugrađene modele podataka koji ublažavaju I/O aktivnost na sistemu baze podataka. Osim toga, njegovi indeksi omogućavaju brže upite i što je još važnije, mogu uključivati ključeve iz ugrađenih dokumenata i nizova.
  • Dolazi sa bogatim i moćnim jezikom upita (za podršku operacijama čitanja i pisanja), podržava agregaciju podataka i druge moderne slučajeve upotrebe kao što su pretraživanje teksta, pretraga grafova i geoprostorni upiti.
  • Nudi snagu relacionih baza podataka tako što podržava potpune ACID transakcije, spajanja u upitima i dvije vrste odnosa umjesto jedne: referentne i ugrađene.
  • MongoDB takođe podržava visoku dostupnost, koristeći mogućnost replikacije koja se zove skup replika (grupa MongoDB servera koji održavaju skup podataka na taj način obezbeđujući automatski prelazak na grešku, redundantnost podataka i dostupnost). Postoji i podrška za horizontalnu skalabilnost gdje se dijeljenjem distribuiraju podaci kroz klaster MongoDB servera.
  • Kako bi osigurao implementaciju baze podataka, MongoDB pruža različite sigurnosne funkcije, kao što su autentikacija i autorizacija, kontrola pristupa, TLS/SSL enkripcija, revizija i još mnogo toga.
  • Takođe, pruža bezbednosnu kontrolnu listu koja je lista preporučenih bezbednosnih mera koje morate da primenite da biste zaštitili MongoDB implementaciju. Također, uvjerite se da imate pojačanu sigurnost na sloju mreže i servera.

MongoDB klijent i alati

Osim toga, MongoDB dolazi s nekim korisnim komandama baze podataka i alatima za praćenje njezinih performansi, kao što su mongostat, mongotop i još mnogo toga, koji vam pomažu da vidite statistika u realnom vremenu o stanju pokrenute instance MongoDB na lokalnom hostu.

Da integrišete svoje aplikacije ili eksterne sisteme sa MongoDB bazom podataka, možete koristiti jedan od mnogih zvaničnih konektora i biblioteka. Postoje i biblioteke 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.

Ko koristi MongoDB?

Kompanije navodno koriste MongoDB u svojim tehnološkim stackovima, 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