عنوان:

‫فشرده سازی پشتیبان Zstandard (ZSTD) در SQL Server 2025


نویسنده: وحید نصیری
تاریخ: ۱۴۰۴/۰۳/۲۲ ۰۸:۱۹
آدرس: www.dntips.ir
SQL Server 2025 فشرده‌سازی ZSTD را معرفی می‌کند که هدف آن ارائه نتایج بهتر از MS_XPRESS و پیکربندی آسان‌تر از QAT است.

نحوه استفاده:
  • فشرده‌سازی پایه ZSTD: BACKUP DATABASE … WITH COMPRESSION (ALGORITHM = ZSTD);
  • تعیین سطح فشرده‌سازی: BACKUP DATABASE … WITH COMPRESSION (ALGORITHM = ZSTD, LEVEL = HIGH);
  • سطوح: LOW، MEDIUM یا HIGH (فشرده‌سازی بالاتر به معنای حجم کمتر، اما مصرف CPU بیشتر است).

تنظیم پیش‌فرض: می‌توانید ZSTD را به عنوان الگوریتم فشرده‌سازی پیش‌فرض پشتیبان با استفاده از EXEC sys.sp_configure 'backup compression algorithm', 3; RECONFIGURE; تنظیم کنید. در حال حاضر، سطح پیش‌فرض همیشه LOW است.

آزمایش و نتایج
  • روش‌شناسی: نویسنده فشرده‌سازی ZSTD را بر روی یک پایگاه داده بزرگ و واقعی Stack Overflow به حجم تقریبی 8 ترابایت در یک ماشین مجازی GCP (m3-ultramem-128، 64 هسته، 3904 گیگابایت حافظه، فضای ذخیره‌سازی Hyperdisk Balanced) آزمایش کرد.
  • روش آزمایش: یک رویه ذخیره شده (dbo.RunBackupTest) برای خودکارسازی پشتیبان‌گیری و بازیابی ایجاد شد که معیارهایی مانند زمان پشتیبان‌گیری/بازیابی، حجم و CPU را ثبت می‌کند. همچنین ایجاد نام‌های پایگاه داده منحصر به فرد، مسیرهای فایل و پاکسازی را مدیریت می‌کند.
  • نتایج اولیه آزمایش (میانگین 5 اجرا):
آزمایشزمان پشتیبان‌گیری (ثانیه)CPU پشتیبان‌گیریحجم پشتیبان‌گیریزمان بازیابی (ثانیه)CPU بازیابی
MS_XPRESS3,27413%1.92 ترابایت3,2676%
ZSTD – LOW3,27213%1.92 ترابایت3,2716%
ZSTD – MED3,27314%1.68 ترابایت3,2597%
ZSTD – HIGH3,45416%1.59 ترابایت3,2628%
  • یافته کلیدی: مدت زمان پشتیبان‌گیری توسط توان عملیاتی ذخیره‌سازی (2400 مگابایت بر ثانیه) محدود شده بود. ZSTD – HIGH به کاهش حجم قابل توجهی (صرفه‌جویی بیش از 0.25 ترابایت) با افزایش ناچیز در CPU (2-3٪) و مدت زمان (5٪) دست یافت.


مشاهده مطلب اصلی