IMangoDB yenziwe yangoku kwaye ngoku itshintshela kwiFerretDB

Mva njes iintsuku iindaba zokusungulwa kweprojekthi zabhengezwa FerretDB, (eyayisakuba yiMangoDB), ekuvumela ukuba ufake endaweni ye-MongoDB ye-DBMS ejolise kuxwebhu nge-PostgreSQL ngaphandle kokwenza naluphi na utshintsho kwikhowudi yakho yesicelo.

I-FerretDB iphunyezwe njengomncedisi we-proxy oguqulela iifowuni kwi-MongoDB kwimibuzo ye-SQL kwi-PostgreSQL, ekuvumela ukuba usebenzise i-PostgreSQL njengendawo yokugcina.

I-FerretDB (eyayifudula i-MangoDB) yasekwa ukuze ibe ngumthombo ovulekileyo we-MongoDB. I-FerretDB ngumthombo ovulekileyo we-proxy oguqula imibuzo ye-MongoDB ye-wire protocol kwi-SQL, isebenzisa i-PostgreSQL njenge-injini yedatha.

Isidingo sokufuduka sinokuvela ngenxa yokutshintshwa kwe-MongoDB kwilayisenisi ye-SSPL engahlawulelwayo, esekelwe kwilayisenisi ye-AGPLv3, kodwa ingekho umthombo ovulekileyo, njengoko iqulethe imfuneko yocalucalulo ukubonelela phantsi kwelayisensi ye-SSPL kungekuphela nje isicelo. yekhowudi ngokwayo, kodwa kunye neekhowudi zomthombo wawo onke amacandelo abandakanyekayo ekuboneleleni ngenkonzo yefu.

Abaphulaphuli ekujoliswe kubo beFerretDB ngabasebenzisi abangasebenzisi iimpawu eziphambili zeMongoDB kwizicelo zabo, kodwa bafuna ukusebenzisa isitakhi sesoftware evuleke ngokupheleleyo.

Kwinqanaba langoku lophuhliso, iFerretDB isaxhasa kuphela inxalenye yeempawu zeMongoDB ezisetyenziswa rhoqo kwizicelo eziqhelekileyo. Kwixesha elizayo, baceba ukufikelela kwinkxaso epheleleyo yomqhubi we-MongoDB kunye nokubonelela ngokukwazi ukusebenzisa i-FerretDB njengokutshintshwa okucacileyo kwe-MongoDB.

Kufuneka kukhunjulwe ukuba I-MongoDB ikwi-niche phakathi kweenkqubo ezikhawulezayo nezikhawulezayo esebenza kwidatha kwifomathi engundoqo / yexabiso, kunye ne-DBMS yobudlelwane, esebenzayo kwaye ilungele ukuvelisa imibuzo.

Uninzi lwabasebenzisi beMongoDB abafuni uninzi lweempawu eziphambili ezibonelelwa yiMongoDB; nangona kunjalo, bafuna isisombululo sesiseko semithombo evulekileyo. Ukuqonda oku, iFerretDB ilapha ukuzalisa eso sikhewu.

MongoDB ixhasa ukugcina amaxwebhu kwifomati efana ne-JSON, inolwimi olubhetyebhetye ngokufanelekileyo ukwenza imibuzo, ingenza izalathisi zeempawu ezahlukeneyo ezigciniweyo, ibonelela ngokufanelekileyo ugcino lwento yokubini enkulu, inkxaso yokuloga kwemisebenzi ukutshintsha kunye nokongeza idatha kwisiseko sedatha, inokusebenza ngokweMaphu/Nciphisa iparadigm, ixhasa ukuphindaphinda kunye nokwakhiwa koqwalaselo olunyamezelayo.

Ekukhutshweni kweFerretDB 0.1.0 kuphawulwe ukuba iyilwe ngokutsha ngokupheleleyo indlela idatha yePostgreSQL efunyanwa ngayo. Ngaphambili, kwisicelo ngasinye esingenayo se-MongoDB, i-SQL ukuya kwi-PostgreSQL umbuzo wenziwa, usebenzisa imisebenzi yokusebenza ngefomathi ye-JSON kunye nokucoca iziphumo kwicala le-PostgreSQL.

Ngenxa yokungafani kwisemantics yePostgreSQL kunye neMongoDB json imisebenzi, kwabakho ukungavisisani ekuziphatheni xa kuthelekiswa kunye nokucwangcisa iindidi ezahlukeneyo. Ukuyicombulula le ngxaki, isampuli yedatha engafunekiyo ngoku ikhutshwe kwi-PostgreSQL kwaye ukucocwa kwesiphumo kwenziwa kwicala le-FerretDB, okwenza kube lula ukuphinda ukuziphatha kwe-MongoDB kwiimeko ezininzi.

Ixabiso lokunyuka kokuhambelana kwaba sisohlwayo sokusebenza, ekukhutshweni kwexesha elizayo ekulindeleke ukuba kulungiswe ngokukhetha ukucoca kwicala leFerretDB lemibuzo kuphela apho kukho ukwahluka kokuziphatha.

Umzekelo, umbuzo othi "db.collection.find({_id: 'some-id-value'})" unokuqwalaselwa ngokupheleleyo kwi-PostgreSQL. Injongo ephambili yeprojekthi kweli nqanaba lophuhliso kukufezekisa ukuhambelana ne-MongoDB, kwaye ukusebenza kusekho kwimvelaphi.

Kwiinguqu zokusebenza kuguqulelo olutsha, kukho inkxaso kubo bonke abaqhubi be-bitwise, "$e" umqhubi wothelekiso, kunye ne "$elemMatch" kunye ne "$bitsAllClear" abaqhubi.

Gqibela kwabo banomdla wokwazi okungakumbi ngayo, kufuneka bazi ukuba ikhowudi ibhaliwe kwi-Go kwaye ihanjiswa phantsi kwelayisensi ye-Apache 2.0 kunye ungajonga ikhowudi yayo kwikhonkco elilandelayo.


Shiya uluvo lwakho

Idilesi yakho ye email aziyi kupapashwa. ezidingekayo ziphawulwe *

*

*

  1. Inoxanduva lwedatha: I-AB Internet Networks 2008 SL
  2. Injongo yedatha: Ulawulo lwe-SPAM, ulawulo lwezimvo.
  3. Umthetho: Imvume yakho
  4. Unxibelelwano lwedatha: Idatha ayizukuhanjiswa kubantu besithathu ngaphandle koxanduva lomthetho.
  5. Ukugcinwa kweenkcukacha
  6. Amalungelo: Ngalo naliphi na ixesha unganciphisa, uphinde uphinde ucime ulwazi lwakho.