استقلال دادهها
![]() |
استقلال داده ها گونه ای از شفافیت دادهها است که برای یک DBMS متمرکز اهمیت دارد. که به مصونیت نرم افزارهای کاربر از تغییرات اعمال شده در تعریف و سازماندهی دادهها میباشد
استقلال فیزیکی داده به منظور مخفی کردن جزئیات ساختار ذخیرهسازی از نرم افزار کاربر است، نرم افزار نباید درگیر این چنین مسائلی شود، از آنجایی که اختلافی در عملیات انجام شده در برابر دادهها نیست.
استقلال دادهها و استقلال عملیات با یکدیگر آینده ی انتزاع دادهها را میسازند استقلال داده شامل دو سطح میباشد .
سطح اول استقلال داده ها
[ویرایش]ساختار منطقی داده به عنوان "شمای تعریف" شناخته میشود. بهطور کلی اگر نرم افزار کاربر عملیاتی بر روی زیرمجموعه ای از صفات یک رابطه انجام دهد، آن نباید پس از اضافه شدن صفت جدید در آن رابطه تحت تأثیر قرار گیرد.استقلال منطقی داده حاکی از آن است که شمای ادراکی میتواند تغییر کند بدون آن که شمای موجود تحت تأثیر قرار گیرد.
سطح دوم استقلال داده ها
[ویرایش]ساختار فیزیکی داده به "توضیحات داده فیزیکی" ارجاع داده شدهاست، استقلال داده فیزیکی به منظور مخفی سازی جزئیات ساختار ذخیرهسازی از نرم افزارهای کاربر است، نرم افزار نباید درگیر این چنین مسائلی شود، از آنجایی که بهطور ادراکی فرقی بین عملیات انجام شده بر روی دادهها وجود ندارد.سه نوع استقلال داده وجود دارد:
- استقلال منطقی داده ها: توانایی تغییر شمای منطقی(ادراکی) بدون تغییر لایه بیرونی(دید کاربر)، استقلال منطقی دادهها گفته میشود، برای مثال اضافه کردن یا حذف کردن یک موجودیت، صفت یا رابطه به شمای مفهومی موجب بازنویسی نرم افزار کاربر نمیشود.
- استقلال فیزیکی داده ها: توانایی تغییر شمای فیزیکی بدون تغییر دادن شمای منطقی را استقلال فیزیکی دادهها گویند.، برای مثال تغییری در شمای داخلی مانند استفاده کردن از سازمان فایلی دیگر یا ساختارهای ذخیرهسازی دیگر، دستگاههای ذخیرهسازی دیگر، یا استراتژی ایندکس گذاری تنها باید به گونه ای انجام شود که لایه خارجی تغییری نکند
- استقلال دادهها در لایه خارجی: هرگز تأثیری نخواهد دید زیرا لایه ای در بالای لایهٔ خارجی وجود ندارد.
استقلال داده ها
[ویرایش]استقلال دادهها میتواند به این صورت تعریف شود:هر لایه بالایی از معماری داده مصون از تغییرات معماری لایه پایینی خود است.
شمای منطقی عاری از هر گونه تغییر است حتی اگر فضای ذخیرهسازی یا نوع داده برای دلایل بهینه سازی یا سازمانی تغییر کرده.در این نوع، لایه خارجی تغییر نمیکند اما لایه داخلی ممکن است مجبور باشد، زیرا که چند شمای فیزیکی در اینجا سازماندهی شده.استقلال فیزیکی داده در اکثر پایگاههای داده و محیطهای فایلی حاضر است، زمانی که ذخیرهسازی باید کد شود، محل دقیق داده روی دیسک یافت شود، ادغام رکورد ها، و... ، پس اینها از کاربر مخفی اند.
یکی از بزرگترین مزیت پایگاههای داده استقلال دادهها میباشد ، به این منظور که ما میتوانیم لایه ادراکی را در یک لایه تغییر دهیم بدون آنکه داده در لایه دیگر تغییر کند.این همچنین به این معناست که ما میتوانیم ساختار دادهها را تغییر دهیم بدون آنکه کاربران و نرم افزارها نیاز به تغییر باشند، این خصوصیت در مدل مبتنی بر فایل مطرح نبود.