Lëshimi i parë stabil i FerretDB, një implementim i MongoDB mbi bazën e DBMS PostgreSQL

Ë publikua versione 1.0 e projektit FerretDB, qĂ« lejon zĂ«vendĂ«simin e DBMS me dokumente MongoDB me PostgreSQL pa bĂ«rĂ« ndryshime nĂ« kodin e aplikacioneve. FerretDB Ă«shtĂ« implementuar si njĂ« server proxy, i cili pĂ«rkthen kĂ«rkesat pĂ«r MongoDB nĂ« kĂ«rkesa SQL pĂ«r PostgreSQL, duke lejuar pĂ«rdorimin e PostgreSQL si depo reale. Versioni 1.0 shĂ«nohet si lĂ«shimi i parĂ« stabil, i gatshĂ«m pĂ«r pĂ«rdorim tĂ« gjerĂ«. Kodi Ă«shtĂ« shkruar nĂ« gjuhĂ«n Go dhe shpĂ«rndahet nĂ«n licencĂ«n Apache 2.0.

Grupi primar i audiencës së FerretDB janë përdoruesit që nuk shfrytëzojnë në aplikacionet e tyre funksionalitetet e avancuara të MongoDB, por dëshirojnë të përdorin një teknologji plotësisht të hapur. Në këtë fazë të zhvillimit, FerretDB mbështet një nëngrup të mundësive të MongoDB, të cilat përdoren më shpesh në aplikacione standarde. Nevoja për implementimin e FerretDB mund të lindë si rezultat i kalimit të MongoDB në një licencë jo të hapur SSPL, e cila bazohet në licencën AGPLv3, por nuk është e hapur, pasi përmban një kërkesë diskriminuese për dorëzimin nën licencën SSPL jo vetëm për kodin e vet aplikacionit, por edhe për kodin burimor të të gjitha komponenteve të involvuara në ofrimin e shërbimit në re.

MongoDB zĂ« njĂ« niĆŸĂ« midis sistemeve tĂ« shpejta dhe tĂ« shkallĂ«zueshme qĂ« operojnĂ« me tĂ« dhĂ«nat nĂ« formatin çelĂ«s/vlerĂ« dhe bazat e tĂ« dhĂ«nave relacionale, funksionale dhe tĂ« lehta pĂ«r formimin e kĂ«rkesave. MongoDB mbĂ«shtet ruajtjen e dokumenteve nĂ« njĂ« format tĂ« ngjashĂ«m me JSON, ka njĂ« gjuhĂ« tĂ« mjaftueshme fleksibile pĂ«r formimin e kĂ«rkesave, mund tĂ« krijojĂ« indekse pĂ«r atributet e ndryshme tĂ« ruajtura, siguron ruajtjen efektive tĂ« objekteve binarĂ« tĂ« mĂ«dhenj, mbĂ«shtet regjistrimin e operacioneve pĂ«r ndryshimin dhe shtimin e tĂ« dhĂ«nave nĂ« DB, mund tĂ« punojĂ« sipas paradigmat Map/Reduce, mbĂ«shtet replikimin dhe ndĂ«rtimin e konfigurimeve tĂ« qĂ«ndrueshme.

Ndër ndryshimet në FerretDB 1.0:

  • JanĂ« implementuar komandat createIndexes dhe dropIndexes pĂ«r krijimin dhe fshirjen e njĂ« ose mĂ« shumĂ« indekseve pĂ«r koleksionin.
  • ËshtĂ« implementuar komanda getMore pĂ«r tĂ« nxjerrĂ« njĂ« sasi tĂ« re rezultatesh tĂ« marra nga ekzekutimi i komandave qĂ« kthejnĂ« kursorin, si find dhe aggregate.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r operatorin agregues $sum pĂ«r llogaritjen e shumĂ«s sĂ« vlerave tĂ« grupit.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r operatorĂ«t $limit dhe $skip pĂ«r tĂ« kufizuar numrin dhe pĂ«r tĂ« anashkaluar dokumentet gjatĂ« agregimit.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r operatorin $count pĂ«r numĂ«rimin e dokumenteve gjatĂ« agregimit.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r operatorin $unwind pĂ«r tĂ« shpĂ«rbĂ«rĂ« fushat e arrays nĂ« dokumentet hyrĂ«se dhe pĂ«r tĂ« formuar njĂ« listĂ« me njĂ« dokument tĂ« veçantĂ« pĂ«r secilin element tĂ« array-t.
  • ËshtĂ« shtuar mbĂ«shtetje e pjesshme pĂ«r komandat collStats, dbStats dhe dataSize pĂ«r tĂ« marrĂ« statistikĂ«n mbi koleksionin dhe DB-nĂ«, si dhe pĂ«r madhĂ«sinĂ« e tĂ« dhĂ«nave.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster