D'fhógair Microsoft foinse oscailte an tionscadail DocumentDB, ar féidir a úsáid mar NoSQL DBMS ar leith, mar ardán chun do chórais stórála féin a chruthú, nó mar bhreis ar shonraí a stóráil i bhformáid BSON sa PostgreSQL DBMS. Go praiticiúil, úsáideann Microsoft DocumentDB mar bhunús don táirge “Azure Cosmos DB for MongoDB”, a sholáthraíonn comhéadan atá comhoiriúnach leis an DBMS MongoDB atá dírithe ar dhoiciméid. Tá cód an tionscadail scríofa i C agus déantar é a dháileadh faoi cheadúnas MIT. Cuirtear an t-inneall DocumentDB i bhfeidhm mar bhreiseán don DBMS PostgreSQL.
Cosúil le MongoDB, úsáideann DocumentDB an fhormáid atá cosúil le JSON BSON (Dénártha JSON) chun doiciméid struchtúrtha a stóráil, a ligeann duit struchtúir ordlathacha a chruthú inar féidir roinnt doiciméad agus eagair a neadú i ndoiciméid agus eagair eile. Is í an phríomhdhifríocht ó JSON ná sraithiú sonraí a úsáid i léiriú dénártha. Soláthraíonn an tionscadal an dá oibríocht NoSQL chun sonraí a chruthú, a léamh, a nuashonrú agus a scriosadh i bhformáid BSON, agus API do PostgreSQL dúchais (is féidir DocumentDB a mheas mar mhalairt de PostgreSQL le tacaíocht BSON). Is féidir le DocumentDB úsáid a bhaint as cumais chuardaigh téacs iomlán, oibríochtaí ar chineálacha sonraí veicteora agus geospásúla.
Tá dhá chomhpháirt sa tionscadal:
- pg_documentdb_core - síneadh ar PostgreSQL le cur i bhfeidhm an chineáil BSON agus oibríochtaí chun oibriú i PostgreSQL le sonraí BSON.
- pg_documentdb - API Public DocumentDB le hoibríochtaí bunúsacha chun oibriú le doiciméid BSON, próiseáil fiosrúcháin agus bainistíocht innéacs.
Soláthraíonn an chéad eisiúint DocumentDB tacaíocht d’oibríochtaí CRUD (cruthaigh, léigh, nuashonraigh, scrios), innéacsanna do réimsí aonair BSON, innéacsanna do chuardach lántéacs (RUM comhoiriúnach), ceisteanna veicteora agus geospásúla (pg_vector agus postgis comhoiriúnach), giniúint fiosrúcháin cumais, agus comhiomlánú sonraí BSON.
Tá an tionscadal FerretDB, atá ag forbairt cur i bhfeidhm DBMS MongoDB bunaithe ar DBMS PostgreSQL, tar éis athrú go dtí DocumentDB a úsáid cheana féin. Ligeann FerretDB duit stoc bogearraí iomlán oscailte bunaithe ar PostgreSQL a chur in ionad MongoDB DBMS atá dírithe ar dhoiciméid, gan athruithe a dhéanamh ar chód an iarratais. Mínítear an gá atá le hathsholáthar MongoDB trí aistriú an DBMS seo go dtí an ceadúnas SSPL, atá bunaithe ar cheadúnas AGPLv3, ach nach bhfuil oscailte, toisc go bhfuil ceanglas idirdhealaitheach ann le seachadadh faoin gceadúnas SSPL, ní hamháin an cód iarratais féin, ach freisin cóid foinse na gcomhpháirteanna go léir a bhaineann le soláthar na seirbhíse néal.
Ar dtús, bhí obair FerretDB teoranta do ghlaonna chuig MongoDB a aistriú go fiosruithe SQL go PostgreSQL, ach ag tosú le leagan FerretDB 2.0, atá ag céim an iarrthóra scaoileadh, baineadh úsáid as an síneadh PosgreSQL DocumentDB chun tacaíocht a chur i bhfeidhm don fhormáid BSON. Chuir aistriú go DocumentDB feabhas níos mó ná 20 uair ar fheidhmíocht FerretDB i gcás roinnt ualaí oibre. I measc nuálaíochtaí eile i FerretDB 2.0 tá comhoiriúnacht fheabhsaithe le MongoDB, cumais mhacasamhlú, agus tacaíocht cuardaigh veicteora. Tá cód FerretDB scríofa i Go agus dáilte faoi cheadúnas Apache 2.0.
Foinse: oscailtenet.ru
