Versioning¶
Tính năng S3 Versioning cho phép giữ lại các versions của một Object trường hợp Object đó bị xóa hoặc bị ghi đè. User có thể khôi phục lại version mong muốn. Khi enable tính năng Versioning của Bucket, mỗi lần thay đổi Object sẽ tạo ra một Version mới.
Khi xóa một object, Sun S3 sẽ tạo ra một version có type là Delete Marker để đánh dấu.
Version sẽ không được hiển thị nếu không check vào Show Versions.
Trong trường hợp upload nhiều objects trùng tên nhau, Sun S3 sẽ thực hiện theo cơ chế object sau ghi đè lên các objects trước và tạo ra nhiều version cho objects đó.
Trường hợp user xóa version trước thì version sau sẽ được đẩy lên là version latest.
Tính năng Versioning trong S3 giúp đảm bảo rằng dữ liệu được lưu trữ an toàn và có thể được phục hồi lại nếu cần thiết.
Note
Sun S3 không tính phí đối với tính năng versioning, tuy nhiên, việc giữ lại các version sẽ chiếm dụng dung lượng pool của bạn, cần cân nhắc khi sử dụng tính năng này.
Version ID¶
Nếu bạn enable tính năng versioning, Sun S3 sẽ tự tạo ra một version ID cho mỗi version của object, version ID là duy nhất.
Version ID là mã hóa Unicode, UTF-8, dài không quá 1.024 byte. Version ID không thể edit.
Ví dụ:
3sL4kqtJlcpXroDTDmJ+rmSpXd3dIbrHY+MTRCxf3vjVBH40Nr8X8gdRQBpUMLUo
Versioning workflows¶
Khi bạn PUT một object vào bucket đã được enable tính năng versioning, version mới sẽ được thêm vào Bucket.
Ví dụ: Object1 có version ID 111111, Object1 có version ID 121212 mới hơn sẽ được thêm vào Bucket và trở thành version hiện tại của object đó.
Khi bạn DELETE
một object, tất cả các version của object đó vẫn được giữ lại, Sun S3 sẽ thêm vào một version được đánh dấu type là Delete Marker và version này sẽ trở thành version hiện tại của object đó.