املاک جداسازی در پایگاه داده

جداسازی کنترل چگونگی و زمانی که تغییرات در پایگاه داده ایجاد می شود

جداسازی بخشی جدایی ناپذیر از خواص پیاده سازی پایگاه داده است. این سومین ویژگی ACID (Atomicity، Consistency، Isolation، Durability) است و این ویژگی ها اطمینان حاصل می کند که داده ها سازگار و دقیق هستند.

جداسازی اموال سطح پایگاه داده است که کنترل چگونگی و زمان تغییرات را ایجاد می کند و اگر آنها برای یکدیگر قابل مشاهده باشند. یکی از اهداف انزوای این است که اجازه دهد چندین معاملات در یک زمان بدون تأثیر بر اجرای اعداد یکدیگر انجام شود.

جداسازی چگونه کار می کند

به عنوان مثال، اگر جو یک معامله را در برابر یک پایگاه داده در همان زمان انجام می دهد که مری معامله دیگری را انجام می دهد، هر دو معاملات باید به صورت جداگانه در پایگاه داده کار کنند. پایگاه داده باید قبل از اجرای مریم یا برعکس، کل معامله ی جو را انجام دهد. این مانع از انجام معامله جو از خواندن اطلاعات متوسط ​​تولید شده به عنوان یک اثر جانبی بخشی از معامله Mary است که در نهایت به پایگاه داده متعهد نیست. توجه داشته باشید که ملک انزوا اطمینان حاصل نمی کند که کدام معامله برای اولین بار اجرا شود، صرفا این که آنها با یکدیگر تعارض نداشته باشند.

سطوح جداسازی

چهار سطح انزوا وجود دارد:

  1. Serializable بالاترین سطح است، به این معنی که تراکنش ها قبل از انجام معامله دیگری انجام می شود.
  2. خواندن تکراری اجازه می دهد تا معاملات پس از شروع معامله به دست آمده، حتی اگر آن را نداشته اید.
  3. خواندن متعهد اجازه می دهد تا داده ها بعد از اینکه اطلاعات به پایگاه داده متعهد شده اند، دسترسی پیدا می کنند، اما نه قبل از آن.
  4. Read uncommitted پایین ترین سطح انزوا است و اجازه می دهد تا داده ها قبل از تغییر ایجاد شده دسترسی پیدا کنند.