Các truy vấn cơ sở dữ liệu chéo có đắt trong SQL Server không? Tất cả các cơ sở dữ liệu là trong cùng một ví dụ.
Các truy vấn cơ sở dữ liệu chéo có đắt trong SQL Server không? Tất cả các cơ sở dữ liệu là trong cùng một ví dụ.
Câu trả lời:
Xin lỗi, tôi không đủ uy tín để nhận xét về câu hỏi, nhưng từ kinh nghiệm của tôi nếu ứng dụng khách tăng giao dịch cho một truy vấn sử dụng cơ sở dữ liệu chéo tham gia thì nó sẽ thúc đẩy giao dịch được phân phối và có chi phí giao dịch DTC .
Chi phí DTC trong trường hợp này có thể được xem là tiêu cực đối với hiệu suất. Nói chung, sự khác biệt sẽ không đáng kể mặc dù Microsoft mô tả các giao dịch DTC như sau:
Các giao dịch phân tán thường tiêu tốn tài nguyên hệ thống đáng kể
... Điều này sẽ gợi ý sự suy giảm hiệu suất nếu máy chủ của bạn không thể cung cấp các tài nguyên mà nó yêu cầu.
Chỉ cần làm rõ, bài viết trên mô tả các giao dịch cục bộ đang được xúc tiến khi các hệ thống từ xa được giới thiệu, nhưng tôi đã thấy điều này trở thành trường hợp cho các giao dịch trên cùng một máy chủ khi sử dụng truy vấn cơ sở dữ liệu chéo.
Như Thomas Stringer đã chỉ ra trong nhận xét của mình, sẽ có thêm chi phí xác thực mặc dù tôi nghĩ vì điều này sẽ do SID điều khiển nên sẽ có chi phí tối thiểu ở đó trừ khi bạn phải sử dụng thông tin đăng nhập riêng để truy cập cơ sở dữ liệu khác.
Nếu có sự khác biệt trong cài đặt cơ sở dữ liệu gây ra chi phí bổ sung trong liên kết có thể ảnh hưởng lớn hơn các đề xuất trước đây - ví dụ đối chiếu cơ sở dữ liệu. Đối chiếu cơ sở dữ liệu có thể biểu hiện như một sự khác biệt về chức năng, không chỉ là sự khác biệt về hiệu năng.
Tôi nghĩ Aaron có lập luận mạnh nhất về hiệu suất với trình tối ưu hóa không có lợi thế sử dụng các mối quan hệ cho các truy vấn cơ sở dữ liệu chéo trong khi khép kín trong cơ sở dữ liệu mà bạn có thể sử dụng các mối quan hệ có lợi cho mình.
If a local transaction spans two or more databases on the same instance of the Database Engine, the instance uses an internal two-phase commit to commit all of the databases involved in the transaction.- Nếu bạn đã tìm thấy khác, vui lòng báo cáo lỗi về Kết nối với các bước tái tạo rõ ràng.
Trong SQL Server 2014, các bảng được tối ưu hóa bộ nhớ không hỗ trợ các giao dịch cơ sở dữ liệu chéo. Bạn không thể truy cập cơ sở dữ liệu khác từ cùng một giao dịch hoặc cùng một truy vấn cũng truy cập vào bảng được tối ưu hóa bộ nhớ. Bạn không thể dễ dàng sao chép dữ liệu từ một bảng trong một cơ sở dữ liệu, sang một bảng được tối ưu hóa bộ nhớ trong cơ sở dữ liệu khác. http://msdn.microsoft.com/en-us/l Library / dn584627 (v = sql.120) .aspx Các giao dịch phân tán và cơ sở dữ liệu chéo không được hỗ trợ cho phản chiếu cơ sở dữ liệu / AOAG. http://technet.microsoft.com/en-us/l Library / hh393530.aspx . Nếu bạn định sử dụng chuỗi sở hữu, hãy lưu ý về các rủi ro bảo mật http://msdn.microsoft.com/en-us/l Library / ms188676.aspx