پیش‌نویس ثبت وقایع

از ویکی‌پدیا، دانشنامهٔ آزاد

در علوم کامپیوتر، پیش‌نویس ثبت وقایع (WAL) مجموعه ای از تکنیک‌ها برای برآورده کردن ویژگی اتمیک و مانایی (دو ویژگی ACID) در سیستم‌های پایگاه داده‌است. این قوانین بیان می‌کند: قبل از اینکه تغییرات در پایگاه داده نوشته شود، ابتدا باید در فایل وقایع یا همان لاگ ثبت گردد، که اینکار برای ذخیره‌سازی پایدار انجام می‌شود.

در سیستمی که از WAL استفاده می‌کند، همه تغییرات قبل از اعمال در یک log نوشته می‌شوند. که این اطلاعات معمولاً اطلاعات redo و undo هستند که در log ذخیره می‌شوند.

هدف این کار را می‌توان با یک مثال نشان داد. برنامه ای را تصور کنید که وقتی در حال اجرا است، عملکرد خود را به هردلیلی از دست می‌دهد و در میانه انجام برخی از کارها متوقف می‌شود. هنگام راه اندازی مجدد، لازم است که آن برنامه بداند عملیاتی که در حال انجام آن بوده با موفقیت به اتمام رسیده، تا حدی موفقیت‌آمیز بوده (درصدی از آن انجام شده) یا کاملاً شکست خورده‌است. در این صورت است که استفاده از گزارش ورود به سیستم (فایل log)، برنامه می‌تواند این گزارش را بررسی کند و آنچه را که قرار بوده انجام دهد با آنچه در واقع انجام شده مقایسه کند. بر اساس این مقایسه، برنامه می‌تواند تصمیم بگیرد که آنچه را که شروع کرده بود باطل کند، آنچه را که شروع کرده کامل کند یا همه چیز را همان‌طور که هست حفظ کند.

WAL اجازه می‌دهد تا به روزرسانی پایگاه داده با استفاده از الگوریتم درجا انجام شود. مزیت اصلی انجام به روزرسانی‌ها با استفاده از الگوریتم‌های درجا این است که نیاز به اصلاح فهرست‌ها و لیست‌های مسدود را کاهش می‌دهد.

ARIES یک الگوریتم محبوب در مجموعهٔ WAL است.