Saya memiliki skema lama (penafian!) Yang menggunakan id yang dihasilkan berbasis hash untuk kunci utama untuk semua tabel (ada banyak). Contoh dari id tersebut adalah:
922475bb-ad93-43ee-9487-d2671b886479
Tidak ada harapan untuk mengubah pendekatan ini, namun kinerja dengan akses indeks buruk. Mengesampingkan segudang alasan ini mungkin, ada satu hal yang saya perhatikan yang tampaknya kurang optimal - meskipun semua nilai id dalam semua tabel panjangnya persis 36 karakter, jenis kolomnya varchar(36)
, tidak char(36)
.
Akankah mengubah jenis kolom menjadi panjang tetap char(36)
menawarkan manfaat kinerja indeks yang signifikan , di luar peningkatan yang sangat kecil dalam jumlah entri per halaman indeks dll?
Yaitu apakah postgres berkinerja lebih cepat ketika berhadapan dengan tipe dengan panjang tetap daripada dengan tipe dengan panjang variabel?
Tolong jangan menyebutkan penghematan penyimpanan sangat kecil - itu tidak akan menjadi masalah dibandingkan dengan operasi yang diperlukan untuk membuat perubahan ke kolom.