Tạo Phiên bản(Versioning) là một phương tiện lưu giữ nhiều dạng của một đối tượng trong cùng một nhóm(or thùng chứa) S3(S3 bucket). Lập phiên bản có thể được sử dụng để truy xuất, bảo quản và khôi phục mọi phiên bản của một đối tượng trong nhóm S3.

Ví dụ: nhóm bao gồm hai đối tượng có cùng khóa nhưng có ID phiên bản khác nhau, chẳng hạn như photo.jpg (ID phiên bản là 11) và photo.jpg (ID phiên bản là 12).

Nhóm(bucket) hỗ trợ tạo phiên bản cho phép bạn khôi phục các đối tượng từ việc xóa hoặc ghi đè. Nó phục vụ hai mục đích:

  • Nếu bạn xóa một đối tượng, thay vì xóa vĩnh viễn đối tượng, nó sẽ tạo một điểm đánh dấu xóa trở thành phiên bản hiện tại của một đối tượng.
  • Nếu bạn ghi đè một đối tượng, nó sẽ tạo ra một phiên bản mới của đối tượng và cũng khôi phục phiên bản trước đó của đối tượng.

Lưu ý: Sau khi bạn bật lập phiên bản của một nhóm(bucket), thì bạn không thể tắt nó. Bạn có thể tạm dừng phiên bản.

Trạng thái lập phiên bản có thể được áp dụng cho tất cả các đối tượng trong một nhóm. Khi trạng thái lập phiên bản được bật, tất cả các đối tượng trong một nhóm sẽ vẫn được tạo phiên bản và chúng được cung cấp ID phiên bản duy nhất. Sau đây là những điểm quan trọng:

  • Nếu trạng thái lập phiên bản không được bật, thì ID phiên bản của các đối tượng được đặt thành null. Khi không kích hoạt lập phiên bản, các đối tượng hiện có không bị thay đổi hoặc không bị ảnh hưởng.
  • Chủ sở hữu nhóm có thể tạm ngừng lập phiên bản để dừng các phiên bản đối tượng. Khi bạn tạm ngừng lập phiên bản, các đối tượng hiện có sẽ không bị ảnh hưởng.

Hãy hiểu khái niệm về lập phiên bản thông qua một ví dụ.

  • Đăng nhập vào Bảng điều khiển quản lý AWS(AWS Management Console).
  • Di chuyển đến các dịch vụ S3.
  • Hãy nhấp vào “Tạo nhóm(Create bucket)” để tạo một nhóm mới.
  • Nhập tên nhóm phải là duy nhất.
  • Bấm vào nút “create” .

Trong màn hình trên, chúng ta quan sát thấy nhóm “jtpbucket” được tạo với cài đặt mặc định, tức là nhóm và các đối tượng không được công khai.

  • Bây giờ, ta muốn xem một số đối tượng trong một nhóm; chúng ta cần công khai một nhóm. Di chuyển đến ” Chỉnh sửa cài đặt truy cập công cộng(Edit public access settings)”, bỏ chọn tất cả các cài đặt, sau đó lưu cài đặt.
  • Sau khi lưu cài đặt, màn hình xuất hiện như hình dưới đây:

Nhập “xác nhận(confirm)” vào hộp văn bản để xác nhận cài đặt. Bấm vào nút “xác nhận(confirm)” .

  • Khi các cài đặt được xác nhận, màn hình sẽ xuất hiện như hình dưới đây:

Màn hình trên cho thấy rằng các đối tượng trong một nhóm đã trở thành công khai.

  • Bây giờ, chúng ta thêm phiên bản vào nhóm của chúng ta. Di chuyển đến thuộc tính của một nhóm, tức là jtpbucket và nhấp vào lập phiên bản.
  • Khi nhấp vào phiên bản(versioning), màn hình xuất hiện như hình dưới đây:

Chúng ta có thể kích hoạt hoặc tạm dừng phiên bản. Giả sử chúng ta bật lập phiên bản và lưu cài đặt này, điều này sẽ thêm lập phiên bản vào nhóm của chúng ta.

  • Bây giờ chúng ta tải các tệp lên nhóm của chúng ta.
  • Bây giờ, chúng ta nhấp vào “Thêm tệp(Add files)” để thêm tệp vào nhóm của chúng ta. Khi một tệp được tải lên, màn hình xuất hiện như hình dưới đây:

Trong màn hình trên, chúng ta thấy rằng tệp version.txt đã được tải lên.

  • Để chạy tệp version.txt , chúng ta phải đặt nó ở chế độ công khai từ menu thả xuống Tác vụ(Actions).
  • Khi một tệp được công khai, chúng ta có thể chạy tệp bằng cách nhấp vào URL đối tượng của nó. Khi nhấp vào URL đối tượng, màn hình xuất hiện như hình dưới đây:
  • Bây giờ, chúng ta tạo phiên bản thứ hai của tệp. Giả sử ta thay đổi nội dung của tệp và tải lên lại, thì nó sẽ trở thành phiên bản thứ hai của tệp.

Trong màn hình trên, chúng ta thay đổi nội dung từ “phiên bản 1” thành “phiên bản 2” và sau đó lưu tệp.

  • Bây giờ, chúng ta tải tệp ở trên lên nhóm của chúng ta.
  • Sau khi tải tệp lên, hai phiên bản của tệp sẽ được tạo.

Từ màn hình trên, chúng ta quan sát thấy rằng chúng ta có thể ẩn hoặc hiện các phiên bản.

  • Khi chúng ta nhấp vào “hiển thị(show)”, chúng ta có thể xem tất cả các phiên bản của một tệp.

Từ màn hình trên, chúng ta có thể thấy cả phiên bản của tệp và tệp hiện đang tải lên đều trở thành phiên bản mới nhất. Cả hai tệp đều có cùng kích thước, tức là 18.0 B và lớp lưu trữ, tức là Chuẩn.

  • Để chạy tệp version.txt , chúng ta phải đặt nó ở chế độ công khai từ menu thả xuống Tác vụ .
  • Bây giờ, hãy chuyển đến thuộc tính của tệp và nhấp vào URL đối tượng.

Nhấp vào URL đối tượng.

  • Khi nhấp vào URL đối tượng, chúng ta có thể thấy đầu ra, tức là nội dung của tệp hiện đang được tải lên.
  • Bây giờ, chúng ta xóa một đối tượng. Di chuyển đến menu thả xuống Tác vụ và nhấp vào Xóa.
  • Khi xóa đối tượng, màn hình xuất hiện như hình dưới đây:

Chúng ta quan sát rằng cái xô trở nên trống rỗng.

  • Tuy nhiên, khi nhấp vào Hiển thị(Show) Phiên bản, chúng ta có thể thấy tất cả các phiên bản của tệp, tức là Xóa điểm đánh dấu và hai phiên bản khác của tệp.

Chúng ta quan sát từ màn hình trên rằng đối tượng không bị xóa vĩnh viễn; nó đã được khôi phục. Do đó, khái niệm lập phiên bản được sử dụng để khôi phục các đối tượng.

  • Nếu bạn muốn khôi phục đối tượng, hãy xóa “điểm đánh dấu xóa” bằng cách nhấp vào menu thả xuống Hành động và nhấp vào Xóa(Delete).
  • Nhấp vào “Ẩn(Hide)” Phiên bản, chúng ta sẽ thấy rằng tập tin đã được khôi phục.

Những điểm quan trọng cần ghi nhớ khi tạo phiên bản: 

  • Nó lưu trữ tất cả các phiên bản của một đối tượng (bao gồm tất cả các lần ghi và ngay cả khi bạn xóa một đối tượng).
  • Nó là một công cụ sao lưu tuyệt vời.
  • Sau khi kích hoạt phiên bản, nó không thể bị vô hiệu hóa, chỉ bị tạm ngưng.
  • Nó được tích hợp với các quy tắc vòng đời.
  • Khả năng Xóa MFA của phiên bản sử dụng xác thực đa yếu tố có thể được sử dụng để cung cấp lớp bảo mật bổ sung.

Cài ứng dụng cafedev để dễ dàng cập nhật tin và học lập trình mọi lúc mọi nơi tại đây.

Tài liệu từ cafedev:

Nếu bạn thấy hay và hữu ích, bạn có thể tham gia các kênh sau của cafedev để nhận được nhiều hơn nữa:

Chào thân ái và quyết thắng!

Đăng ký kênh youtube để ủng hộ Cafedev nha các bạn, Thanks you!