MangoDB: atvērtā koda alternatīva MongoDB

MongoDB ir NoSQL datu bāzes sistēmaorientēts uz dokumentiem, daudzu izstrādātāju dzīvi mainošs, ļaujot viņiem izveidot lietojumprogrammas ātrāk nekā relāciju datu bāzes. Tomēr MongoDB ir atteicies no atvērtā pirmkoda saknēm, mainot licenci uz SSPL, padarot to neizmantojamu daudziem komerciāliem un atvērtā pirmkoda projektiem.

Pirms tam tika prezentēts MangoDB, kas ir ideāls risinājums tiem, kas meklē MongoDB izstrādes pieredzi, jo MangoDB piedāvā slāni ar MongoDB protokola uz dokumentiem orientētu ieviešanu, kas darbojas virs PostgreSQL.

Projekts mērķis ir nodrošināt iespēju migrēt MongoDB lietojumprogrammas uz PostgreSQL un pilnībā atvērta programmatūras steka. Kods ir uzrakstīts Go valodā un tiek izplatīts saskaņā ar Apache 2.0 licenci.

Ņemiet vērā, ka MongoDB ir uz dokumentiem orientēta datu bāzes administrēšanas sistēma To var izplatīt pa jebkuru datoru skaitu, un tai nav nepieciešama iepriekš definēta datu shēma. Kas ļauj apstrādāt strukturētus objektus BSON formātā (binārā JSON) bez noklusējuma shēmas.

Citiem vārdiem sakot, atslēgas var pievienot jebkurā laikā "lidojumā", bez bāzes pārkonfigurēšanas. Dati ir dokumentu veidā, kas savukārt tiek glabāti kolekcijās, kolekcijā, kurā ir jebkurš dokumentu skaits. Kolekcijas ir kā tabulas, un dokumenti ir kā ieraksti relāciju datu bāzēs.

Servera puses publiskā licence (SSPL) ir patentēta programmatūras licence, ko izstrādājusi MongoDB Inc. Saskaņā ar MongoDB sniegto informāciju SSPL ir balstīta uz AGPL3 licenci, pievienojot jaunu sadaļu, kas "skaidri un skaidri nosaka licencētās programmas kā trešās puses pakalpojuma izplatīšanas noteikumus", pieprasot, lai viss pirmkods būtu pieejams, kad programmatūra ir pieejama sabiedrībai kā pakalpojuma daļa.

Šīs izmaiņas tika izlaista 2018. gada oktobrī, un Debian, Red Hat Enterprise Linux un Fedora izplatījumi pēc tam atteicās no MongoDB, atsaucoties uz bažām par SSPL. Amazon izlaida atbalstītu, bet patentētu pakalpojumu DocumentDB, un izrādījās, ka SSPL nevarēja palielināt MongoDB ieņēmumus no mākoņa. Lielākajai daļai MongoDB lietotāju nav vajadzīgas daudzas uzlabotās funkcijas, ko piedāvā MongoDB, taču viņiem ir nepieciešams atvērtā pirmkoda datu bāzes risinājums, un šeit tiek izmantots MangoDB.

Mūsu risinājuma pamatā ir bezvalsts starpniekserveris, kas pārvērš MongoDB protokola vaicājumus par SQL un izmanto PostgreSQL kā datu bāzes dzinēju. Tas būs savietojams ar MongoDB draiveriem, un daudzos gadījumos tam vajadzētu darboties kā tiešam MongoDB aizstājējam.

MangoDB mērķis ir kļūt par de facto atvērtā pirmkoda alternatīvu MongoDB. MangoDB ir atvērtā pirmkoda starpniekserveris, kas pārvērš MongoDB vadu protokola vaicājumus par SQL un izmanto PostgreSQL kā datu bāzes dzinēju. MangoDB būs savietojams ar MongoDB draiveriem un daudzos gadījumos darbosies kā tiešs MongoDB aizstājējs.

Programma darbojas kā starpniekserveris, kas pārvērš MangoDB izsaukumus SQL vaicājumos uz PostgreSQL, izmantojot PostgreSQL kā reālu krātuvi. Projekts atbalsta MongoDB draiverus, taču tas joprojām ir prototipa stadijā un neatbalsta MongoDB protokola uzlabotās funkcijas, lai gan tas jau ir piemērots vienkāršu lietojumprogrammu tulkošanai.

Nepieciešamība izvairīties no MongoDB DBVS izmantošanas var rasties sakarā ar projekta pāreju uz bezmaksas SSPL licenci, kas ir balstīta uz AGPLv3 licenci, bet nav atvērta, jo satur diskriminējošu prasību piegādāt saskaņā ar SSPL ne tikai pašas lietojumprogrammas kods, bet arī visu mākoņpakalpojumu nodrošināšanā iesaistīto komponentu pirmkodi.

Beidzot ja jūs interesē uzzināt vairāk par to Par MangoDB varat pārbaudīt sīkāku informāciju Šajā saitē.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.