أصدرت أمازون كود مصدر Babelfish لـ PostgreSQL

مؤخرا أفادت الأخبار أن أمازون قررت إصدار الكود المصدري لـ "Babelfish for PostgreSQL" ، اقتراح امتداد لقاعدة بيانات PostgreSQL مع تنفيذ قدرات محددة لقاعدة بيانات Microsoft SQL Server.

الهدف الرئيسي للمشروع هو توفير القدرة على تشغيل التطبيقات المكتوبة لـ SQL Server على الخوادم التي تشغل PostgreSQL. رمز المشروع مفتوح بموجب تراخيص Apache 2.0 وترخيص PostgreSQL.

بالنسبة لأولئك الذين ليسوا على دراية بـ Babelfish ، يجب أن تعرفوا هذا يدعم بروتوكول الشبكة المستخدم لتوصيل العملاء بملحقات لغة الاستعلام الخاصة بـ SQL Server و T-SQL و SQL Server ، يسمح لك بترجمة التطبيقات قيد التشغيل من Microsoft SQL Server إلى PostgreSQL دون تعديل التعليمات البرمجية الخاصة بك أو بأقل قدر من التغييرات ودون استبدال برامج التشغيل بنظام DBMS. بالنسبة للتطبيقات ، يبدو Babelfish كخادم SQL عادي. المشروع قيد الاستخدام بالفعل على Amazon Aurora.

اليوم ، نجعل Babelfish متاحًا لـ Aurora PostgreSQL. يتيح Babelfish الإصدار المتوافق مع Amazon Aurora PostgreSQL لفهم بروتوكول اتصال SQL Server. يمكّنك من ترحيل تطبيقاتك من SQL Server إلى PostgreSQL بسعر أرخص وأسرع وبأقل مخاطر مرتبطة بمثل هذا التغيير.

يذكر أن المشروع يتبع Babelfish نموذج تطوير مفتوح تمكن المساهمين في المجتمع من إحداث التغيير والتأثير في التنمية. بالنسبة للمستخدمين ، التغيير إلى سيسمح لك Babelfish بتجنب الإتاوات الكبيرة لاستخدام SQL Server، تجاوز قيود الترخيص ولا تعتمد على التغييرات في سياسة الصيانة لمنتج مملوك (إلغاء المزايا ، إنهاء دعم النظام الأساسي ، زيادة الأسعار).

يتضمن المشروع مجموعة من امتدادات PostgreSQLومجموعة من تصحيحات PostgreSQL ومجموعة أدوات البوصلة:

توفر الإضافات دعم PostgreSQL لبناء الجملة وأنواع البيانات والوظائف الإضافية المطلوبة للترحيل من SQL Server. تم اقتراح ما مجموعه 4 ملحقات:

  • babelfishpg_tsql: وهو امتداد لتنفيذ لغة T-SQL (Transact-SQL) التي تعزز SQL بالبرمجة الإجرائية ، ودعم المتغيرات المحلية والوظائف المتقدمة للتعامل مع السلاسل والتواريخ والتعبيرات الرياضية. تم تنفيذ معظم وظائف T-SQL المطلوبة ، بما في ذلك حفظ النقاط والإجراءات المخزنة والمعاملات المتداخلة. ومع ذلك ، لا يزال جزء كبير من بناء الجملة والوظائف غير محققة (كقاعدة عامة ، هذه هي الخصائص التي نادرًا ما تستخدم في التطبيقات الحقيقية ، جدول التوافق). على سبيل المثال ، التركيبات "ADD SIGNATURE" و "CREATE AGGREGATE" و "CREATE / ALTER / DROP APPLICATION ROLE | ASSEMBLY | مفتاح غير متماثل" و "BEGIN CONVERSATION TIME" و "END / MOVE CONVERSATION" وما إلى ذلك. لم تتوفر بعد.
  • babelfishpg_tds: امتداد لتطبيق بروتوكول TDS (دفق البيانات الجدولية) المستخدم في SQL Server لاتصال الشبكة بين DBMS والعميل. يتم دعم الإصدار 7.1 من بروتوكول TDS والإصدارات الأحدث.
  • بابيلفيشpg_common: امتدادًا لتنفيذ أنواع بيانات SQL Server محددة.
    babelfishpg_money: هو تطبيق نوع المال يعتمد على كود التمديد FixedDecimal.

تتضمن التصحيحات تغييرات على محرك PostgreSQL ضرورية لتوفير وظائف إضافية لامتدادات Babelfish. حاليًا ، جنبًا إلى جنب مع مطوري PostgreSQL ، يتم العمل على تضمين التصحيحات المعدة في تكوين PostgreSQL الرئيسي. التصحيحات المعدة لـ PostgreSQL 13.

تم تصميم أداة البوصلة لتحليل البرامج النصية لـ T-SQL DDL ورمز SQL للتوافق مع Babelfish. في الإخراج ، يتم إنشاء تقرير عن الوظائف المطلوبة لبدء التطبيق والتي لم يتم دعمها من قبل Babelfish حتى الآن.

مكتبات العملاء التالية للاتصال بـ MS SQL Server مدعومة رسميًا:

  • مزود OLEDB / MSOLEDBSQL
  • سائق OLEDB / SQLOLEDB
  • إطار عمل كيان Ado.NET
  • عميل SQL Server 11.0 الأصلي
  • ODBC (اتصال قاعدة البيانات المفتوح)
    JDBC (اتصال قاعدة بيانات Java)

أخيرا إذا كنت مهتمًا بمعرفة المزيد عنها، يمكنك التحقق من تفاصيل الملاحظة في الرابط التالي. بالنسبة للمهتمين بالقدرة على رؤية الكود المصدري ، يمكنهم القيام بذلك من هذا الرابط.


محتوى المقال يلتزم بمبادئنا أخلاقيات التحرير. للإبلاغ عن خطأ انقر فوق هنا.

كن أول من يعلق

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني.

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.