معاملات ACID
تضمن معاملات ACID أن مجموعة من عمليات قاعدة البيانات تتصرف كوحدة واحدة موثوقة تتسم بالذرية، وتحافظ على الاتساق، ومعزولة عن المعاملات الأخرى، ودائمة بمجرد الالتزام بها.
Definition
المعاملة هي وحدة عمل تتكون من عملية أو أكثر من عمليات قاعدة البيانات التي ينفذها النظام بضمانات ACID: الذرية، والاتساق، والعزل، والمتانة؛ وتنتهي إما بالالتزام (جعل آثارها دائمة) أو بالإلغاء (التراجع عن جميع آثارها).
Scope
يغطي هذا الموضوع تجريد المعاملات وخصائص ACID الأربع بالتفصيل: الذرية (الالتزام أو الإلغاء الكلي أو اللا شيء)، والاتساق (كل معاملة تنقل قاعدة البيانات من حالة صالحة إلى أخرى)، والعزل (المعاملات المتزامنة لا تتداخل بشكل ملحوظ)، والمتانة (الآثار الملتزم بها تستمر عبر الأعطال). ويتناول دلالات الالتزام والإلغاء وكيف ترتبط الخصائص بالتحكم في التزامن والاسترداد. ويستبعد البروتوكولات المحددة التي تنفذ العزل والمتانة، والتي تعد مواضيع مجاورة.
Core questions
- ماذا تضمن كل خاصية من خصائص ACID؟
- كيف يحدد الالتزام والإلغاء سلوك المعاملة الكلي أو اللا شيء؟
- كيف يرتبط العزل بالتسلسلية والتحكم في التزامن؟
- كيف تتحقق المتانة على الرغم من أعطال النظام؟
- ما هي حدود نموذج المعاملات للعمليات طويلة الأمد أو الموزعة؟
Key concepts
- وحدة عمل المعاملة
- الذرية
- الاتساق
- العزل
- المتانة
- الالتزام والإلغاء
- التراجع
- نموذج حالة المعاملة
Key theories
- الذرية والمتانة
- تضمن الذرية تطبيق آثار المعاملة بالكامل أو عدم تطبيقها على الإطلاق، حتى عبر الأعطال، وتضمن المتانة أنه بمجرد التزام المعاملة، تستمر تغييراتها في مواجهة الأعطال؛ ويتم تنفيذ كلاهما من خلال التسجيل والاسترداد.
- الاتساق والعزل
- يتطلب الاتساق من كل معاملة ملتزم بها الحفاظ على قيود سلامة قاعدة البيانات، ويتطلب العزل أن تنتج المعاملات المتزامنة نتائج مكافئة لترتيب تسلسلي معين، مع إخفاء الحالات الوسيطة عن بعضها البعض.
- مفهوم المعاملات وحدودها
- يبسط تجريد المعاملات التفكير في الأعطال والتزامن، لكن غراي أشار إلى قيود على الأنشطة طويلة الأمد وعبر حدود النظام، مما حفز العمل اللاحق على الساجات والمعاملات الموزعة.
Clinical relevance
تعد معاملات ACID السبب وراء إمكانية الوثوق بقواعد البيانات في العمليات الحيوية: تحويل الأموال، أو خصم المخزون، أو الحجز إما يكتمل بالكامل أو لا يكتمل على الإطلاق ويصمد أمام الأعطال، وهذا هو السبب في أن قواعد البيانات المعاملاتية هي العمود الفقري للأنظمة المصرفية والتجارية وأنظمة حفظ السجلات.
History
صاغ جيم غراي مفهوم المعاملات ومزاياها وقيودها في عام 1981؛ وصاغ هاردر وريوتر اختصار ACID في مسحهم عام 1983 للاسترداد الموجه نحو المعاملات. أصبحت هذه الأفكار، التي تطورت حول نظام IBM R، النموذج القياسي لمعالجة البيانات الموثوقة وشكلت كل نظام قاعدة بيانات لاحق.
Key figures
- Jim Gray
- Andreas Reuter
- Theo Härder
Related topics
Seminal works
- gray1981
- haerder1983
- gray1992
Frequently asked questions
- ما الفرق بين الاتساق في ACID والاتساق في نظرية CAP؟
- هما مفهومان مختلفان. يعني اتساق ACID أن المعاملة تحافظ على قيود سلامة قاعدة البيانات، وتنقلها بين حالات صالحة. يشير اتساق CAP إلى اتفاق جميع النسخ المتماثلة في نظام موزع على أحدث قيمة. يمكن للنظام أن يفي بأحدهما دون الآخر، لذا فإن الكلمة نفسها تدل على خصائص مميزة في السياقين.
- هل خصائص ACID مستقلة عن بعضها البعض؟
- إنها ضمانات مميزة من الناحية المفاهيمية ولكن يتم تنفيذها بآليات متداخلة. تأتي الذرية والمتانة من التسجيل والاسترداد؛ ويأتي العزل من التحكم في التزامن؛ ويتم الحفاظ على الاتساق بشكل مشترك من خلال منطق معاملات التطبيق وتطبيق النظام للخصائص الثلاث الأخرى.