أصدرت Yandex شفرة المصدر لـ DBMS الخاص بها «YDB»

مؤخرا اندلعت الأخبار ذلك أصدرت Yandex الكود المصدري لنظام DBMS الخاص بها ، «YDB»، والتي تنفذ الدعم لهجة SQL ومعاملات ACID.

نظم إدارة قواعد البيانات تم بناؤه من الألف إلى الياء وتم تطويره في البداية مع مراعاة ضمان التسامح مع الخطأوتجاوز الفشل التلقائي وقابلية التوسع. وتجدر الإشارة إلى أن Yandex أطلقت مجموعات YDB العاملة ، بما في ذلك أكثر من 10 آلاف عقدة ، والتي تخزن مئات بيتابايت من البيانات وتخدم ملايين المعاملات الموزعة في الثانية.

المستجدات الرئيسية من YDB

من الميزات التي تبرز من YDB هو استخدام نموذج البيانات العلائقية مع جداول YQL (YDB Query Language) للاستعلام عن مخطط البيانات وتعريفه ، وهو لهجة SQL تتكيف مع قواعد البيانات الموزعة الكبيرة. عند إنشاء مخطط تخزين ، يتم دعم تجميع الجداول على شكل شجرة ، والذي يشبه أدلة نظام الملفات. يتم توفير API للعمل مع البيانات بتنسيق JSON.

ال القدرة على إنشاء تكوينات متسامحة مع الخطأ التي تستمر في العمل عند فشل الأقراص والعقد والرفوف وحتى مراكز البيانات الفردية. يدعم YDB النشر المتزامن والنسخ المتماثل عبر ثلاث مناطق توافر مع الحفاظ على حالة الكتلة في حالة فشل إحدى المناطق.

دعم الوصول إلى البيانات باستخدام استعلامات المسح ، المصممة لأداء استعلامات تحليلية مخصصة على قاعدة البيانات ، يتم تنفيذها في وضع القراءة فقط وإرجاع تدفق grpc.

بالإضافة إلى ذلك ، فهي تبرز أيضًا تخزين البيانات مباشرة على أجهزة الحظر باستخدام مكون PDisk الأصلي وطبقة VDisk. بالإضافة إلى VDisk ، يتم تشغيل DSProxy ، الذي يحلل توافر وأداء الأقراص لاستبعادها في حالة اكتشاف مشاكل.

من ميزات أخرى التي تبرز:

  • بنية مرنة تسمح لك ببناء خدمات متنوعة على رأس YDB ، وصولاً إلى أجهزة الحظر الافتراضية وقوائم الانتظار المستمرة. الملاءمة لأنواع مختلفة من أعباء العمل: OLTP و OLAP (استعلامات تحليلية).
  • دعم تكوينات المستخدمين المتعددين (متعدد المستأجرين) وبدون خادم.
  • القدرة على مصادقة العملاء. يمكن للمستخدمين إنشاء مجموعات وقواعد بيانات افتراضية خاصة بهم على بنية تحتية مشتركة ، مع مراعاة استهلاك الموارد من حيث عدد الطلبات وحجم البيانات ، أو عن طريق استئجار / حجز بعض موارد الحوسبة ومساحة التخزين.
  • إمكانية تعديل العمر الإنتاجي للسجلات للحذف التلقائي للبيانات القديمة.
  • يتم التفاعل مع DBMS وتقديم الطلبات باستخدام واجهة سطر الأوامر أو واجهة الويب المتكاملة أو YDB SDK ، والتي توفر مكتبات لـ C ++ و C # (.NET) و Go و Java و Node.js و PHP و Python.
  • التعافي تلقائيًا من حالات الفشل بأقل تأخير ممكن للتطبيقات والحفاظ تلقائيًا على التكرار المحدد عند تخزين البيانات.
  • الإنشاء التلقائي للفهارس على المفتاح الأساسي والقدرة على تحديد الفهارس الثانوية لتحسين كفاءة الوصول التعسفي إلى العمود.
  • قابلية التوسع الأفقي. مع نمو حجم البيانات المخزنة وحجمها ، يمكن توسيع الكتلة ببساطة عن طريق توصيل عقد جديدة. طبقات الحوسبة والتخزين منفصلة ، مما يسمح لك بقياس الحوسبة والتخزين بشكل منفصل. يراقب نظام DBMS نفسه التوزيع المتساوي للبيانات والحمل ، مع مراعاة موارد الأجهزة المتاحة. من الممكن تنفيذ التكوينات الموزعة جغرافيًا التي تغطي عدة مراكز بيانات في أجزاء مختلفة من العالم.
  • دعم نموذج تناسق قوي ومعاملات ACID عند معالجة الاستعلامات التي تمتد عبر عقد وجداول متعددة. لتحسين الأداء ، يمكنك تعطيل التحقق من التناسق بشكل انتقائي.
  • النسخ المتماثل التلقائي للبيانات ، التقسيم التلقائي (التقسيم ، التجزئة) عند زيادة الحجم أو الحمل ، والتحميل التلقائي وموازنة البيانات بين العقد.

وأخيرا، وتجدر الإشارة إلى أن YDB يستخدم في مشاريع Yandex ، الكود مكتوب بلغة C / C ++ ويتم توزيعه بموجب ترخيص Apache 2.0 ، ويمكنك الاطلاع على الكود المصدري ، بالإضافة إلى مزيد من التفاصيل حوله في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

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