Vrystelling van FerretDB 0.3, MongoDB-implementering gebaseer op PostgreSQL DBMS

Die vrystelling van die FerretDB 0.3-projek is gepubliseer, wat jou toelaat om die dokument-georiënteerde DBMS MongoDB met PostgreSQL te vervang sonder om veranderinge aan die toepassingskode aan te bring. FerretDB word geïmplementeer as 'n instaanbediener wat oproepe na MongoDB in SQL-navrae na PostgreSQL vertaal, wat jou toelaat om PostgreSQL as die werklike berging te gebruik. Die kode is in Go geskryf en onder die Apache 2.0-lisensie versprei.

Die behoefte aan migrasie kan ontstaan ​​in verband met die oorgang van MongoDB na die eie SSPL-lisensie, wat gebaseer is op die AGPLv3-lisensie, maar nie oop is nie, aangesien dit 'n diskriminerende vereiste bevat om onder die SSPL-lisensie te lewer, nie net die toepassingskode self nie. , maar ook die bronkodes van alle komponente wat betrokke is by die voorsieningswolkdiens.

FerretDB se primêre teikengehoor is gebruikers wat nie die gevorderde vermoëns van MongoDB in hul toepassings gebruik nie, maar 'n heeltemal oop sagtewarestapel wil gebruik. Op die huidige stadium van ontwikkeling ondersteun FerretDB steeds slegs 'n deel van die MongoDB-vermoëns wat die meeste in tipiese toepassings gebruik word. In die toekoms beplan hulle om volle versoenbaarheid met drywers vir MongoDB te bereik en die vermoë te bied om FerretDB as 'n deursigtige plaasvervanger vir MongoDB te gebruik.

MongoDB beslaan 'n nis tussen vinnige en skaalbare stelsels wat werk op sleutel-/waardedata en relasionele DBBS'e wat funksioneel en maklik is om navraag te doen. MongoDB ondersteun die stoor van dokumente in 'n JSON-agtige formaat, het 'n redelik buigsame taal vir die generering van navrae, kan indekse vir verskeie gestoorde eienskappe skep, verskaf doeltreffend berging van groot binêre voorwerpe, ondersteun aanteken van bewerkings om data te verander en by die databasis te voeg, kan werk in ooreenstemming met die paradigma Map/Reduce, ondersteun replikasie en bou van foutverdraagsame konfigurasies.

Die FerretDB 0.3-vrystelling het die findAndModify-opdrag bekendgestel, wat 'n dokument wysig, maar dit na sy oorspronklike weergawe terugstuur. Veldopdateringsoperateurs $inc en $set is geïmplementeer. Bygevoeg ondersteuning vir die sortering van skalêre datatipes.

Bron: opennet.ru

Voeg 'n opmerking