د FerretDB 0.1 خوشې کول، د PostgreSQL DBMS پر بنسټ د MongoDB پلي کول

د FerretDB 0.1 پروژې (پخوانی MangoDB) خپرول خپاره شوي، تاسو ته اجازه درکوي چې د غوښتنلیک کوډ کې بدلون پرته د PostgreSQL سره د سند پر بنسټ DBMS MongoDB ځای په ځای کړئ. FerretDB د پراکسي سرور په توګه پلي کیږي چې منګو ډی بی ته زنګونه د SQL پوښتنو ته PostgreSQL ته وژباړي، د PostgreSQL ته اجازه ورکوي چې د اصلي ذخیره په توګه وکارول شي. کوډ په Go کې لیکل شوی او د اپاچي 2.0 جواز لاندې ویشل شوی.

د مهاجرت اړتیا ممکن د ملکیت SSPL جواز ته د MongoDB د لیږد له امله رامینځته شي ، کوم چې د AGPLv3 جواز پراساس دی ، مګر خلاص ندی ، ځکه چې دا د SSPL جواز لاندې تحویلولو لپاره تبعیضي اړتیا لري نه یوازې پخپله د غوښتنلیک کوډ ، بلکه د چمتو کولو کلاوډ خدمت کې دخیل ټولو برخو سرچینې کوډ.

د FerretDB هدف لرونکي لیدونکي هغه کارونکي دي چې په خپلو غوښتنلیکونو کې د MongoDB پرمختللي وړتیاوې نه کاروي، مګر غواړي په بشپړ ډول خلاص سافټویر سټیک وکاروي. د پراختیا په اوسني مرحله کې، فیریټ ډی بی لاهم د MongoDB وړتیاوو یوازې برخه مالتړ کوي چې ډیری وختونه په عادي غوښتنلیکونو کې کارول کیږي. په راتلونکي کې، دوی پالن لري چې د MongoDB لپاره د چلوونکو سره بشپړ مطابقت ترلاسه کړي او د MongoDB لپاره د شفاف بدیل په توګه د FerretDB کارولو وړتیا چمتو کړي.

راځئ چې یادونه وکړو چې MongoDB د ګړندي او توزیع وړ سیسټمونو ترمینځ ځای نیسي چې ډیټا په کلیدي / ارزښت فارمیټ کې چلوي ، او اړونده DBMSs چې فعال دي او د پوښتنو رامینځته کول اسانه دي. MongoDB د JSON په څیر ب formatه کې د اسنادو ذخیره کولو ملاتړ کوي ، د پوښتنو رامینځته کولو لپاره کافي انعطاف وړ ژبه لري ، کولی شي د مختلف زیرمه شوي ځانګړتیاو لپاره شاخصونه رامینځته کړي ، په مؤثره توګه د لوی بائنری شیانو ذخیره چمتو کوي ، ډیټابیس ته د معلوماتو بدلولو او اضافه کولو لپاره د عملیاتو لاګ کولو ملاتړ کوي ، کولی شي د تمثیل نقشې/کمولو سره سم کار کول، د غلطۍ زغمونکي تشکیلاتو د نقل او جوړولو ملاتړ کوي.

د FerretDB 0.1.0 خوشې کول په بشپړ ډول د PostgreSQL څخه د معلوماتو ترلاسه کولو میتود له سره ډیزاین کړ. پخوا، د هرې راتلوونکې MongoDB غوښتنې لپاره، یو SQL پوښتنه PostgreSQL ته رامینځته شوې وه، د JSON فارمیټ سره کار کولو او د PostgreSQL اړخ کې د پایلو فلټر کولو لپاره د دندو په کارولو سره. د PostgreSQL او MongoDB json دندو په سیمانټیکونو کې د توپیرونو له امله، په چلند کې توپیر شتون درلود کله چې مختلف ډولونه پرتله کول او ترتیب کول. د دې ستونزې د حل لپاره، ډاټا اوس په ناڅاپي ډول د PostgreSQL څخه راوړل کیږي، او پایله یې د فیرټ ډی بی اړخ کې فلټر شوې، کوم چې دا ممکنه کړې چې په ډیری حاالتو کې د MongoDB چلند نقل کړي.

د زیاتوالي مطابقت نرخ په فعالیت کې کمښت و ، کوم چې په راتلونکي ریلیزونو کې دوی تمه لري چې د فیرټ ډی بی اړخ کې یوازې هغه پوښتنې چې په چلند کې توپیر شتون لري په انتخابي ډول فلټر کولو سره خساره ورکړي. د مثال په توګه، پوښتنه "db.collection.find({_id: 'some-id-value'})" په بشپړ ډول په PostgreSQL کې پروسس کیدی شي. د پراختیا په دې مرحله کې د پروژې لومړنی هدف د MongoDB سره مطابقت ترلاسه کول دي، او فعالیت د اوس لپاره پس منظر ته راجع کیږي. په نوې نسخه کې د فعال بدلونونو په مینځ کې، د ټولو بټ آپریټرونو ملاتړ، د "$eq" پرتله کولو آپریټر، او همدارنګه "$elemMatch" او "$bitsAllClear" آپریټرونه یادونه شوې.

سرچینه: opennet.ru

Add a comment