SQL الموزع

قاعدة بيانات SQL الموزعة هي قاعدة بيانات علائقية واحدة تُكرر البيانات عبر خوادم متعددة. تتميز قواعد بيانات SQL الموزعة باتساق عالٍ، وتدعم معظمها الاتساق عبر الخوادم ومراكز البيانات وشبكات المناطق الواسعة ، بما في ذلك مناطق التوافر السحابية والمناطق الجغرافية السحابية . تستخدم قواعد بيانات SQL الموزعة عادةً خوارزميات Paxos أو Raft لتحقيق توافق في الآراء بين العُقد المتعددة.

أحيانًا يُشار إلى قواعد بيانات SQL الموزعة باسم NewSQL، لكن NewSQL هو مصطلح أكثر شمولاً يتضمن قواعد البيانات التي ليست قواعد بيانات موزعة .

تاريخ

ساهمت قاعدة بيانات Spanner من جوجل في نشر مفهوم قواعد بيانات SQL الموزعة الحديثة. وقد وصفت جوجل قاعدة البيانات وبنيتها في ورقة بحثية صدرت عام 2012 بعنوان "Spanner: قاعدة بيانات جوجل الموزعة عالميًا". وذكرت الورقة أن Spanner تطورت من مخزن قيم مفتاحية شبيه بـ Big Table إلى قاعدة بيانات زمنية متعددة الإصدارات حيث تُخزن البيانات في "جداول شبه علائقية مُهيكلة". [ 1 ]

يستخدم Spanner الساعات الذرية مع خوارزمية Paxos لتحقيق الإجماع فيما يتعلق بالحالة الموزعة بين الخوادم. في عام 2010، وفي إصدار سابق، انتقل ClustrixDB (الذي يُعرف الآن باسم MariaDB Xpand) من جهاز مادي إلى قاعدة بيانات برمجية قائمة على Paxos [ 2 ] ، ثم استحوذت عليه MariaDB [ 3 ] وأُضيف إلى خدمة سحابية SaaS تُسمى SkySQL [ 4 ] . في عام 2015، غادر اثنان من مهندسي جوجل الشركة لإنشاء Cockroach DB الذي يحقق نتائج مماثلة باستخدام خوارزمية Raft دون الحاجة إلى ساعات ذرية أو أجهزة مخصصة [ 5 ] .

يُستخدم Spanner بشكل أساسي في حالات الاستخدام المتعلقة بالمعاملات وسلاسل البيانات الزمنية. ومع ذلك، عززت جوجل هذا البحث بورقة بحثية لاحقة حول Google F1، والتي وصفتها بأنها قاعدة بيانات هجينة لمعالجة المعاملات والتحليلات مبنية على Spanner. [ 1 ]

بنيان

تتميز قواعد بيانات SQL الموزعة بالخصائص العامة التالية:

  • النسخ المتزامن
  • اتساق قوي للمعاملات عبر مناطق التوافر على الأقل (أي الامتثال لمعايير ACID ) [ 6 ]
  • بنية الواجهة الأمامية لقاعدة البيانات العلائقية - أي أن البيانات ممثلة كجداول ذات صفوف وأعمدة مشابهة لأي نظام إدارة قواعد بيانات علائقية آخر 
  • تخزين البيانات المجزأة تلقائيًا
  • تخزين المفتاح والقيمة الأساسي [ 7 ] [ 1 ]
  • تطبيق SQL أصلي

وفقًا لنظرية CAP ، فإن قواعد بيانات SQL الموزعة "CP" أو متسقة ومتسامحة مع التقسيم. من الناحية الخوارزمية، فإنها تضحي بالتوافر، حيث أن تعطل عقدة أساسية قد يجعل قاعدة البيانات غير متاحة للكتابة.

تتطلب جميع تطبيقات SQL الموزعة نوعًا من التزامن الزمني لضمان الاتساق. وباستثناء Spanner، لا تستخدم معظمها أجهزة مخصصة لتوفير ساعات ذرية. يتميز Spanner بقدرته على مزامنة عمليات الكتابة مع ضمانات زمنية. تتطلب التطبيقات التي لا تستخدم أجهزة مخصصة من الخوادم مقارنة فروق التوقيت، وربما إعادة محاولة عمليات القراءة. [ 8 ]

تطبيقات SQL الموزعة

بائعواجهة برمجة التطبيقات (API)نموذج الترخيص
أمازون أوروراPostgreSQL و MySQLملكية خاصة
قاعدة بيانات الصراصيرشبيه بـ PostgreSQLملكية خاصة
مفتاح ربط جوجللغة SQL خاصةملكية خاصة
مجموعة MySQLMySQLمفتوح المصدر (GPLv2)
NuoDBلغة SQL خاصةملكية خاصة
YugabyteDBPostgreSQL و Cassandra CQL-likeمفتوح المصدر (أباتشي 2.0)
TiDBيشبه MySQLمفتوح المصدر (أباتشي 2.0)
MariaDB XPandMariaDBملكية خاصة
تيراداتالغة SQL خاصةملكية خاصة
YDB [ 9 ]لغة SQL خاصة، تشبه لغة PostgreSQLمفتوح المصدر (أباتشي 2.0)

بالمقارنة مع NewSQL

أشارت بعض قواعد بيانات مثل CockroachDB وYugabyteDB وغيرها إلى نفسها أحيانًا باسم قواعد بيانات NewSQL . تختلف بعض قواعد بيانات NewSQL اختلافًا جذريًا في بنيتها، ولكن ماثيو أسليت، الذي صاغ هذا المصطلح، ذكرها كأمثلة على NewSQL. [ 10 ] في جوهرها، تُبنى قواعد بيانات SQL الموزعة من الصفر، وتتضمن قواعد بيانات NewSQL تقنيات النسخ المتماثل والتجزئة المضافة إلى قواعد البيانات العلائقية الحالية التي تعمل بنظام العميل والخادم، مثل PostgreSQL . [ 11 ] ويُعرّف بعض الخبراء قواعد بيانات DistributedSQL بأنها مجموعة فرعية أكثر تحديدًا من قواعد بيانات NewSQL. [ 12 ]

مراجع

  1. 1 2 3 شوت، جيف؛ ويبكي، تشاد؛ فينجراليك، راديك؛ وآخرون  (2013). F1: قاعدة بيانات SQL موزعة قابلة للتوسع (ملف PDF) . المؤتمر الدولي التاسع والثلاثون لقواعد البيانات الضخمة جدًا، 26-30 أغسطس 2013، ريفا ديل جاردا، ترينتو، إيطاليا . المجلد  6. مؤسسة VLDB. مؤرشف (ملف PDF) من الأصل بتاريخ 10 مارس 2026. تم الاطلاع عليه بتاريخ 10 مايو 2026 .
  2. هيغينبوثام، ستايسي (3 مايو 2010). "كلاستريكس تبني الكأس المقدسة على نطاق الويب: قاعدة بيانات قابلة للتوسع" . gigaom.com .
  3. "MariaDB تستحوذ على Clustrix" . 20 سبتمبر 2018.
  4. باير (dbInsight)، توني. "بالنسبة لـ MariaDB، فقد حان الوقت لتجميع الأجزاء معًا" . ZDNet .
  5. مورغان، تيموثي بريكيت (22 فبراير 2017). "جوجل سبانر يُلهم كوكروش دي بي للتفوق عليه" . المنصة التالية .
  6. مستقبل قواعد البيانات: SQL الموزع و MariaDB® ، تم الاطلاع عليه بتاريخ 21 ديسمبر 2022
  7. "بنية قاعدة بيانات SQL موزعة" . 23 سبتمبر 2020 عبر www.youtube.com.
  8. "العيش بدون ساعات ذرية" . مختبرات الصراصير . 21 أبريل 2020.
  9. "YDB هي قاعدة بيانات SQL موزعة مفتوحة المصدر تجمع بين التوافر العالي وقابلية التوسع مع اتساق قوي ومعاملات ACID" . ydb.tech .
  10. "ما نتحدث عنه عندما نتحدث عن NewSQL - معلومات كثيرة جدًا" . مؤرشف من الأصل بتاريخ 14 يونيو 2020. تم الاطلاع عليه بتاريخ 26 يناير 2021 .
  11. "قواعد بيانات SQL مقابل قواعد بيانات NoSQL: ما الفرق؟" . www.ibm.com . 12 يونيو 2022.
  12. براباجارين، جوكول (30 أكتوبر 2019). "NewSQL - التطور التالي في قواعد البيانات" . Medium .