Anda akan menemukan manfaat lain untuk menormalkan data selain kecepatan kueri yang berjalan melawannya... seperti ukuran dan kemampuan pemeliharaan, yang seharusnya membenarkan normalisasi itu...
Namun, kemungkinan juga akan meningkatkan kecepatan kueri; saat ini memiliki satu baris yang berisi 300 kolom teks sangat besar, dan hampir pasti melewati 8.060 byte batas untuk menyimpan halaman data baris
... dan malah disimpan di ROW_OVERFLOW_DATA
atau LOB_DATA
Unit Alokasi.
Dengan mengurangi ukuran setiap baris melalui normalisasi, seperti mengganti data teks yang berlebihan dengan TINYINT
kunci asing, dan dengan juga menghapus kolom yang tidak bergantung pada kunci utama tabel besar ini ke tabel lain, data tidak boleh lagi meluap, dan Anda juga dapat menyimpan lebih banyak baris per halaman.
Sejauh overhead ditambahkan dengan melakukan JOIN
untuk mendapatkan data yang dinormalisasi... jika Anda mengindeks tabel dengan benar, ini tidak akan menambah banyak biaya. Namun, jika itu menambah overhead yang tidak dapat diterima, Anda dapat secara selektif melakukan denormalisasi data seperlunya.