DBOS

DBOS (المعروف سابقًا باسم نظام التشغيل الموجه لقواعد البيانات، والآن يُعرف فقط باسم DBOS) هو مكتبة برمجية مفتوحة المصدر لتنفيذ سير العمل الدائم مكتوبة بلغات البرمجة Python و TypeScript و Java و Go .

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

تاريخ

2020: مشروع البحث والتطوير الأكاديمي

نشأ نظام DBOS في عام 2020 كمشروع مشترك مفتوح المصدر بين معهد ماساتشوستس للتكنولوجيا وجامعة ستانفورد وجامعة كارنيجي ميلون. استكشف المشروع فكرة خدمات نظام التشغيل المبنية على قاعدة بيانات موزعة - نظام تشغيل موجه نحو قواعد البيانات يهدف إلى تبسيط وتحسين قابلية التوسع والأمان والمرونة للتطبيقات الموزعة واسعة النطاق. [ 2 ]

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

تُوصَف الفلسفة المعمارية بهذا الاقتباس من ملخص النسخة الأولية المطبوعة:

ينبغي تمثيل جميع حالات نظام التشغيل بشكل موحد في جداول قواعد البيانات، وتُجرى العمليات على هذه الحالات عبر استعلامات من مهام لا تحتفظ بحالة. يسهل هذا التصميم توسيع نطاق نظام التشغيل وتطويره دون الحاجة إلى إعادة هيكلة النظام بالكامل، وفحص حالة النظام وتصحيح أخطائها، وترقية المكونات دون توقف، وإدارة القرارات باستخدام التعلم الآلي، وتطبيق ميزات أمان متطورة. [ 2 ]

تم بناء نموذج أولي يتمتع بأداء تنافسي مقارنة بالأنظمة الحالية. [ 3 ]

انظر أيضاً

  • PICK OS ، وهو تطبيق آخر لنظام تشغيل يعتمد على قاعدة بيانات.

2023: شركة DBOS

تأسست شركة DBOS, Inc. في عام 2023 لتسويق التقنيات المطورة من مشروع DBOS البحثي. [ 1 ]

في مارس 2024، أطلقت الشركة مكتبة DBOS Transact مفتوحة المصدر لتنفيذ البرامج بشكل مستدام، مما يسمح للبرنامج باستئناف العمل بعد تعطل النظام، دون فقدان البيانات أو الحاجة إلى إعادة العمل. [ 4 ] كانت أول مكتبة DBOS مُتاحة للغة TypeScript؛ ومنذ ذلك الحين، تم تطوير مكتبات للغات Python وJava وGo. كما تم نقل دلالات تنسيق سير العمل وتصحيح الأخطاء عبر الزمن من مشروع DBOS الأكاديمي.

تنفيذ متين

توفر مكتبة DBOS Transact مفتوحة المصدر مجموعة من اللبنات الأساسية التي تجعل التطبيقات مقاومة للأعطال. تشمل وظائف المكتبة سير العمل الدائم، وخطوات سير العمل، ومعاملات قواعد البيانات، وقوائم الانتظار الدائمة، وتأخير الارتداد، والمراسلة، وجدولة المهام المجدولة (cron). كما تتضمن المكتبة أدوات لإدارة سير العمل، والتحكم في الإصدارات، وتحديث البرامج، وميزات المراقبة مثل التسجيل والتتبع وتصحيح الأخطاء عبر الزمن. [ 5 ]

أمثلة

مثال 1: سير العمل المستدام

تُصبح مسارات عمل التطبيقات دائمةً عبر التعليقات التوضيحية التي تُشير إلى بداية ونهاية مسار العمل (@DBOS.workflow()) والخطوات المُنفذة داخله (@DBOS.step()). أثناء تنفيذ مسار العمل، تحفظ مكتبة DBOS الحالة في قاعدة بيانات PostgreSQL . في حال انقطاع مسار العمل لأي سبب، تستأنف DBOS تنفيذه تلقائيًا من آخر خطوة مُكتملة.

@DBOS.step ( ) def step_one ( ): print ( "تم إكمال الخطوة الأولى!" )@DBOS.step ( ) def step_two ( ): print ( "تم إكمال الخطوة الثانية!" )@DBOS.workflow ( ) def workflow ( ): step_one () step_two ()

المثال الثاني: الطوابير والتزامن

تُمكّن قوائم انتظار المهام من تنفيذ العديد من مهام سير العمل في وقت واحد مع إدارة التزامن. تضمن مكتبة DBOS استدامة قوائم الانتظار بحيث تستمر حتى في حال تعطل النظام. يوضح المثال أدناه إنشاء قائمة انتظار لمهام سير العمل بتزامن عامل يبلغ 5، بحيث يُشغّل كل معالج 5 مهام سير عمل كحد أقصى من هذه القائمة في وقت واحد.

DBOS.register_queue ( " example_queue " , worker_concurrency = 5 )@DBOS.workflow ( ) def process_task ( task ) : ...handle = DBOS.enqueue_workflow ( " example_queue " , process_task , task )

مراجع

  1. 1 2 كلارك، ليندسي. "رائد Postgres يعد بإحداث ثورة في قواعد البيانات مرة أخرى" . www.theregister.com . تاريخ الاسترجاع: 27-12-2023 .
  2. 1 2 كافاريلا، مايكل؛ ديويت، ديفيد؛ غاديبالي، فيجاي؛ كيبنر، جيريمي؛ كوزيراكيس، كريستوس؛ كراسكا، تيم؛ ستونبريكر، مايكل؛ زاهاريا، ماتي (2020-07-21)، DBOS: اقتراح لنظام تشغيل يركز على البيانات ، arXiv : 2007.11112
  3. سكيادوبولوس، أثيناغوراس؛ لي، تشيان؛ كرافت، بيتر؛ كافيس، كوستيس؛ هونغ، دانيال؛ ماثيو، شانا؛ بيستور، ديفيد؛ كافاريلا، مايكل؛ غاديبالي، فيجاي؛ غريف، غوتز؛ كيبنر، جيريمي؛ كوزيراكيس، كريستوس؛ كراسكا، تيم؛ ستونبريكر، مايكل؛ سوريش، لاليث (2021-09-01). "DBOS: نظام تشغيل موجه لأنظمة إدارة قواعد البيانات" . وقائع مؤسسة VLDB . 15 (1): 21-30 . doi : 10.14778/3485450.3485454 . hdl : 1721.1/143731 . ISSN 2150-8097 . S2CID 245827586 .  
  4. ميلر، رون (12 مارس 2024). "شركة ناشئة جديدة من مبتكر Postgres تضع قاعدة البيانات في صميم بنية البرمجيات" . TechCrunch .
  5. لي، تشيان؛ كرافت، بيتر؛ ستونبريكر، مايكل؛ تشو، شينجينغ (18 يناير 2026). "الاتساق والصحة في أنظمة سير العمل الموجهة نحو البيانات" (ملف PDF) . وقائع مؤتمر CIDR 2026 .