تطورت أباتشي كاساندرا من قاعدة بيانات NoSQL ذات الاتساق النهائي إلى نظام متوافق تمامًا مع ACID في إصدارها القادم 6.0. تشمل هذه الرحلة الدفعات الذرية التي تم تقديمها في عام 2013، وعمليات المقارنة والاستبدال (compare-and-swap) في Paxos لقسم واحد لاحقًا في ذلك العام، والآن المعاملات القابلة للتسلسل الصارم عبر الأقسام باستخدام Accord في الإصدار غير المُصدر كاساندرا 6.
يستكشف هذا المقال كل خيار من خيارات المعاملات باستخدام عنقود من ثلاث عقد مع حمل عمل محاسبي. يتضمن الإعداد تثبيت Java 21، وبناء كاساندرا من فرع cassandra-6.0، وتكوين ثلاث عقد بعناوين IP ومنافذ JMX فريدة.
يستخدم الاختبار المحاسبي حسابين برصيد ابتدائي قدره 1,000 لكل منهما، مع كاتب متزامنين يقومون بإجراء تحويلات بين الحسابات. يختبر حمل العمل أربع طرق للمعاملات: لا شيء (افتراضي)، وتحديثات BATCH، والمعاملات الخفيفة (LWT)، وتحديثات Accord (ACID). يتم اختبار متغيرات القراءة-التعديل-الكتابة والكتابة العمياء، إلى جانب سيناريوهات التحويل عبر الأقسام وداخل نفس القسم.
يقوم خيط ثالث بالقراءة المستمرة والتحقق من أن مجموع الأرصدة يظل 2,000 طوال العمليات المتزامنة. كما يتحقق الاختبار أيضًا من أن الأرصدة النهائية للحسابات تطابق القيم الحتمية المتوقعة لأحمال عمل القراءة-التعديل-الكتابة.
الكيانات الرئيسية: الشركات: Apache، Cassandra | الأشخاص: Phil Eaton
المصدر: Hacker News · لخّصه HeadlinesBriefing