Нашри FerretDB 0.3, татбиқи MongoDB дар асоси DBMS PostgreSQL

Нашри лоиҳаи FerretDB 0.3 нашр шуд, ки ба шумо имкон медиҳад, ки DBMS MongoDB-и ба ҳуҷҷат нигаронидашударо бо PostgreSQL бидуни ворид кардани тағирот ба коди барнома иваз кунед. FerretDB ҳамчун сервери прокси амалӣ карда мешавад, ки зангҳоро ба MongoDB ба дархостҳои SQL ба PostgreSQL тарҷума мекунад, ки ба шумо имкон медиҳад PostgreSQL-ро ҳамчун нигаҳдории воқеӣ истифода баред. Рамз дар Go навишта шудааст ва таҳти иҷозатномаи Apache 2.0 паҳн карда мешавад.

Зарурати муҳоҷират метавонад дар робита ба гузариши MongoDB ба литсензияи хусусии SSPL, ки ба литсензияи AGPLv3 асос ёфтааст, аммо кушода нест, зеро он дорои талаботи табъизи табъиз дар доираи иҷозатномаи SSPL на танҳо худи рамзи барнома мебошад. , балки инчунин рамзҳои сарчашмаи ҳама ҷузъҳои марбут ба хидмати абрии таъмин.

Шунавандагони асосии мақсадноки FerretDB корбароне мебошанд, ки имкониятҳои пешрафтаи MongoDB-ро дар замимаҳои худ истифода намебаранд, аммо мехоҳанд стеки нармафзори комилан кушодаро истифода баранд. Дар марҳилаи кунунии рушд, FerretDB ҳоло ҳам танҳо як қисми қобилиятҳои MongoDB-ро дастгирӣ мекунад, ки аксар вақт дар барномаҳои маъмулӣ истифода мешаванд. Дар оянда, онҳо нақша доранд, ки мутобиқати комилро бо драйверҳо барои MongoDB ба даст оранд ва қобилияти истифодаи FerretDB-ро ҳамчун ивазкунандаи шаффоф барои MongoDB таъмин кунанд.

MongoDB ҷойгоҳи байни системаҳои зуд ва миқёспазирро ишғол мекунад, ки дар маълумотҳои калидӣ/арзиш ва DBMS-ҳои релятсионӣ кор мекунанд, ки функсионалӣ ва осон барои пурсиш мебошанд. MongoDB нигоҳдории ҳуҷҷатҳоро дар формати JSON дастгирӣ мекунад, барои тавлиди дархостҳо забони хеле фасеҳ дорад, метавонад барои атрибутҳои гуногуни захирашуда индексҳо эҷод кунад, нигоҳдории объектҳои дуии калонро самаранок таъмин кунад, сабти амалиётҳоро барои тағир додан ва илова кардани маълумот ба пойгоҳи додаҳо дастгирӣ мекунад, метавонад мувофиқи парадигмаи Харита/Коҳиш кор кунед, нусхабардорӣ ва сохтани конфигуратсияҳои ба хатогиҳо тобоварро дастгирӣ мекунад.

Нашри FerretDB 0.3 фармони findAndModify -ро муаррифӣ кард, ки ҳуҷҷатро тағир медиҳад, аммо онро ба нусхаи аслии худ бармегардонад. Операторҳои навсозии саҳро $inc ва $set амалӣ карда шуданд. Дастгирии иловашуда барои навъбандии намудҳои маълумотҳои скалярӣ.

Манбаъ: opennet.ru

Илова Эзоҳ