Dường như khá khó để tìm thấy sự so sánh giữa các bảng tạm thời được phiên bản hệ thống và các tùy chọn cũ hơn, chẳng hạn như trình kích hoạt DB và CDC. Hiện tại tôi không có thời gian để viết một bài kiểm tra mở rộng trên SQL Server 2016, vì vậy tôi nghĩ tôi sẽ hỏi về nó ở đây.
Về cơ bản, ưu điểm điển hình với các trình kích hoạt là chúng dễ quản lý hơn trong các môi trường độc lập và phân cụm / alwaysOn, là thời gian thực để được đồng bộ hóa và có quyền truy cập vào dữ liệu phiên như ID người dùng.
Mặt khác, CDC trong khi yêu cầu quản lý nhiều hơn một chút và không đồng bộ, nhẹ hơn nhiều , và do đó hoạt động tốt hơn nhiều. Vì vậy, nếu có bất kỳ nghi ngờ nào về việc thắt cổ chai gây ra bởi các yếu tố kích hoạt có thể trở thành một vấn đề, CDC về cơ bản sẽ là giải pháp ưu việt. Về mặt yêu cầu phần cứng, CDC yêu cầu không gian bổ sung không đáng kể do sử dụng nhật ký và bảng kiểm toán cdc để theo dõi các thay đổi.
Câu hỏi: Làm thế nào để bảng thời gian so với hai bảng trên? Về tốc độ, hiệu suất, sử dụng không gian lưu trữ. KHI NÀO tôi nên sử dụng bảng tạm thời thay vì kích hoạt hoặc CDC? Khi nào tôi không nên?
Tôi hiểu bất cứ điều gì có khả năng phức tạp vì các yêu cầu kinh doanh và giới hạn kỹ thuật đằng sau kiểm toán DB sẽ không có một câu trả lời dễ dàng, vì nó phụ thuộc phần lớn vào các yêu cầu và phạm vi của dự án. Nhưng bất cứ điều gì để làm sáng tỏ hơn các câu hỏi trên sẽ được đánh giá cao. Cảm ơn!