Tôi đang nghiên cứu các lợi ích của việc nâng cấp từ MS SQL 2012 lên 2014. Một trong những điểm bán hàng lớn của SQL 2014 là các bảng được tối ưu hóa bộ nhớ, dường như thực hiện các truy vấn siêu nhanh.
Tôi đã thấy rằng có một vài hạn chế trên các bảng được tối ưu hóa bộ nhớ, chẳng hạn như:
- Không
(max)
có trường kích thước - Tối đa ~ 1KB mỗi hàng
- Không có
timestamp
trường - Không có cột tính toán
- Không
UNIQUE
ràng buộc
Tất cả đều đủ điều kiện là phiền toái, nhưng nếu tôi thực sự muốn làm việc xung quanh chúng để đạt được lợi ích hiệu suất, tôi có thể lập một kế hoạch.
Các kicker thực sự là thực tế là bạn không thể chạy một ALTER TABLE
tuyên bố, và bạn phải trải qua sự nghiêm khắc này mỗi khi bạn thêm một trường vào INCLUDE
danh sách chỉ mục. Hơn nữa, có vẻ như bạn phải tắt người dùng khỏi hệ thống để thực hiện bất kỳ thay đổi lược đồ nào đối với các bảng MO trên DB trực tiếp.
Tôi thấy điều này hoàn toàn thái quá, đến mức tôi thực sự không thể tin rằng Microsoft có thể đã đầu tư quá nhiều vốn phát triển vào tính năng này và để nó không thực tế để duy trì. Điều này dẫn tôi đến kết luận rằng tôi phải nhận được kết thúc sai của cây gậy; Tôi đã hiểu nhầm điều gì đó về các bảng được tối ưu hóa bộ nhớ khiến tôi tin rằng việc duy trì chúng khó khăn hơn nhiều so với thực tế.
Vì vậy, những gì tôi đã hiểu lầm? Bạn đã sử dụng bảng MO? Có một số loại chuyển đổi hoặc quy trình bí mật làm cho chúng thực tế để sử dụng và bảo trì?