FerretDB 0.1 جو رليز، PostgreSQL DBMS جي بنياد تي MongoDB جو نفاذ

FerretDB 0.1 پروجيڪٽ (اڳوڻي MangoDB) جو رليز شايع ڪيو ويو آهي، توهان کي اجازت ڏئي ٿو ته دستاويز تي مبني DBMS MongoDB کي تبديل ڪرڻ جي بغير PostgreSQL سان ايپليڪيشن ڪوڊ ۾ تبديليون ڪرڻ جي. FerretDB هڪ پراکسي سرور جي طور تي لاڳو ڪيو ويو آهي جيڪو منگو ڊي بي کي ڪالن کي ترجمو ڪري ٿو SQL سوالن ۾ PostgreSQL، PostgreSQL کي حقيقي اسٽوريج طور استعمال ڪرڻ جي اجازت ڏئي ٿو. ڪوڊ Go ۾ لکيل آهي ۽ Apache 2.0 لائسنس تحت ورهايو ويو آهي.

لڏپلاڻ جي ضرورت پيدا ٿي سگھي ٿي MongoDB جي ھڪڙي ملڪيت واري SSPL لائسنس ڏانھن منتقلي جي ڪري، جيڪو AGPLv3 لائسنس تي ٻڌل آھي، پر اھو کليل نه آھي، ڇاڪاڻ⁠تہ اھو SSPL لائسنس جي تحت پهچائڻ لاءِ تعصبي گھرج تي مشتمل آھي نه رڳو ايپليڪيشن ڪوڊ، پر پڻ. روزي ڪلائوڊ سروس ۾ شامل سڀني اجزاء جو سورس ڪوڊ.

FerretDB جا ٽارگيٽ سامعين اهي صارف آهن جيڪي پنهنجي ايپليڪيشنن ۾ MongoDB جي جديد صلاحيتن کي استعمال نٿا ڪن، پر مڪمل طور تي کليل سافٽ ويئر اسٽيڪ استعمال ڪرڻ چاهيندا آهن. ترقي جي موجوده اسٽيج تي، FerretDB اڃا تائين صرف MongoDB صلاحيتن جو حصو آهي جيڪو اڪثر عام ايپليڪيشنن ۾ استعمال ٿيندو آهي. مستقبل ۾، اهي مونگو ڊي بي لاءِ ڊرائيورن سان مڪمل مطابقت حاصل ڪرڻ جو ارادو رکن ٿا ۽ FerretDB کي MongoDB لاءِ شفاف متبادل طور استعمال ڪرڻ جي صلاحيت فراهم ڪن ٿا.

اچو ته ياد رکون ته MongoDB تيز ۽ اسپيبلبل سسٽم جي وچ ۾ هڪ جڳهه تي قبضو ڪري ٿو جيڪو ڊيٽا کي اهم / قيمت جي شڪل ۾ هلائي ٿو، ۽ لاڳاپيل DBMSs جيڪي فنڪشنل ۽ سوالن کي ترتيب ڏيڻ ۾ آسان آهن. MongoDB دستاويزن کي محفوظ ڪرڻ جي سپورٽ ڪري ٿو JSON-جهڙي فارميٽ ۾، سوالن کي پيدا ڪرڻ لاءِ ڪافي لچڪدار ٻولي آهي، مختلف ذخيرو ڪيل خاصيتن لاءِ انڊيڪس ٺاهي سگھي ٿو، موثر طور تي وڏي بائنري شين جي اسٽوريج مهيا ڪري ٿو، ڊيٽابيس ۾ ڊيٽا کي تبديل ڪرڻ ۽ شامل ڪرڻ لاءِ آپريشن جي لاگنگ کي سپورٽ ڪري ٿو، paradigm Map/Reduce جي مطابق ڪم ڪريو، فالٽ-ٽلرنٽ ترتيبن جي نقل ۽ تعمير کي سپورٽ ڪري ٿو.

FerretDB 0.1.0 جي رليز مڪمل طور تي PostgreSQL کان ڊيٽا کي حاصل ڪرڻ جو طريقو ٻيهر ٺاهيو. اڳي، هر ايندڙ ايندڙ MongoDB درخواست لاءِ، هڪ SQL سوال PostgreSQL ڏانهن ٺاهيو ويو، JSON فارميٽ سان ڪم ڪرڻ لاءِ ڪم ڪرڻ ۽ PostgreSQL پاسي جي نتيجن کي فلٽر ڪرڻ لاءِ. PostgreSQL ۽ MongoDB json ڪمن جي سيمينٽڪس ۾ اختلافن جي ڪري، مختلف قسمن جي مقابلي ۽ ترتيب ڏيڻ وقت رويي ۾ تفاوت موجود هو. ھن مسئلي کي حل ڪرڻ لاء، ڊيٽا ھاڻي بيڪار طور تي پوسٽ گري ايس ايس ايل مان حاصل ڪئي وئي آھي، ۽ نتيجو فريٽ ڊي بي پاسي تي فلٽر ڪيو ويو آھي، جنھن کي ممڪن ڪيو ويو آھي مونگو ڊي بي جي رويي کي اڪثر حالتن ۾ نقل ڪرڻ.

وڌايل مطابقت جي قيمت ڪارڪردگي ۾ گهٽتائي هئي، جيڪا مستقبل جي رليز ۾ انهن کي معاوضي ڏيڻ جي اميد رکي ٿي فيريٽ ڊي بي جي پاسي تي چونڊيل فلٽرنگ صرف سوالن لاءِ جن جي رويي ۾ فرق آهي. مثال طور، سوال "db.collection.find({_id: 'some-id-value'})" مڪمل طور تي PostgreSQL ۾ پروسيس ڪري سگھجي ٿو. ترقي جي هن مرحلي تي منصوبي جو بنيادي مقصد مونگو ڊي بي سان مطابقت حاصل ڪرڻ آهي، ۽ ڪارڪردگي هاڻي لاءِ پس منظر ڏانهن منتقل ڪيو ويو آهي. نئين ورزن ۾ فنڪشنل تبديلين ۾، سڀني بٽ آپريٽرز لاءِ سپورٽ، “$eq” موازن آپريٽر، گڏوگڏ “$elemMatch” ۽ “$bitsAllClear” آپريٽرز نوٽ ڪيل آهن.

جو ذريعو: opennet.ru

تبصرو شامل ڪريو