بهینهسازی پشتیبانگیری در SQLServer 2025 با الگوریتمهای جدید فشردهسازی Zstandard
SQL Server 2025 بهبودهای چشمگیری در فشردهسازی پشتیبان ارائه میکند که هدف آن فراهم آوردن عملکرد بهتر و اندازه فایلهای پشتیبان کوچکتر است. در حالی که نسخههای قبلی عمدتاً به الگوریتم Xpress متکی بودند، نسخه جدید گزینههای پیشرفتهتری را به میان میآورد.
الگوریتم فشردهسازی پیشفرض در SQL Server 2025، Zstandard (ZSTD) است. این کتابخانه فشردهسازی مدرن به دلیل تعادل عالی بین سرعت و نسبت فشردهسازی مشهور است و آن را به گزینهای ایدهآل برای پشتیبانگیری پایگاه داده تبدیل میکند. ZSTD سطوح فشردهسازی مختلفی را ارائه میدهد که به کاربران امکان میدهد تعادل بین مصرف CPU و اندازه فایل پشتیبان نهایی را تنظیم کنند.
درک نحوه عملکرد Zstandard کلیدی است. این الگوریتم از یک رویکرد مبتنی بر دیکشنری همراه با کدگذاری هافمن و کدگذاری آنتروپی با حالت محدود استفاده میکند. به عنوان مثال، سطح فشردهسازی مستقیماً بر میزان فشردهسازی دادهها تأثیر میگذارد؛ سطوح بالاتر عموماً پشتیبانهای کوچکتری را تولید میکنند اما منابع CPU بیشتری نیاز دارند. ممکن است پارامترهایی مانند CompressionLevel = N را مشاهده کنید که N از 1 تا 22 متغیر است و سطح فشردهسازی مورد نظر را مشخص میکند.
در مقایسه با الگوریتم Xpress، الگوریتم ZSTD معمولاً نسبتهای فشردهسازی بالاتری را، به ویژه در مجموعههای داده بزرگ و پیچیده، بدون افزایش چشمگیر زمان پشتیبانگیری، به دست میآورد. Xpress همچنان برای سازگاری یا سناریوهای خاص در دسترس است، اما ZSTD رویکرد مدرن و توصیه شده است.
هنگام انجام پشتیبانگیری، میتوانید الگوریتم فشردهسازی را به صراحت مشخص کنید. برای مثال، جهت استفاده از ZSTD با یک سطح خاص، دستور به شکل زیر خواهد بود:
BACKUP DATABASE [DatabaseName] TO DISK = N'C:\Backup\DatabaseName.bak' WITH COMPRESSION (ALGORITHM = ZSTD, COMPRESSION_LEVEL = 10)
این دستور پایگاه داده مشخص شده را با استفاده از الگوریتم ZSTD در سطح 10 پشتیبانگیری میکند. گزینه COMPRESSION_LEVEL امکان کنترل دقیق را فراهم میآورد. اگر این گزینه مشخص نشود، SQL Server 2025 از یک سطح پیشفرض ZSTD استفاده خواهد کرد.
نظارت بر میزان استفاده از CPU سیستم در طول عملیات پشتیبانگیری بسیار مهم است، به خصوص هنگام آزمایش با سطوح فشردهسازی بالاتر. در حالی که فایلهای پشتیبان کوچکتر به معنای بازیابی سریعتر و فضای ذخیرهسازی کمتر است، مصرف بیش از حد CPU میتواند بر عملکرد کلی سرور شما تأثیر بگذارد. آزمایش سطوح مختلف در محیط خود را برای یافتن تعادل بهینه در نظر بگیرید.
CPU_Usage_Impact = CompressionLevel * Factor
این فرمول نشان میدهد که مصرف CPU مستقیماً متناسب با سطح فشردهسازی انتخابی است که در یک ضریب داخلی ضرب میشود. این ضریب میتواند بر اساس سختافزار و ویژگیهای دادهها متفاوت باشد و باید در نظر گرفته شود.
برای کسانی که به حداقل سربار CPU مطلق نیاز دارند، یا هنگام کار با دادههای بسیار فشردهپذیر که Xpress در آنها عملکرد خوبی دارد، مشخص کردن صریح Xpress همچنان یک گزینه است:
BACKUP DATABASE [DatabaseName] TO DISK = N'C:\Backup\DatabaseName.bak' WITH COMPRESSION (ALGORITHM = XPRESS)
این کار تضمین میکند که الگوریتم سنتی Xpress استفاده میشود که ممکن است در سیستمهایی با منابع CPU محدود یا برای الگوهای داده خاص، سریعتر باشد.
در نتیجه، معرفی Zstandard به عنوان الگوریتم فشردهسازی پیشفرض پشتیبان در SQL Server 2025 یک گام مهم رو به جلو است. این الگوریتم کارایی فشردهسازی و انعطافپذیری بهبود یافتهای را ارائه میدهد. مدیران پایگاه داده باید از این قابلیتهای جدید برای بهینهسازی استراتژیهای پشتیبانگیری خود استفاده کنند و از پشتیبانگیری سریعتر، فضای ذخیرهسازی کمتر و زمان بازیابی سریعتر اطمینان حاصل کنند، در حالی که منابع سرور را به طور موثر مدیریت میکنند.