Saya sedang menyelidiki manfaat pemutakhiran dari MS SQL 2012 hingga 2014. Salah satu nilai jual besar SQL 2014 adalah tabel yang dioptimalkan memori, yang tampaknya membuat kueri super cepat.
Saya telah menemukan bahwa ada beberapa batasan pada tabel yang dioptimalkan memori, seperti:
- Tidak ada
(max)
bidang berukuran - Maksimal ~ 1KB per baris
- Tanpa
timestamp
bidang - Tidak ada kolom yang dihitung
- Tidak ada
UNIQUE
kendala
Ini semua memenuhi syarat sebagai gangguan, tetapi jika saya benar-benar ingin bekerja di sekitar mereka untuk mendapatkan manfaat kinerja, saya dapat membuat rencana.
Penendang sesungguhnya adalah kenyataan bahwa Anda tidak dapat menjalankan ALTER TABLE
pernyataan, dan Anda harus melalui omong kosong ini setiap kali Anda menambahkan bidang ke INCLUDE
daftar indeks. Selain itu, tampaknya Anda harus menutup pengguna dari sistem untuk membuat perubahan skema ke tabel MO pada DB langsung.
Saya menemukan ini benar-benar keterlaluan, sejauh saya benar-benar tidak percaya bahwa Microsoft dapat menginvestasikan begitu banyak modal pengembangan ke fitur ini, dan membiarkannya begitu tidak praktis untuk dipertahankan. Ini membawa saya pada kesimpulan bahwa saya pasti mendapatkan ujung tongkat yang salah; Saya pasti salah paham tentang tabel yang dioptimalkan memori yang membuat saya percaya bahwa jauh lebih sulit untuk mempertahankannya daripada yang sebenarnya.
Jadi, apa yang saya salah pahami? Sudahkah Anda menggunakan tabel MO? Apakah ada semacam saklar atau proses rahasia yang membuatnya praktis untuk digunakan dan dipelihara?