Sự khác biệt giữa Cập nhật Trì hoãn và Cập nhật Ngay lập tức

Sự khác biệt giữa Cập nhật Trì hoãn và Cập nhật Ngay lập tức
Sự khác biệt giữa Cập nhật Trì hoãn và Cập nhật Ngay lập tức

Video: Sự khác biệt giữa Cập nhật Trì hoãn và Cập nhật Ngay lập tức

Video: Sự khác biệt giữa Cập nhật Trì hoãn và Cập nhật Ngay lập tức
Video: KHỦNG HOẢNG 1/4 CUỘC ĐỜI: Mất phương hướng và chênh vênh thì phải làm sao? | Nguyễn Hữu Trí 2024, Tháng mười một
Anonim

Cập nhật trì hoãn so với Cập nhật ngay lập tức

Cập nhật hoãn lại và Cập nhật ngay lập tức là hai kỹ thuật được sử dụng để duy trì các tệp nhật ký giao dịch của Hệ thống quản lý cơ sở dữ liệu (DBMS). Nhật ký giao dịch (còn được gọi là nhật ký nhật ký hoặc nhật ký làm lại) là một tệp vật lý lưu trữ ID giao dịch, dấu thời gian của giao dịch, giá trị cũ và các giá trị mới của dữ liệu. Điều này cho phép DBMS theo dõi dữ liệu trước và sau mỗi giao dịch. Khi các giao dịch được cam kết và cơ sở dữ liệu được trả về trạng thái nhất quán, nhật ký có thể bị cắt bớt để xóa các giao dịch đã cam kết.

Cập nhật hoãn lại

Cập nhật hoãn hay còn gọi là NO-UNDO / REDO là kỹ thuật dùng để khôi phục / hỗ trợ các lỗi giao dịch xảy ra do lỗi hệ điều hành, nguồn, bộ nhớ hoặc máy. Khi một giao dịch chạy, bất kỳ cập nhật hoặc thay đổi nào đối với cơ sở dữ liệu của giao dịch sẽ không được thực hiện ngay lập tức. Chúng được ghi lại trong tệp nhật ký. Các thay đổi dữ liệu được ghi lại trong tệp nhật ký được áp dụng cho cơ sở dữ liệu trên cam kết. Quá trình này được gọi là “Làm lại”. Khi khôi phục, mọi thay đổi đối với dữ liệu được ghi trong tệp nhật ký sẽ bị loại bỏ; do đó sẽ không có thay đổi nào được áp dụng cho cơ sở dữ liệu. Nếu một giao dịch không thành công và nó không được cam kết do bất kỳ lý do nào đã nêu ở trên, các bản ghi trong tệp nhật ký sẽ bị loại bỏ và giao dịch được bắt đầu lại. Nếu các thay đổi trong giao dịch được cam kết trước khi gặp sự cố, thì sau khi hệ thống khởi động lại, các thay đổi được ghi lại trong tệp nhật ký sẽ được áp dụng cho cơ sở dữ liệu.

Cập nhật ngay

Cập nhật tức thời còn gọi là UNDO / REDO, cũng là một kỹ thuật khác được sử dụng để khôi phục / hỗ trợ các lỗi giao dịch xảy ra do lỗi hệ điều hành, nguồn, bộ nhớ hoặc máy. Khi một giao dịch chạy, bất kỳ cập nhật hoặc thay đổi nào do giao dịch thực hiện đều được ghi trực tiếp vào cơ sở dữ liệu. Cả giá trị ban đầu và giá trị mới cũng được ghi lại trong tệp nhật ký trước khi thực hiện các thay đổi đối với cơ sở dữ liệu. Khi cam kết, tất cả các thay đổi được thực hiện đối với cơ sở dữ liệu được thực hiện vĩnh viễn và các bản ghi trong tệp nhật ký sẽ bị loại bỏ. Khi khôi phục các giá trị cũ được khôi phục vào cơ sở dữ liệu bằng cách sử dụng các giá trị cũ được lưu trữ trong tệp nhật ký. Tất cả các thay đổi được thực hiện bởi các giao dịch đối với cơ sở dữ liệu sẽ bị loại bỏ và quá trình này được gọi là “Không thực hiện”. Khi hệ thống khởi động lại sau sự cố, tất cả các thay đổi cơ sở dữ liệu sẽ được thực hiện vĩnh viễn cho các giao dịch đã cam kết. Đối với các giao dịch chưa cam kết, các giá trị ban đầu được khôi phục bằng cách sử dụng các giá trị trong tệp nhật ký.

Sự khác biệt giữa Cập nhật Trì hoãn và Cập nhật Ngay lập tức là gì

Mặc dù Cập nhật Trì hoãn và Cập nhật Ngay lập tức là hai phương pháp khôi phục sau sự cố hệ thống, quy trình mà mỗi phương pháp sử dụng là khác nhau. Trong các phương pháp cập nhật khác nhau, mọi thay đổi đối với dữ liệu của một giao dịch trước tiên được ghi lại trong tệp nhật ký và được áp dụng cho cơ sở dữ liệu khi cam kết. Trong phương pháp cập nhật ngay lập tức, các thay đổi được thực hiện bởi một giao dịch được áp dụng trực tiếp vào cơ sở dữ liệu và các giá trị cũ và giá trị mới được ghi lại trong tệp nhật ký. Các bản ghi này được sử dụng để khôi phục các giá trị cũ khi khôi phục. Trong phương pháp cập nhật khác nhau, các bản ghi trong tệp nhật ký sẽ bị loại bỏ khi quay lại và không bao giờ được áp dụng cho cơ sở dữ liệu. Một nhược điểm của phương pháp cập nhật trì hoãn là tăng thời gian khôi phục trong trường hợp hệ thống bị lỗi. Mặt khác, các hoạt động I / O thường xuyên trong khi giao dịch đang hoạt động, là một bất lợi trong phương pháp cập nhật ngay lập tức.

Đề xuất: