عن المشروع
MiniOB هو مشروع تعليمي تمهيدي لقواعد البيانات طوره فريق OceanBase استنادًا إلى نموذج مقرر قواعد البيانات في جامعة هواتشونغ للعلوم والتكنولوجيا، وبالتعاون مع عدة جامعات. يستهدف الطلاب المبتدئين والعاملين في مجال قواعد البيانات والمهتمين به. يعلن المشروع أنه مخصص لأغراض التعلم فقط، ولا يضمن أمان الكود أو استقراره وموثوقيته، ولا يُنصح باستخدامه مباشرة في بيئات الإنتاج.
الكود العام بسيط وسهل الاستخدام، وقد صُممت سلسلة من التمارين المتدرجة من السهل إلى الصعب لمساعدة المتعلمين على فهم قواعد البيانات من الصفر والتعمق في نواتها. ولتسهيل التعليم، بسط MiniOB العديد من الوحدات، مثل عدم مراعاة العمليات المتزامنة والخصائص الأمنية وإدارة المعاملات المعقدة.
يتضمن هيكل النظام عدة وحدات: وحدة الشبكة مسؤولة عن التفاعل مع العميل وإرسال الطلبات والردود واستقبالها؛ تحليل SQL يحول جمل SQL التي يدخلها المستخدم إلى شجرة نحوية؛ وحدة التحليل الدلالي تحول الشجرة النحوية إلى بنية بيانات داخلية لقاعدة البيانات؛ تحسين الاستعلام يعدل أو يعيد كتابة الشجرة النحوية وفقًا للقواعد والبيانات الإحصائية (تنفيذ جزئي)؛ تنفيذ الخطة ينفذ وفقًا لوصف الشجرة النحوية وينتج النتائج؛ محرك التخزين مسؤول عن تخزين البيانات واسترجاعها؛ إدارة المعاملات تطبق حاليًا نمط MVCC فقط؛ إدارة السجلات تسجل سجلات عمليات قاعدة البيانات؛ إدارة السجلات مسؤولة عن تخزين السجلات في ملفات بيانات الجداول؛ B+ Tree كهيكل تخزين فهرس الجدول؛ بالإضافة إلى إدارة الجلسات وإدارة البيانات الوصفية وعميل يُستخدم كأداة اختبار.
يوفر المشروع وثائق تصميم مرافقة وتعليقات على الكود، وينشر عبر GitHub Pages محتوى يشمل مقدمة الإطار وترجمة الكود المصدري وطريقة التشغيل وبيئة تطوير GitPod ووثائق كود doxygen. كما يوفر مجتمع OceanBase سلسلة دروس، مثل الدورة المرئية "دورة عملية في نواة قواعد البيانات من 0 إلى 1" والمحاضرات الأساسية المرافقة، وكتاب "تنفيذ نظام إدارة قواعد البيانات" من جامعة هواتشونغ للعلوم والتكنولوجيا.
MiniOB هو منصة تدريب للمسابقة الأولية في مسابقة القدرات الحاسوبية لطلاب الجامعات الوطنية، وتهدف المسابقة إلى "المنافسة والتبادل والنمو" وتبني منصة تبادل تقني قائمة على المسابقة. يمكن للمشاركين تقديم الكود للاختبار في معسكر تدريب MiniOB، وتوفر الجهة الرسمية تعليمات استخدام المعسكر والأسئلة الشائعة حول المسابقة. ولتقليل تكلفة إعداد البيئة، يوفر المشروع أيضًا بيئة برمجة تعليمية مفتوحة المصدر عبر الإنترنت، كما تتوفر وثائق مفصلة لإعداد بيئة التطوير المحلية.
يستخدم المشروع رخصة Mulan PSL v2، ويمكن نسخ الكود المصدري واستخدامه بحرية، مع الالتزام بهذه الرخصة عند التعديل أو التوزيع. يرحب المجتمع بالمساهمات من المطورين، بما في ذلك تعديل الوثائق وإصلاح المشكلات وإضافة ميزات جديدة، وقد فتح مهام تطوير ميزات جديدة موسومة بـ help wanted.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.