رادکام
همانطور که میدانید هر دیتابیس دو فایل اصلی دارد: Data File و Log File. تمامی اتفاقاتی که بر روی دیتابیس می افتد به طور کامل در فایل لاگ(Ldf) ثبت میشود، این بدین معناست که این فایل به شدت مورد استفاده SqlServer است، پس توجه ویژه به آن در کارایی بهتر دیتابیس تاثیرگذار خواهد بود. در ادامه پیشنهادهایی برای داشتن کارایی بهتر روی فایل لاگ را عنوان میکنم:
رفتار ذخیره سازی دیتا در فایل لاگ به صورت متوالی (Sequential) است به همین دلیل ایجاد کردن چندین فایل لاگ برای یک دیتابیس کمکی به کارایی آن نمیکند، زیرا تا فایل قبلی پر نشده باشد سراغ فایل بعدی نمیرود.
نوع دسترسی به لاگ فایل برخلاف دیتا فایل به صورت Sequential است، بهمین دلیل اگر بتوانید دیسک جداگانه ای به آن اختصاص دهید به شدت بر روی کارایی دیتابیس تان تاثیر گذار خواهد بود.
توجه کنید نباید در کنار آن لاگ فایل های دیگر یا فایل های Backup را قرار دهید زیرا باعث میشود دسترسی Random Access گردد و آن نتیجه مطلوب را به دست نیاورید.
تاکید میکنم منظور از دیسک در اینجا واقعا یک دیسک جداست، نه یک پارتیشن دیگر!
همچنین جدا کردن لاگ فایل و دیتا فایل در دیسک های جداگانه اجازه می دهد تا I/O به طور همزمان بر روی هر دو فایل فعالیت کند و همین امر بر روی کارآیی دیتابیس تاثیر مثبتی خواهد داشت.
چنانچه نگاهی به معماری فیزیکی لاگ فایل بیاندازیم متوجه می شویم، تمامی دستوراتی که باعث تغییر بر روی دیتابیس میشوند در فایل های VLF ذخیره میشوند. هرچه تعداد فایلهای VLF بیشتر شود در حالیکه سایزشان کم است، کارایی دیتابیس کاهش پیدا می کند، در اصطلاح گفته میشود که لاگ فایل دچار Internal Fragmentation شده است.
این اتفاق چه زمانی ممکن است رخ دهد؟ زمانیکه بدون توجه به میزان رشد دیتابیس از تنظیمات پیش فرض برای ایجاد دیتابیس استفاده شود.
بهمین دلیل پیشنهاد میشود:
با توجه به اینکه تمامی تغییرات در فایل لاگ ذخیره میشد، هرچه دیتابیس پرکاربردتر باشد سرعت رشد فایل لاگ نیز بیشتر است. برای کنترل کردن این سرعت رشد دو راه استفاده میشود:
از Query زیر برای بررسی وضعیت فایل لاگ خود میتوانید استفاده کنید:
SELECT name , recovery_model_desc , log_reuse_wait_desc
FROM sys.databases
WHERE name = '[DATABASENAME]'
4,621بازدید
دیدگاه کاربران
هنوز دیدگاهی ثبت نشده است.
شما میتوانید درباره این مقاله، دیدگاه خود را ثبت کنید.