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

عقد الاكتشاف هو مجموعة القواعد التي تحكم كيفية تسمية الحقائق وإصدارها وإحالتها للتقاعد قبل وصولها إلى أي مخزن. إنه بروتوكول، لا مخطط. المخطط يصف شكل السجل؛ أما العقد فيصف معناه ومتى يتوقف عن معناه.
ثلاث خصائص هي الحاملة للعبء.
مفتاح معياري، هوية المنتج، طابع زمني
يجب أن تحمل كل حقيقة مفتاحًا معياريًا مشتقًا من محتواها، لا من الوكيل الذي كتبها. مفتاح مثل sensor:temperature:celsius:station-7:2024-06-01T12:00Z يمكن لأي وكيل يراقب الحقيقة نفسها اشتقاقه. وكيلان يكتبان الملاحظة نفسها ينتجان المفتاح نفسه، ويستطيع المخزن دمجهما في سجل واحد مع شهادتين بدل سجلين.
يجب أن يرافق المفتاح هوية المنتج وطابع زمني. هوية المنتج ليست اسمًا معروضًا؛ إنها إشارة إلى التشغيل الذي أصدر الحقيقة، كافية لاسترجاع مدخلات التشغيل وإعداده. الطابع الزمني هو وقت الملاحظة، لا وقت الكتابة، لأن وقت الكتابة يعكس الاصطفاف لا الواقع.
القراءات تعلن الإصدار الذي تعتمد عليه
القارئ الذي يستهلك حقيقة يجب أن يصرح بالإصدار الذي يعتمد عليه. هذا يحول القراءات القديمة من خطر صامت إلى خيار صريح. الوكيل الذي يقرأ الإصدار 3 ويتصرف بناءً عليه يمكن تدقيقه لاحقًا: لقد اعتمد على الإصدار 3، والإصدار 5 استبدله. بدون هذا، يبدو القارئ الذي استهلك حقيقة مستبدلة مطابقًا لمن استهلك الحقيقة السارية، ويصبح الخطأ الناتج غير قابل للنسبة.
إعلان الإصدار ليس مجانيًا. إنه يفرض على القراء حمل الحالة ويفرض على الكتاب نشر انتقالات الإصدار. المقايضة حقيقية: الأنظمة التي تتخطى إعلان الإصدار تكسب الإنتاجية وتفقد القدرة على تفسير مخرجاتها. بالنسبة للأسر التي تتخذ قرارات متراكمة، التفسير أغلى قيمة من الإنتاجية.
الإحالة للتقاعد عملية من الدرجة الأولى
يجب أن تتوقف الحقائق المستبدلة عن الاستشهاد بها. يتطلب هذا عملية إحالة للتقاعد صريحة مثل الكتابة. لا تُحذف الحقيقة؛ بل تُوسم كمتقاعدة، مع إشارة إلى الحقيقة التي استبدلتها والسبب. القراء اللاحقون الذين يعلنون اعتمادًا
الإحالة للتقاعد هي حيث تفشل معظم المخازن المشتركة بهدوء. الحذف سهل، لكن الحذف يدمر المصدر. وسم التقاعد دون كسر مسار التدقيق هو العملية التي تحافظ على تماسك معرفة الأسرة عبر الزمن.

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