Kịch bản:
- hai cơ sở dữ liệu: DB_A và DB_Archive với một bảng rất lớn gọi là bảngA.
- mỗi ngày, các bản ghi cũ hơn 60 ngày sẽ bị xóa khỏi DB_A và chuyển sang DB_Archive chủ yếu để "tách" vì bảngA được truy vấn rất nhiều trên DB_A cho các bản ghi trong 2 tháng qua.
Tôi muốn thoát khỏi quá trình này vì nó chậm và tiêu tốn nhiều tài nguyên. Tôi đang nghĩ đến việc triển khai phân vùng bảng trên DB_A với chức năng phân vùng trên cột ngày và lưu trữ tất cả các bản ghi <2 tháng trên một phân vùng và tất cả các bản ghi> 2 tháng trên một phân vùng khác. Những câu hỏi của tôi:
- kịch bản này sẽ hành xử như thế nào nếu tôi có 2 cơ sở dữ liệu khác nhau? Nếu tôi truy vấn bảngA của tôi để biết các bản ghi> getdate () - 30, nó có đọc được phân vùng lưu trữ không?
- Tôi nghĩ rằng tôi phải phân vùng các chỉ mục là tốt, phải không?
- Làm thế nào để tôi đối phó với thực tế là ngày mai chức năng phân vùng của tôi sẽ "thay đổi", ý tôi là, nếu tôi tạo chức năng hôm nay (ngày 2 tháng 7, phạm vi của nó sẽ là ngày 2 tháng 5, nhưng ngày mai sẽ là ngày 3 tháng 5). Tôi có thể tạo một chức năng phân vùng động không?