3 poin oleh GN⁺ 2023-08-30 | 1 komentar | Bagikan ke WhatsApp
  • Dibahas teknik untuk mengamankan ruang penyimpanan di database tanpa menghapus indeks atau data.
  • Indeks yang tidak digunakan diidentifikasi lalu dihapus untuk mengosongkan ruang penyimpanan.
  • Tabel dan indeks dibangun ulang untuk merapikan ruang yang tidak perlu.
  • Pada PostgreSQL 13, fitur deduplikasi indeks B-Tree diperkenalkan sehingga ukuran indeks dengan nilai duplikat bisa dikurangi.
  • Untuk mengurangi bloat tanpa downtime, tabel dapat dibangun ulang menggunakan ekstensi pg_repack.
  • Di PostgreSQL, nilai NULL juga diindeks sehingga memakai ruang yang tidak perlu.
  • Indeks parsial dimanfaatkan untuk mengecualikan nilai NULL dan mengurangi ukuran indeks.
  • Disediakan kueri dan perintah untuk melakukan pekerjaan ini.
  • Teknik yang disebutkan dapat mengoptimalkan penggunaan ruang penyimpanan dan meningkatkan kinerja database.
  • Pada aplikasi skala besar yang dibangun dengan Django, indeks parsial digunakan untuk mengoptimalkan ruang penyimpanan dan meningkatkan kinerja.
  • Indeks parsial tidak hanya dapat mengecualikan nilai null, tetapi juga nilai yang sering atau tidak pernah dikueri.
  • Dengan mengubah indeks tertentu menjadi indeks parsial yang mengecualikan nilai null, sekitar 1,3GB ruang penyimpanan dapat dihemat.
  • Menghapus indeks pada replika dapat membebaskan lebih banyak ruang penyimpanan.
  • Disediakan tip untuk mencegah pembuatan indeks implisit pada foreign key di Django serta memigrasikan indeks penuh yang sudah ada menjadi indeks parsial tanpa downtime atau penurunan kinerja.
  • Ditekankan pentingnya mengoptimalkan definisi indeks untuk memaksimalkan efisiensi ruang penyimpanan dan kinerja.

1 komentar

 
GN⁺ 2023-08-30
Komentar Hacker News
  • Mengecilkan indeks tetap memiliki keuntungan meskipun kapasitas penyimpanan sudah mencukupi.
  • Bagi mereka yang memiliki perangkat keras sendiri, mengalokasikan lebih banyak ruang penyimpanan adalah opsi yang valid.
  • Deduplicasi B-tree di PostgreSQL 13 dapat membantu untuk nilai NULL pada indeks foreign key.
  • Artikel ini memberikan teknik dan wawasan yang berguna untuk mengoptimalkan efisiensi ruang di PostgreSQL.
  • Untuk perusahaan tahap awal atau yang masih sangat dini, menambah ruang disk umumnya lebih baik daripada mengoptimalkan ukuran.
  • Menata ulang urutan kolom tabel dan menggunakan skrip dapat menghemat ruang penyimpanan dalam jumlah besar.
  • Distribusi data yang tidak simetris dapat menyebabkan pembengkakan indeks dan perlunya operasi vacuum yang lebih efisien.
  • Artikel ini menerima umpan balik positif di Hacker News.
  • pganalyze.com direkomendasikan untuk menemukan indeks yang tidak digunakan dan peluang optimasi.
  • Format indeks PostgreSQL yang tidak umum dan indeks untuk nilai NULL tidak banyak diketahui orang.
  • Meningkatkan jumlah data dapat berdampak besar pada waktu insert dan performa.
  • Prinsip tersebut masih dapat berlaku bahkan ketika kolom memiliki proporsi nilai umum yang tinggi.