PostgreSQL DBMS дээр суурилсан MongoDB-ийн хэрэгжүүлэлт болох FerretDB 0.3 хувилбар.

FerretDB 0.3 төслийн хувилбар нийтлэгдсэн бөгөөд энэ нь баримт бичигт суурилсан DBMS MongoDB-г програмын кодонд өөрчлөлт оруулахгүйгээр PostgreSQL-ээр солих боломжийг олгодог. FerretDB нь MongoDB руу хийсэн дуудлагыг SQL асуулга руу PostgreSQL рүү хөрвүүлдэг прокси сервер хэлбэрээр хэрэгжсэн бөгөөд энэ нь PostgreSQL-г бодит хадгалах сан болгон ашиглах боломжийг танд олгоно. Код нь Go дээр бичигдсэн бөгөөд Apache 2.0 лицензийн дагуу түгээгддэг.

MongoDB нь AGPLv3 лиценз дээр суурилсан үнэгүй SSPL лиценз рүү шилжсэнтэй холбогдуулан шилжин суурьших шаардлага үүсч болох боловч энэ нь зөвхөн SSPL лицензийн дагуу зөвхөн програмыг бус SSPL лицензээр хангах ялгаварлан гадуурхах шаардлагыг агуулсан тул нээлттэй биш юм. код нь өөрөө төдийгүй үүлэн үйлчилгээ үзүүлэхэд оролцдог бүх бүрэлдэхүүн хэсгүүдийн эх кодууд.

FerretDB-ийн гол зорилтот үзэгчид нь MongoDB-ийн дэвшилтэт функцуудыг програмдаа ашигладаггүй боловч бүрэн нээлттэй програм хангамжийн стек ашиглахыг хүсдэг хэрэглэгчид юм. Хөгжлийн одоогийн шатанд FerretDB нь ердийн программуудад ихэвчлэн ашиглагддаг MongoDB функцүүдийн зөвхөн хэсгийг л дэмждэг хэвээр байна. Ирээдүйд тэд MongoDB-ийн драйверуудтай бүрэн нийцэж, FerretDB-ийг MongoDB-ийн ил тод орлуулах боломжийг олгохоор төлөвлөж байна.

MongoDB нь түлхүүр/утга өгөгдөл дээр ажилладаг хурдан бөгөөд өргөтгөх боломжтой системүүд болон функциональ, хайлт хийхэд хялбар харилцааны DBMS-ийн хооронд байр сууриа эзэлдэг. MongoDB нь баримт бичгийг JSON шиг форматаар хадгалахыг дэмждэг, асуулга үүсгэх уян хатан хэлтэй, янз бүрийн хадгалагдсан шинж чанаруудын индекс үүсгэж чаддаг, хоёртын том объектуудыг үр ашигтайгаар хадгалах, өгөгдлийн санд өгөгдлийг өөрчлөх, нэмэх үйлдлүүдийн бүртгэлийг дэмждэг. "Газрын зураг/багасгах" парадигмын дагуу ажиллах, хуулбарлах, эвдрэлд тэсвэртэй тохиргоог бий болгохыг дэмждэг.

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

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх