- Veritabanında indeksleri veya verileri silmeden depolama alanı kazanma teknikleri ele alınıyor.
- Kullanılmayan indeksler belirlenip depolama alanı açmak için kaldırılıyor.
- Tablolardaki ve indekslerdeki gereksiz alanı temizlemek için yeniden oluşturma yapılıyor.
- PostgreSQL 13 ile gelen B-Tree indeks tekilleştirme özelliği, yinelenen değerlere sahip indekslerin boyutunu küçültebiliyor.
- Kesinti olmadan şişmeyi azaltmak için
pg_repack eklentisi kullanılarak tablolar yeniden oluşturulabiliyor.
- PostgreSQL'de
NULL değerleri de indekslendiği için gereksiz alan tüketiyor.
NULL değerlerini hariç tutup indeks boyutunu küçültmek için kısmi indekslerden yararlanılıyor.
- Bu işlemleri gerçekleştirmek için sorgular ve komutlar sunuluyor.
- Anlatılan teknikler, depolama alanı kullanımını optimize edip veritabanı performansını iyileştirebilir.
- Django ile geliştirilmiş büyük ölçekli bir uygulamada, depolama alanını optimize etmek ve performansı artırmak için kısmi indeksler kullanılıyor.
- Kısmi indeksler yalnızca null değerleri değil, sık sorgulanmayan veya hiç sorgulanmayan değerleri de hariç tutabilir.
- Belirli bir indeksi, null değerleri dışlayan bir kısmi indekse dönüştürmek yaklaşık 1,3 GB depolama alanı tasarrufu sağlayabiliyor.
- Replikalarda indeksleri kaldırmak daha fazla depolama alanı açabilir.
- Django'da yabancı anahtarlar için örtük indeks oluşturmayı engelleme ve mevcut tam indeksleri kesinti ya da performans düşüşü olmadan kısmi indekslere taşıma konusunda ipuçları veriliyor.
- İndeks tanımlarını optimize ederek depolama verimliliğini ve performansı en üst düzeye çıkarmanın önemi vurgulanıyor.
1 yorum
Hacker News yorumu
NULLdeğerleri için faydalı olabilir.NULLdeğer indeksleri geniş ölçüde bilinmiyor.