Trên SQL Server của chúng tôi, chúng tôi có cơ sở dữ liệu cho từng ứng dụng web của chúng tôi. Đối với báo cáo, chúng tôi sử dụng Dịch vụ báo cáo và tất cả dữ liệu báo cáo (bao gồm cả tham số báo cáo) đến từ các thủ tục được lưu trữ.
Các thủ tục được lưu trữ trong cùng một cơ sở dữ liệu như dữ liệu trong báo cáo. Vì vậy, ví dụ, các procs phục vụ báo cáo Stock nằm trong cơ sở dữ liệu Stock. Một số báo cáo hiển thị thông tin từ nhiều cơ sở dữ liệu và sau đó, Proc sẽ ở một trong những cơ sở dữ liệu nguồn đó. Các tham số báo cáo nhận dữ liệu của họ từ procs trong cơ sở dữ liệu Doanh nghiệp có dữ liệu như cửa hàng, nhân viên, v.v.
Điều này có nghĩa là tất cả các báo cáo có ít nhất một kết nối đến cơ sở dữ liệu Doanh nghiệp và một kết nối khác với cơ sở dữ liệu khác - và đôi khi còn hơn thế.
Câu hỏi của tôi là: có lợi ích gì khi chuyển các procs báo cáo vào cơ sở dữ liệu "Báo cáo" riêng biệt . Tôi biết lợi ích của việc di chuyển báo cáo lên một máy chủ khác và tôi không nói về điều đó - đây sẽ là trên cùng một máy chủ.
Những thứ có thể ảnh hưởng đến điều này là:
- Có nhiều kết nối cơ sở dữ liệu cho một báo cáo, có ảnh hưởng đến tốc độ của báo cáo không?
- Việc có báo cáo Proc trong một cơ sở dữ liệu riêng biệt từ dữ liệu, ngăn chúng tôi sử dụng các chế độ xem được lập chỉ mục?
- Bạn có thấy việc quản lý báo cáo trong một cơ sở dữ liệu riêng biệt dễ hơn / khó hơn không?
Xin vui lòng cho tôi biết những gì bạn nghĩ.