Izdaja FerretDB 0.3, implementacije MongoDB, ki temelji na DBMS PostgreSQL

Objavljena je bila izdaja projekta FerretDB 0.3, ki vam omogoča zamenjavo dokumentno usmerjenega DBMS MongoDB s PostgreSQL brez spreminjanja kode aplikacije. FerretDB je implementiran kot proxy strežnik, ki prevede klice v MongoDB v poizvedbe SQL v PostgreSQL, kar vam omogoča uporabo PostgreSQL kot dejanskega pomnilnika. Koda je napisana v Go in se distribuira pod licenco Apache 2.0.

Potreba po migraciji se lahko pojavi v povezavi s prehodom MongoDB na neprosto licenco SSPL, ki temelji na licenci AGPLv3, vendar ni odprta, saj vsebuje diskriminatorno zahtevo, da se pod licenco SSPL zagotovi ne le aplikacija samo kodo, temveč tudi izvorne kode vseh komponent, ki sodelujejo pri zagotavljanju storitev v oblaku.

Glavna ciljna publika za FerretDB so uporabniki, ki v svojih aplikacijah ne uporabljajo naprednih funkcij MongoDB, ampak želijo uporabljati popolnoma odprt programski sklad. Na trenutni stopnji razvoja FerretDB še vedno podpira le del funkcij MongoDB, ki se najpogosteje uporabljajo v tipičnih aplikacijah. V prihodnosti nameravajo doseči popolno združljivost z gonilniki za MongoDB in zagotoviti možnost uporabe FerretDB kot pregledne zamenjave za MongoDB.

MongoDB zavzema nišo med hitrimi in razširljivimi sistemi, ki delujejo na podatkih ključ/vrednost, in relacijskimi DBMS, ki so funkcionalni in enostavni za poizvedovanje. MongoDB podpira shranjevanje dokumentov v formatu, podobnem JSON, ima dokaj prilagodljiv jezik za generiranje poizvedb, lahko ustvari indekse za različne shranjene atribute, učinkovito zagotavlja shranjevanje velikih binarnih objektov, podpira beleženje operacij za spreminjanje in dodajanje podatkov v zbirko podatkov, lahko deluje v skladu s paradigmo Map/Reduce, podpira replikacijo in gradnjo konfiguracij, odpornih na napake.

В выпуске FerretDB 0.3 реализована команда findAndModify изменяющая документ, но возвращающая его первоначальную версию. Реализованы операторы обновления полей — $inc и $set. Добавлена поддержка сортировки скалярных типов данных.

Vir: opennet.ru

Dodaj komentar