سبد (0)

انواع page در پایگاه داده

آموزش پیشرفته SQL Server (جلسه اول) (Performance & tuning) - بررسی انواع page

بررسی انواع page، قسمتی از آموزش پیشرفته SQL Server است، پیشنهاد می شود قبل از مطالعه ی بررسی انواع page، قسمت های قبلی را مطالعه فرمایید.


انواع page

انواع Page در یک DataFile پایگاه داده در زیر آمده است:

  • Data Page: اولین page (شماره صفر) در داخل یک DataFile می باشد. حساسیت این page  بسیار بالاست به طوریکه اگر حتی یک بیت از آن به طور ناخواسته تغییر کند پایگاه داده از بین خواهد رفت. این نوع page برای ذخیره انواع داده به جز LOB ها استفاده می شود و تعداد زیادی از pageهای یک DataFile را تشکیل می دهد.
  • PFS Page: دومین page در داخل یک DataFile (شماره یک) می باشد و برای نگهداری مقدار فضای خالی صفحات DataFile مورد استفاده قرار می گیرد. این نوع page برای مدیریت حداکثر 8080 page بکار برده می شود. مثال 2 این مورد را بهتر بیان می کند.
  • GAM Page)Global Allocation Map): سومین page در DataFile (شماره دو) بوده وبرای ردیابی Extent های مورد استفاده (Uniform Exent) ها بکار می رود. این نوع page حداکثر می تواند 64000 Extent را مدیریت کند. روش کار آن بدین صورت است که هر Extent در آن دارای یک مدخل بوده و در صورتی که از آن استفاده شده باشد مقدار آن برابر با یک می شود.
  • SGAM Page: چهارمین page در DataFile (شماره سه) بوده وبرای ردیابی Extent های مورد استفاده (Mixed Exent) ها بکار می رود. همه موارد ذکر شده در بالا برای این نوع page نیز صادق است. 
  • BCM Page: این نوع page برای ردیابی Extent هیی تغییر یافته بعد از آخرین Full Backup بکار می رود و بعد از گرفتن هر Full Backup مقدار آن reset می شود.
  • DCM Page: این نوع page برای ردیابی Extent هیی تغییر یافته بعد از آخرین Bulk Operation بکار می رود و بعد از گرفتن هر Log Backup مقدار آن reset می شود.
  • Index Page: به منظور ذخیره داده های مربوط به index ها بکار می روند. این page ها برای ذخیره سازی سطح ریشه و سطوح میانی B-Tree مربوط به index استفاده می شوند.

بررسی انواع page در پایگاه داده

  • Text/Image Page: این نوع page برای ذخیره و نگهداری LOB ها و Variable Length هایی که اندازه داده آنها از 8KB بیشتر است استفاده می شود. روشی که برای ذخیره این نوع فیلدها بکار می رود اینگونه است که در انتهای DataFile یک Text/Image Page ایجاد می شود و مقدار فیلد مربوطه در آن ذخیره می شود و در Data Page حاوی آن فیلد آدرس این صفحه به جای مقدار فیلد درج می گردد.
  • IAM Page: برای ذخیره و نگهداری اطلاعات مربوط به Extent هایی که توسط جدول و یا index بکار برده شده اند بکار برده می شود. بنابراین SQL SERVER با کمک این نوع page تشخیص می دهد که چه page هایی در داخل یک DataFile مربوط به جدول و یا index ما می باشند. این نوع page در DataFile به ازای موارد زیر ایجاد می شود:

بررسی انواع page در پایگاه داده

  1. به ازاء pageهای مربوط به داده های عادی 
  2. به ازاء داشتن LOB در داخل جدول
  3. به ازاء Variable Length هایی که طول آنها از 8KB بیشتر شده و Row Overflow Data برای آن ستون در جدول رخ می دهد. 

تذکر: هر سه نوع IAM Page ذکر شده بالا را با انجام مثال یک می توانید ببینید.


 مثال عملی از بررسی انواع page

مثال 1: بررسی انواع IAM Page های ذکر شده به صورت عملی:

مرحله 1: برای مشاهده انواع ذکر شده IAM Page ابتدا جدولی با مشخصات زیر که دارای فیلدهای LOB می باشد، در یک پایگاه داده تستی ایجاد نمایید:

بررسی انواع page

CREATE TABLE IAM_Table
(
ID INT,
Data1 VARCHAR(3000),
Data2 VARCHAR(3000),
Data3 VARCHAR(3000),
LOBData TEXT
)
GO

مرحله 2: در ادامه با استفاده از دستور زیر اطلاعاتی را که منجر به وقوع Row Overflow Data در جدول می شود درج نموده و با استفاده از دستور DBCC IND لیست page های موجود در جدول را بازیابی کنید: 

بررسی انواع page

DECLARE @data1 VARCHAR(3000)
SET @data1 = REPLICATE('A',3000)
INSERT INTO IAM_Table VALUES (1,@data1,@data1,@data1,N'Test')
GO

DBCC IND('DB_Name','IAM_Table',1) WITH NO_INFOMSGS
GO

هر سه نوع IAM Page را می توانید مطابق شکل زیر در خروجی ببینید:

بررسی انواع page در پایگاه داده

مثال 2: بررسی PFS Page 

با استفاده از دستور DBCC PAGE و درج مقدار 1 برای شماره page می توان به محتویات PFS Page دسترسی پیدا نمود :

بررسی انواع page

DBCC PAGE('table-name',1,1,3)WITH NO_INFOMSGS

 با اجرای دستور بالا مطابق شکل زیر می بینیم که page شماره 32 دارای 50 درصد فضای خالی است.

بررسی انواع page در پایگاه داده


در ادامه بحث بررسی انواع page خواهید دید ...!

با خرید جلسه 5 از بسته آموزشی "افزایش کارایی پایگاه داده" موارد زیر را خواهید دید:

  1. با یک مثال عملی برای هر نوع page، انواع page نمایش داده خواهد شد.
  2. کاربردهای هر نوع از page ها در پایگاه داده بطور کامل شرح داده می شود.
  3. تاثیر عملیاتها و یا تعریف نوع داده اشتباه در DataFile بیان می گردد.

دسترسی به موارد آموزشی بالا در بسته خریداری شده

  • شماره جلسه: 1
  • نام فایل ویدئو: 06
  • فرمت فایل: mp4.

نقطه شروع بحث بالا (بررسی انواع page در پایگاه داده) در ویدئو:  03:52


برای خرید و دانلود آموزش پیشرفته SQL Server کلیک کنید.

 

تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه