نسخ قاعدة بيانات موزعة باستخدام SWIM وBadgerDB

2025-05-14
نسخ قاعدة بيانات موزعة باستخدام SWIM وBadgerDB

تشرح هذه المقالة مخططًا لنسخ قاعدة بيانات موزعة يستخدم بروتوكول SWIM وميزة النسخ الاحتياطي التزايدي في BadgerDB. باستخدام حزمة memberlist من Hashicorp وآلية TCP Push/Pull الخاصة بها، تحسب العقد دوريًا حالتها المحلية وتُرسلها إلى عقد أخرى. تقوم العقد البعيدة بدمج الحالة البعيدة مع حالتها المحلية، مما يؤدي إلى بدء عملية النسخ. تُعرّف حالة العقدة على أنها مجموعة آخر إصدارات معروفة للعقد الأخرى. عند استقبال الحالة، ترسل العقدة طلبات HTTP إلى العقدة البعيدة، وتُزامن بشكل متزامن النسخ الاحتياطي التزايدي لقواعد بيانات auth وconfig وlog، وبالتالي تحقيق النسخ الفعلي.

التطوير بروتوكول SWIM