دوشنبه, ۱۷ اردیبهشت, ۱۴۰۳ / 6 May, 2024
اسید کامپیوتر
در علوم کامپیوتر، اسید (Atomicity, Consistency, Isolation, Durability) یک سری مشخصات است که قابل اطمینان بودن پایگاه را ضمانت می کند. در تعاریف پاگاه داده، یک عملکرد منطقی روی داده را انتقال (Transaction) گویند.
مثالی از انتقال (Transaction) انتقال وجهی است از یک حساب به حساب دیگر، علیرغم اینکه ممکن است از تعداد زیادی عملکرد واحد تشکیل شده باشد ( مثل نقد کردن یک حساب یا ایجاد یک حساب جدید )
● اتمی بودن
اتمی بودن دلالت به قابلیتی از DBMS دارد که ضمانت می کند آیا تمام وظایف انتقال انجام شده است یا هیچ یک انجام نشده است. انتقال وجه ها ممکن است کاملاً انجام شود یا ممکن است به دلایل متعددی نا موفق باشد، ولی اتمی بودن ضمانت میکند که یک حساب نمی تواند نقد شود قبل از اینکه یک حساب دیگر ساخته شود.
● استحکام
استحکام دلالت بر این دارد که پایگاه داده در حالت قانونی قرار دارد وقتی که انتقال آغاز می شود یا پایان می یابد. پس انتقال نمی تواند قوانین پایگاه را بشکند. مثلاً وقتی قانونی بگوید که همه حساب ها باید دارای مقدلر مثبت باشند، هر انتقالی که از این قانون سرپیچی کند، متوقف می شود.
این قوانین در شکلهای مختلف عرضه می شوند، مثل حذف سطر، قوانین بین جدول ها و قوانین نامگذاری.
● ایزولاسیون
ایزولاسیون دلالت بر قابلیت برنامه برای ایجاد عملکردها یی مجزا از باقی عملکردها در انتقال دارد. یعنی هیچ عملکردی از بیرون انتقال نمیتواند داده را در سطح میانی ببیند; یک مدیر بانک می تواند وجه حساب را در یک حساب ببیند و بررسی کند و یا در حساب دیگر ببیند، وگر نه نمی تواند هر دو را حتی اگر آرایه ها و صف های خود را دستکاری کند و از خط قرمز خود رد شود نمی تواند در میانۀ پردازش زیر نظر داشته باشد. در واقع، ایزولاسیون یعنی تاریخ انتقال.
● دوام
دوام دلالت دارد بر تضمین این دارد که وقتی کاربر نسبت به موفقیت انتقال مطلع می شود، عملیات تمام نشود و تا چند سطح بالا تر با کاربر در تماس باشد و تا پایان عملیات جلو هر اتفاقی را بگیرد. یعنی جلو اشتباهات سیستم را بگیرد و جلو عملکرد انتقال را نگیرد. انتقال به سیستم اولویت دارد. بسیاری از پایگاه ها مساله دوام را با نوشتن گزارشی از انتقال ها و اجرای آنها قبل از ایجاد مشکل برای سیستم محیا می کنند. یک انتقال تنها وقتی میتواند واگذار شود که بدون مشکل گزارش شود.
● احیا
محیا کردن صحیح مشخصات اسید آسان نیست. پردازش یک انتقال نیاز به ایجاد تعدادی تغییرات شامل بروز رسانی برای سرعت بیشتر جست و جو دارد. این سری عملکردها موجب اختلال به دلایلی چند می شود. مثل نبودن فضا روی دیسک، یا در بافر یا میانگیر CPU.
اسید می خواهد که پایگاه یکباره تمام این عملکرد ها را انجام دهد. در حقیقت این امر کمی دشوار است. دو خانواده آشنا از تکنیکها وجود دارد: گزارش و صفحه بندی. در هر دو این موارد قفل ها باید در تمام اطلاعات بروزرسانی شده به کار گرفته شوند و بسته به احیا شاید به تمام داده ها. در خانواده گزارش، اتمی بودن تضمین می شود چرا که اطلاعات مربوط به هر تغییر قبل از افزوده شدن و نوشته شدن روی محیط پایگاه داده در یک گزارش می آید و اگر مشکلی داشته باشد حل می شود. این به پایگاه اجازه می دهد تا قوانینی را که وضع کرده در زمان ایجاد اختلال اجرا کند. در بحث سایه و صفحه بندی، تغییرات در یک کپی از پایگاه ایجاد می شوند. و هنگامی که انتقال به مرحله واگذاری می رسد، آن کپی با اصل جایگزین می شود. کپی تنها دلالت بر قسمتهای تغییر نیافته از نسخه قدیمی پایگاه داده دارد، بجای آنکه دلالت بر یک پایگاه داده کامل داشته باشد.
تا حالا تقریباً تمام پایگاه ها این ۴ مشخصه و قابلیت های اسید را اجرا می کردند. این یعنی یک قفل باید برای پایگاه قبل از انجام هر عملیاتی وجود داشته باشد، حتی برای بازیابی و خواندن مطالب پایگاه. نگهداری مقدار زیاد قفل ها هرچند که نتیجه گیری را دشوار می سازد، هر چقدر سری تر باشد همان قدر برای امنیت پایگاه بهتر است. مثلاً وقتی کاربر A می خواهد سطری از داده ها را که کاربر B می خواهد تغییر دهد را بخواند، کاربر B باید منتظر بماند تا عملیات انتقال مربوط به کاربر A مبنی بر خواندن آن سطر تمام شود.
جایگزینی برای قفل سازی می تواند چند نسخه ای کردن عملیات کنترل باشد، طوری که پایگاه کپی های منحصر به فردی را از هر داده تغییر یافته نگهداری کند. این به کاربران این امکان را می دهد تا بدون مواجهه با مسدود شدن مسیر کارشان را انجام دهند. مثلاً در مورد A و B در زمانی که یک کاربر در حال ایجاد تغییرات در داده ای خاص می باشد، و همزمان کاربری دیگر قصد خواندن آن را دارد، تا قبل از کپی گرفتن از تغییرات موجود، داده را با شکل قبلی نشان می دهد. این خود نوعی از ایزولاسیون است به نام Snapshot Isolation.
در محیط شبکه این بسیار دشوار است که مشخصات اسید را تضمین کنیم. ارتباطات ممکن است از میان بروند و یا ۲ کاربر در آن واحد بخواهند از یک قسمت استفاده کنند.
واگذاری دوفازه به صورت عمده در انتقال های توزیعی استفاده می شوند برای تضمین اینکه هر جزء از انتقال امر اینکه انتقال باید واگذاری بشود یا نشود را تایید کند.
مراقبت به هنگامی که دو انتقال بصورت موازی صورت می گیرد بسیار واجب است. قفل دو فازه برای ایجاد و تضمین ایزولاسیون کامل بکار گرفته می شود.
نمایندگی زیمنس ایران فروش PLC S71200/300/400/1500 | درایو …
دریافت خدمات پرستاری در منزل
pameranian.com
پیچ و مهره پارس سهند
تعمیر جک پارکینگ
خرید بلیط هواپیما
ایران رهبر انقلاب حج آمریکا مجلس شورای اسلامی دولت شورای نگهبان انتخابات دولت سیزدهم حجاب رسانه جنگ
هواشناسی تهران شهرداری تهران فضای مجازی قتل آموزش و پرورش سلامت سیلاب شهرداری سازمان هواشناسی باران آتش سوزی
قیمت دلار ایران خودرو قیمت طلا خودرو بانک مرکزی قیمت خودرو دلار بازار خودرو حقوق بازنشستگان مسکن تورم قیمت
تئاتر محمدعلی علومی برنارد هیل تلویزیون سریال سینما دفاع مقدس نمایشگاه کتاب سینمای ایران صدا و سیما مسعود اسکویی موسیقی
مغز دانش بنیان فضا
اسرائیل رژیم صهیونیستی غزه حماس فلسطین جنگ غزه روسیه اوکراین طوفان الاقصی طالبان نوار غزه نتانیاهو
پرسپولیس فوتبال استقلال لیگ برتر نساجی عبدالله ویسی رئال مادرید لیگ برتر ایران سپاهان جواد نکونام بازی بارسلونا
هوش مصنوعی باتری اپل مایکروسافت آیفون گوگل سامسونگ پهپاد عکاسی ناسا
رژیم غذایی مواد غذایی چای زیبایی بیمه کاهش وزن توت فرنگی سیگار