Merhaba
SQL Server 2025 Public Preview sürümüyle birlikte, veri depolama verimliliğini önemli ölçüde artırmayı vaat eden güçlü bir yeni özellik sunuyoruz: ZStandard (ZSTD) sıkıştırma algoritması desteği. İlk olarak Facebook’ta Yann Collet tarafından geliştirilen bu açık kaynak sıkıştırma teknolojisi, uzun süredir kullanılan MS_XPRESS sıkıştırma algoritmasına modern bir alternatif olarak SQL Server’a entegre ediliyor.
ZSTD Nedir?
ZSTD, sıkıştırma oranı ve hız arasında zorlayıcı bir denge sunan hızlı, kayıpsız bir sıkıştırma algoritmasıdır. Bu özelliği sayesinde teknoloji endüstrisinde yaygın olarak benimsenmiştir.
- High compression ratios (Yüksek sıkıştırma oranları) : Genellikle MS_XPRESS gibi eski algoritmalardan daha iyi performans gösterir.
- Fast decompression speeds (Yüksek dekompresyon hızları) : Database (Veritabanı )okuma ağırlıklı iş yükleri için idealdir.
- Scalability (Ölçeklenebilirlik) : Sunucunuzda CPU kullanımı ve depolama tasarrufunu dengelemek için ayarlanabilir sıkıştırma seviyeleri.
SQL Server’da Sıkıştırma: O Zaman ve Şimdi
SQL Server, depolama maliyetlerini azaltmak ve G/Ç performansını artırmak için uzun süredir veri sıkıştırmayı desteklemektedir. Satır ve sayfa sıkıştırmada kullanılan MS_XPRESS algoritması uzun yıllar boyunca iyi hizmet vermiştir. Ancak veri hacimleri büyüdükçe ve performans talepleri arttıkça daha verimli bir çözüme ihtiyaç duyulmaktadır.
SQL Server 2025’te ZSTD’nin Temel Faydaları
- Geliştirilmiş Sıkıştırma Oranları : Dahili kıyaslamalarda ZSTD, veri türü ve yapısına bağlı olarak MS_XPRESS’e kıyasla %30-50’ye kadar daha iyi sıkıştırma göstermiştir. Bu, özellikle büyük veri ambarları ve arşiv sistemleri için önemli depolama tasarrufu anlamına gelir.
- Daha Hızlı Dekompresyon : ZSTD’nin optimize edilmiş dekompresyon yolu, sıkıştırma oranları arttıkça bile sıkıştırılmış veriler üzerindeki sorguların hızlı kalmasını sağlar.
- Esnek Sıkıştırma Seviyeleri : SQL Server 2025 , yöneticilerin birden fazla ZSTD sıkıştırma seviyesi arasından seçim yapmasına olanak tanıyarak CPU kullanımı ile sıkıştırma verimliliği arasındaki dengenin hassas bir şekilde ayarlanmasını sağlar.
- Sorunsuz Entegrasyon : ZSTD mevcut sıkıştırma çerçevesine entegre edilmiştir, yani tanıdık T-SQL sözdizimi ve yönetim araçlarını kullanarak uygulayabilirsiniz.
SQL Server 2025’te ZSTD Nasıl Kullanılır
MS_XPRESS sıkıştırması :
BACKUP DATABASE BAKICUBUK
TO DISK = 'C:\SQLBackups\BAKICUBUK_MS_XPERSS.bak'
WITH COMPRESSION;
GO
ZSTD Sıkıştırma : Yedekleme sırasında ZSTD belirtin.
BACKUP DATABASE <database_name> TO {DISK|TAPE|URL} WITH COMPRESSION (ALGORITHM = ZSTD)
BACKUP DATABASE BAKICUBUK
TO DISK = 'C:\SQLBackups\BAKICUBUK_ZSTD.bak'
WITH COMPRESSION (ALGORITHM = ZSTD);
GO
ZSTD – LEVEL Sıkıştırma : Varsayılan sıkıştırma seviyesi LOW (Düşük). İzin verilen değerler LOW (Düşük)., MEDIUM(Orta) ve HIGH (Yüksek) olarak yapılandırabilirsiniz.
BACKUP DATABASE <database_name> TO {DISK|TAPE|URL} WITH COMPRESSION (ALGORITHM = ZSTD, LEVEL=HIGH)
BACKUP DATABASE BAKICUBUK
TO DISK = 'C:\SQLBackups\BAKICUBUK_ZSTD-HIGH.bak'
WITH COMPRESSION (ALGORITHM = ZSTD, LEVEL=HIGH);
GO
Beklediğiniz gibi, HIGH (Yüksek) sıkıştırma seviyesini belirtmek LOW (Düşük) sıkıştırma seviyesine kıyasla daha uzun sürebilir.
Hangi sıkıştırma algoritmasının kullanıldığı nasıl doğrulanır?
Yedekleme sırasında hangi sıkıştırma algoritmasının kullanıldığını doğrulamak için RESTORE HEADERONLY komutunu kullanabilirsiniz.
MS_XPRESS RESTORE HEADERONLY Kontrolü
RESTORE HEADERONLY
FROM DISK = N'C:\SQLBackups\BAKICUBUK_MS_XPERSS.bak'
GO
CompressionAlgorithm sütununda algoritmanın adı görüntülenecektir.
ZSTD – RESTORE HEADERONLY Kontrolü
RESTORE HEADERONLY
FROM DISK = N'C:\SQLBackups\BAKICUBUK_ZSTD.bak'
GO
CompressionAlgorithm sütununda algoritmanın adı görüntülenecektir.
ZSTD – LEVEL RESTORE HEADERONLY Kontrolü
RESTORE HEADERONLY
FROM DISK = N'C:\SQLBackups\BAKICUBUK_ZSTD-HIGH.bak'
GO
CompressionAlgorithm sütununda algoritmanın adı görüntülenecektir.
Sıkıştırma seviyeleri karşılaştırıyoruz.
Dosya boyutlarına hızlı bir bakış, ZSTD’nin bir miktar tasarruf sağladığını gösterir. Ek olarak, LEVEL=HIGH belirtildiğinde daha yüksek bir sıkıştırma seviyesi elde edilir.
Yeni sıkıştırma algoritmasından elde edilen gerçek tasarruf, verilerin niteliğine ve mevcut kaynak miktarına göre değişmekle birlikte, genel olarak sıkıştırmada önemli gelişmeler gördük.
ZSTD’nin SQL Server 2025‘e entegrasyonu, veri sıkıştırma teknolojisinde ileriye doğru atılmış önemli bir adımı işaret ediyor. İster terabaytlarca işlem verisini yönetiyor ister Data Lake analitik için optimize ediyor olun, ZSTD modern, verimli ve yüksek performanslı bir çözüm sunuyor.
Başka bir yazımızda görüşmek dileğiyle…