Š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