Comparing Undo Data and Redo Data – So sánh undo vs redo Oracle Database

Trước tiên, để hiểu sự khác biệt giữa dữ liệu undo và dữ liệu redo trong quản trị cơ sở dữ liệu Oracle, chúng ta cùng đi vào từng khái niệm và so sánh giữa chúng:

Dữ liệu Undo (Undo Data)

  1. Mục đích:
  • Dữ liệu undo được sử dụng để quản lý các thay đổi được thực hiện bởi các giao dịch. Nó cung cấp cơ chế rollback để quay trở lại các thay đổi được thực hiện bởi một giao dịch chưa được commit.
  • Đảm bảo tính nhất quán dữ liệu bằng cách cung cấp một bản snapshot của dữ liệu trước khi các thay đổi được áp dụng, cho phép truy vấn độc lập với thời điểm (read consistency).
  1. Lưu trữ:
  • Dữ liệu undo được lưu trữ trong không gian undo (undo tablespace). Nó thực hiện ghi đè xoay vòng thời gian giữ lại dữ liệu được quy định trong tham số undo_retension
  • Nó giữ một bản ghi lịch sử về các thay đổi dữ liệu, cho phép rollback các thay đổi đến một điểm thời gian cụ thể.
  1. Sử dụng:
  • Dữ liệu undo được tạo ra tự động bởi Oracle cho tất cả các hoạt động sửa đổi dữ liệu (thêm, cập nhật, xóa) trong một giao dịch. DML
  • Cần thiết cho các hoạt động rollback, đảm bảo đọc nhất quán và các truy vấn flashback.
  1. Vòng đời:
  • Tồn tại cho đến khi giao dịch tương ứng commit hoặc rollback.
  • Các phiên bản cũ hơn của dữ liệu undo được giữ lại để hỗ trợ các thao tác đọc nhất quán.
  1. Quản lý:
  • Được quản lý bên trong cơ sở dữ liệu Oracle và tự động.
  • Có thể thiết lập các tham số và quản lý không gian undo để đáp ứng yêu cầu về hiệu suất và dung lượng lưu trữ.

Dữ liệu Redo (Redo Data)

  1. Mục đích:
  • Dữ liệu redo là dữ liệu ghi lại các thay đổi dữ liệu trong quá trình thực hiện các hoạt động ghi (write operations) như insert, update, delete.
  • Đảm bảo tính bền vững của dữ liệu bằng cách lưu lại các thay đổi để khôi phục lại cơ sở dữ liệu trong trường hợp cần thiết (recovery).
  1. Lưu trữ:
  • Dữ liệu redo được ghi vào các redo log files, các tệp này được quản lý bởi Oracle và thường lưu trữ trên các thiết bị lưu trữ bền vững (persistent storage).
  1. Sử dụng:
  • Được tạo ra bởi quá trình redo logging của Oracle khi một giao dịch thực hiện các thay đổi dữ liệu.
  • Cần thiết cho các quá trình phục hồi (recovery), phục vụ cho các hoạt động backup và roll forward.
  1. Vòng đời:
  • Các bản ghi redo được giữ lại trong một khoảng thời gian nhất định (redo log retention period) trước khi bị ghi đè bởi các bản ghi mới hơn.
  • Tuổi thọ của redo log files cũng phụ thuộc vào cấu hình và quản lý của hệ thống. => nếu cấu hình Archivelog thì nó sẽ được xuất ra file archivelog.
  1. Quản lý:
  • Quản lý bởi Oracle và có các cơ chế tự động ghi lại các thay đổi.
  • Cần thiết để cấu hình kích thước và vị trí lưu trữ redo log files, đảm bảo hệ thống có đủ dung lượng và hiệu suất để xử lý các hoạt động ghi.
Đặc điểmDữ liệu UndoDữ liệu Redo
Mục đíchQuản lý thay đổi dữ liệu của các giao dịch, cung cấp cơ chế rollback.Ghi lại các thay đổi dữ liệu để đảm bảo tính bền vững và phục hồi.
Lưu trữTrong không gian undo (undo tablespace).Trong các redo log files.
Sử dụngĐảm bảo tính nhất quán và rollback các giao dịch chưa commit.Đảm bảo tính bền vững và phục hồi dữ liệu.
Vòng đờiTồn tại cho đến khi giao dịch commit hoặc rollback.Được giữ lại trong một khoảng thời gian nhất định (redo log retention period).
Quản lýQuản lý bởi Oracle, tự động tạo ra cho mọi giao dịch sửa đổi dữ liệu.Quản lý bởi Oracle, cần cấu hình kích thước và vị trí lưu trữ.

Tóm lại:

  • Dữ liệu undodữ liệu redo đều là các phần quan trọng trong quản lý cơ sở dữ liệu Oracle, phục vụ cho các mục đích khác nhau như đảm bảo đọc nhất quán, rollback và phục hồi dữ liệu.
  • Dữ liệu undo là lịch sử các thay đổi dữ liệu cho phép rollback giao dịch, trong khi dữ liệu redo là các thay đổi ghi lại để phục hồi dữ liệu và đảm bảo tính bền vững của cơ sở dữ liệu.

 

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest

0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận