MangoDB loyihasi PostgreSQL ustidagi MongoDB DBMS protokolini amalga oshirishni ishlab chiqadi

MangoDB loyihasining birinchi ommaviy relizi mavjud bo'lib, u PostgreSQL DBMS ustida ishlaydigan hujjatga yo'naltirilgan MongoDB DBMS protokolini amalga oshirishga ega qatlamni taklif qiladi. Loyiha MongoDB DBMS yordamida ilovalarni PostgreSQL va butunlay ochiq dasturiy ta'minot to'plamiga ko'chirish imkoniyatini taqdim etishga qaratilgan. Kod Go'da yozilgan va Apache 2.0 litsenziyasi ostida tarqatiladi.

Dastur proksi-server shaklida ishlaydi, MangoDB-ga qo'ng'iroqlarni SQL so'rovlariga PostgreSQL-ga tarjima qiladi, PostgreSQL-ni haqiqiy saqlash sifatida ishlatadi. Loyiha MongoDB uchun drayverlarga mos keladi, lekin hali ham prototip bosqichida va MongoDB protokolining ilg'or imkoniyatlarini qo'llab-quvvatlamaydi, garchi u oddiy ilovalarni tarjima qilish uchun allaqachon mos bo'lsa ham.

MongoDB DBMS dan foydalanishdan voz kechish zarurati loyihaning AGPLv3 litsenziyasiga asoslangan bepul bo'lmagan SSPL litsenziyasiga o'tishi bilan bog'liq bo'lishi mumkin, ammo ochiq emas, chunki u SSPL litsenziyasi bo'yicha yetkazib berish uchun kamsituvchi talabni o'z ichiga oladi. nafaqat dastur kodining o'zi, balki bulut xizmatini taqdim etishda ishtirok etadigan barcha komponentlarning manba kodlari.

Eslatib o'tamiz, MongoDB ma'lumotlarni kalit/qiymat formatida boshqaradigan tezkor va kengaytiriladigan tizimlar va funktsional va so'rovlarni shakllantirish oson bo'lgan relyatsion DBMSlar o'rtasida joy egallaydi. MongoDB hujjatlarni JSON-ga o'xshash formatda saqlashni qo'llab-quvvatlaydi, so'rovlarni yaratish uchun juda moslashuvchan tilga ega, turli xil saqlangan atributlar uchun indekslarni yaratishi mumkin, katta ikkilik ob'ektlarning saqlanishini samarali ta'minlaydi, ma'lumotlar bazasiga ma'lumotlarni o'zgartirish va qo'shish operatsiyalarini ro'yxatga olishni qo'llab-quvvatlaydi. Xarita/Kamaytirish paradigmasiga muvofiq ishlash, xatoga chidamli konfiguratsiyalarni takrorlash va qurishni qo'llab-quvvatlaydi.

Manba: opennet.ru

a Izoh qo'shish