MangoDB: open source alternativa MongoDB-u

MongoDB je NoSQL sistem baze podatakaorijentisan na dokumente, koji menja život mnogim programerima, omogućavajući im da izgrade aplikacije brže od relacionih baza podataka. Međutim, MongoDB je napustio svoje korijene otvorenog koda, promijenivši licencu u SSPL, što ga čini neupotrebljivim za mnoge komercijalne i open source projekte.

Prije toga je predstavljen MangoDB, koji je savršeno rješenje za one koji traže iskustvo razvoja MongoDB-a, jer MangoDB nudi sloj sa dokumentno-orijentisanom implementacijom MongoDB protokola koji radi na vrhu PostgreSQL-a.

Projekat ima za cilj da pruži mogućnost migracije MongoDB aplikacija na PostgreSQL i potpuno otvoren softverski stog. Kod je napisan na Go jeziku i distribuira se pod licencom Apache 2.0.

Imajte na umu da je MongoDB sistem administracije baze podataka orijentisan na dokumente Može se distribuirati na bilo koji broj računara i ne zahtijeva unaprijed definiranu šemu podataka. Što omogućava rukovanje strukturiranim objektima u BSON formatu (binarni JSON), bez zadane šeme.

Drugim riječima, ključevi se mogu dodati u bilo koje vrijeme "u hodu", bez rekonfiguracije baze. Podaci imaju oblik dokumenata koji se zauzvrat pohranjuju u zbirke, kolekciju koja sadrži bilo koji broj dokumenata. Kolekcije su kao tabele, a dokumenti su kao zapisi u relacionim bazama podataka.

Javna licenca na strani servera (SSPL) je vlasnička softverska licenca koju je razvio MongoDB Inc. Prema MongoDB-u, SSPL je zasnovan na AGPL3 licenci, uz dodatak novog odjeljka koji "jasno i eksplicitno utvrđuje uslove za distribuciju licencnog programa kao usluge treće strane", zahtijevajući da sav izvorni kod bude dostupan kada softver je dostupan javnosti kao dio usluge.

Ova promjena uveden je u listopadu 2018., na koji su distribucije Debian, Red Hat Enterprise Linux i Fedora naknadno napustile MongoDB, navodeći zabrinutost oko SSPL-a. Amazon je objavio podržanu, ali zaštićenu uslugu pod nazivom DocumentDB, i činilo se da SSPL nije mogao povećati prihod u oblaku za MongoDB. Većini korisnika MongoDB-a nisu potrebne mnoge napredne funkcije koje MongoDB nudi, ali im je potrebno rješenje baze podataka otvorenog koda i tu MangoDB dolazi u igru.

Srž našeg rješenja je proxy bez stanja, koji pretvara upite MongoDB protokola u SQL i koristi PostgreSQL kao mehanizam baze podataka. Bit će kompatibilan sa MongoDB drajverima i u mnogim slučajevima bi trebao raditi kao direktna zamjena za MongoDB.

MangoDB ima za cilj da postane de facto open source alternativa MongoDB-u. MangoDB je proxy otvorenog koda, koji pretvara upite MongoDB ožičenog protokola u SQL i koristi PostgreSQL kao mehanizam baze podataka. MangoDB će biti kompatibilan sa MongoDB drajverima i radiće kao direktna zamena za MongoDB u mnogim slučajevima.

Program radi kao proxy koji prevodi pozive MangoDB u SQL upite za PostgreSQL, koristeći PostgreSQL kao stvarnu pohranu. Projekat podržava drajvere za MongoDB, ali je još u fazi prototipa i ne podržava napredne karakteristike MongoDB protokola, iako je već pogodan za prevođenje jednostavnih aplikacija.

Potreba da se izbjegne korištenje MongoDB DBMS-a može se pojaviti zbog prelaska projekta na neslobodnu SSPL licencu, koja je zasnovana na AGPLv3 licenci, ali nije otvorena, jer sadrži diskriminatorni zahtjev za isporuku pod SSPL-om ne samo kod same aplikacije, već i izvorni kod svih komponenti uključenih u pružanje usluga u oblaku.

Konačno ako ste zainteresirani da saznate više o tome O MangoDB-u možete provjeriti detalje Na sledećem linku.


Sadržaj članka pridržava se naših principa urednička etika. Da biste prijavili grešku, kliknite ovdje.

Budite prvi koji komentarišete

Ostavite komentar

Vaša e-mail adresa neće biti objavljena.

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.