مدیریت معاملات در DBMS: خصوصیات اسیدی چیست؟

ساخت وبلاگ

معامله پایگاه داده یک واحد منطقی پردازش در DBMS است که مستلزم یک یا چند عملیات دسترسی به پایگاه داده است. به طور خلاصه ، معاملات پایگاه داده نمایانگر رویدادهای دنیای واقعی هر شرکت است.

کلیه انواع عملکرد دسترسی به پایگاه داده که بین بیانیه های معاملات اولیه و پایان برگزار می شود ، به عنوان یک معامله منطقی واحد در DBMS در نظر گرفته می شوند. در طول معامله ، پایگاه داده متناقض است. فقط پس از انجام پایگاه داده ، دولت از یک حالت سازگار به حالت دیگر تغییر می یابد.

Database Transaction

در این آموزش یاد خواهید گرفت:

حقایق در مورد معاملات پایگاه داده

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

چرا در معاملات به همزمانی نیاز دارید؟

یک پایگاه داده یک منبع مشترک است. توسط بسیاری از کاربران و فرآیندهای همزمان استفاده می شود. به عنوان مثال ، سیستم بانکی ، سیستم های راه آهن و رزرو هوایی ، نظارت بر بازار سهام ، موجودی سوپر مارکت و پرداخت و غیره.

مدیریت دسترسی همزمان ممکن است مواردی مانند:

  • خرابی سخت افزار و خرابی سیستم
  • اجرای همزمان همان معامله ، بن بست یا عملکرد آهسته

ایالات معاملات

ایالات مختلف مفهوم معامله در DBMS در زیر ذکر شده است:

 

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

State Transition Diagram

بیایید یک نمودار انتقال حالت را مطالعه کنیم که نشان می دهد چگونه یک معامله بین این ایالات مختلف حرکت می کند.

  1. هنگامی که یک معامله اجرا می کند ، فعال می شود. این می تواند عملکرد خواندن یا نوشتن را صادر کند.
  2. پس از اتمام عملیات خواندن و نوشتن ، معاملات تا حدی متعهد می شوند.
  3. در مرحله بعد ، برخی از پروتکل های بازیابی باید اطمینان حاصل کنند که خرابی سیستم منجر به عدم توانایی در ثبت تغییرات در معامله به طور دائم نمی شود. اگر این بررسی موفقیت آمیز باشد ، معامله مرتکب و وارد کشور متعهد می شود.
  4. اگر چک یک شکست باشد ، معامله به حالت شکست خورده می رود.
  5. اگر معامله در حالی که در حالت فعال قرار دارد سقط شود ، به حالت شکست خورده می رود. معامله باید برای خنثی کردن تأثیر عملیات نوشتن آن در پایگاه داده برگردانده شود.
  6. دولت خاتمه یافته به معامله ترک سیستم اشاره دارد.

خصوصیات اسیدی چیست؟

از خصوصیات اسید برای حفظ یکپارچگی پایگاه داده در هنگام پردازش معامله استفاده می شود. اسید در DBMS مخفف تومی ، مقاومت در برابر C ، من است و قابلیت استفاده از آن است.

  • اتمی: معامله یک واحد عملیاتی است. شما یا آن را کاملاً اجرا می کنید یا اصلاً آن را اجرا نمی کنید. اعدام جزئی وجود ندارد.
  • قوام: پس از انجام معامله ، باید از یک حالت سازگار به حالت دیگر منتقل شود.
  • جداسازی: معامله باید در جداسازی از سایر معاملات (بدون قفل) انجام شود. در طی اجرای معامله همزمان ، نتایج معاملات واسطه ای از معاملات همزمان اجرا نشده نباید در دسترس یکدیگر باشد.(سطح 0،1،2،3)
  • دوام: · پس از اتمام موفقیت آمیز معامله ، تغییرات در پایگاه داده باید ادامه یابد. حتی در مورد خرابی سیستم.

خاصیت اسید در DBMS با مثال:

در زیر نمونه ای از خاصیت اسید در DBMS آورده شده است:

معامله 1 در حال انتقال 50 دلار از حساب X به حساب Y است.

تراکنش 2 به هر حساب با پرداخت 10 ٪ سود اعتبار می دهد.

اگر هر دو معامله با هم ارسال شوند ، هیچ تضمینی وجود ندارد که معاملات 1 قبل از معامله 2 یا برعکس اجرا شود. صرف نظر از دستور ، نتیجه باید به گونه ای باشد که گویی معاملات به صورت سریال یکی پس از دیگری انجام می شود.

انواع معاملات

بر اساس مناطق کاربردی

  • بدون توزیع در مقابل توزیع شده
  • جبران معاملات
  • زمان بندی معاملات
  • آنلاین در مقابل دسته

بر اساس اقدامات

  • دو قدم
  • محصور
  • مدل عمل

بر اساس ساختار

  • معاملات مسطح یا ساده: شامل دنباله ای از عملیات ابتدایی است که بین عملیات شروع و پایان انجام می شود.
  • معاملات تو در تو: معامله ای که شامل معاملات دیگر است.
  • جریان کار

برنامه چیست؟

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

مثال

اگر معاملات 2 قبل از معامله 1 اجرا شود ، اطلاعات منسوخ در مورد مقدار محصول خوانده می شود. از این رو ، برنامه ها لازم است.

اجرای موازی در یک بانک اطلاعاتی اجتناب ناپذیر است. اما ، اجرای موازی مجاز است وقتی رابطه هم ارزی بین معاملات همزمان انجام شود. این هم ارزی از 3 نوع است.

معادل سازی نتیجه:

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

مشاهده هم ارزی

مشاهده هم ارزی زمانی اتفاق می افتد که معامله در هر دو برنامه یک عمل مشابه را انجام می دهد. به عنوان مثال ، یک معامله جزئیات محصول را در جدول محصول وارد می کند ، در حالی که معامله دیگر جزئیات محصول را در جدول بایگانی وارد می کند. معامله یکسان است ، اما جداول متفاوت هستند.

هم ارزی

در این حالت ، دو معاملات همان مجموعه داده ها را به روز/مشاهده می کنند. در بین معامله درگیری وجود دارد زیرا ترتیب اجرای بر بازده تأثیر خواهد گذاشت.

Serializability چیست؟

Serializability فرآیند جستجوی یک برنامه همزمان است که خروجی آن برابر با یک برنامه سریال است که در آن معامله یکی پس از دیگری اجرا می شود. بسته به نوع برنامه ها ، دو نوع سریال سازی وجود دارد:

فارکس حرفه ای...
ما را در سایت فارکس حرفه ای دنبال می کنید

برچسب : نویسنده : مرتضی احباب بازدید : <-PostHit-> تاريخ : پنجشنبه 25 اسفند 1401 ساعت: 14:37