Saat Anda mengaktifkan versioning untuk bucket, Object Storage Service (OSS) menyimpan objek yang ditimpa atau dihapus sebagai versi sebelumnya. Jika bucket mengumpulkan banyak versi sebelumnya atau delete marker, Anda dapat menggunakan aturan lifecycle untuk menghapusnya secara otomatis, sehingga mengurangi biaya penyimpanan dan meningkatkan kinerja saat menampilkan daftar objek.
Prasyarat
Versioning telah diaktifkan untuk bucket target. Untuk informasi selengkapnya, lihat Aktifkan versioning.
Kasus penggunaan
Pertimbangkan skenario di mana versioning diaktifkan untuk bucket bernama examplebucket. Pengguna mengunggah objek bernama example.txt pada 8 Februari. Kemudian, pengguna menimpa atau menghapus objek tersebut beberapa kali tanpa menentukan ID versi. Untuk setiap operasi, Object Storage Service (OSS) menghasilkan ID versi unik dan menyimpan objek tersebut sebagai versi sebelumnya. ID versi pada gambar berikut disederhanakan untuk keperluan demonstrasi dan tidak merepresentasikan ID versi aktual.
Setelah operasi tersebut, pengguna ingin:
-
Hanya menyimpan versi objek dari tanggal 8 Mei dan 10 September.
-
Memulihkan versi sebelumnya dari 8 Mei menjadi versi saat ini.
Prosedur
-
Simpan versi objek tertentu
Asumsikan tanggal saat ini adalah 10 September. Untuk hanya menyimpan versi objek dari 8 Mei dan 10 September, konfigurasikan aturan lifecycle dengan pengaturan berikut.
-
Masuk ke Konsol OSS.
-
Pada panel navigasi kiri, klik Buckets. Pada halaman Buckets, klik examplebucket.
-
Pada panel navigasi kiri, pilih .
-
Klik Create Rule. Konfigurasikan aturan lifecycle sesuai pengaturan dalam tabel berikut, dan biarkan pengaturan lainnya tetap pada nilai default.
Bagian
Parameter
Deskripsi
Basic Settings
Status
Pilih Enabled.
Applied To
Pilih Whole Bucket.
Policy for Current Versions
Object Lifecycle
Pilih Removal of Delete Marker.
Policy for Previous Versions
Object Lifecycle
Pilih Validity Period (Days).
Lifecycle-based Rules
Atur Modified Time menjadi 90 hari. Objek kedaluwarsa 90 hari setelah menjadi versi sebelumnya dan dihapus pada hari berikutnya.
CatatanDalam contoh ini, objek yang diunggah pada 8 Mei berubah menjadi versi sebelumnya pada 10 September. Karena objek tersebut belum menjadi versi sebelumnya selama 90 hari, objek tersebut tetap disimpan dan tidak dihapus.
Policy for Parts
Part Lifecycle
Pilih Validity Period (Days).
Rules for Parts
Atur nilainya menjadi 90. Part dari tugas multipart upload yang tidak lengkap kedaluwarsa 90 hari setelah dibuat dan dihapus pada hari berikutnya.
-
Klik OK.
-
-
Pulihkan versi objek tertentu
Untuk memulihkan versi sebelumnya dari 8 Mei menjadi versi saat ini, lakukan langkah-langkah berikut:
-
Pada halaman pengelolaan examplebucket, pilih Object Management > Objects.
-
Klik Show di samping Previous Versions.
-
Temukan versi objek example.txt yang terakhir dimodifikasi pada 8 Mei.
-
Pada kolom Actions untuk versi sebelumnya yang dituju, klik Restore.
-
Catatan penggunaan
Saat menggunakan aturan lifecycle untuk mengelola versi objek, perhatikan hal-hal berikut:
-
Kedaluwarsa versi saat ini
-
Untuk bucket dengan versioning yang diaktifkan, jika aturan lifecycle membuat versi saat ini objek kedaluwarsa, OSS tidak menghapus objek tersebut. Sebagai gantinya, OSS menambahkan delete marker sebagai versi saat ini yang baru, dan versi saat ini yang kedaluwarsa menjadi versi sebelumnya.
-
Pada bucket dengan versioning yang ditangguhkan, jika aturan lifecycle membuat versi saat ini objek kedaluwarsa, OSS menambahkan delete marker dengan ID versi null sebagai versi saat ini yang baru. Karena objek hanya dapat memiliki satu versi dengan ID versi null, delete marker baru ini akan menimpa versi yang sudah ada sebelumnya dengan ID versi null.
-
-
Kedaluwarsa versi sebelumnya
Pada bucket dengan versioning yang diaktifkan atau ditangguhkan, ketika aturan lifecycle membuat versi sebelumnya objek kedaluwarsa, OSS menghapus versi tersebut secara permanen. Anda tidak dapat memulihkan versi sebelumnya yang telah dihapus permanen.
Untuk informasi selengkapnya, lihat Aturan lifecycle berdasarkan waktu modifikasi terakhir.
Sumber daya terkait
Anda juga dapat memulihkan objek menggunakan Operasi API. Untuk memulihkan versi sebelumnya objek sebagai versi saat ini, salin versi sebelumnya tersebut ke bucket yang sama. Salinan tersebut akan menjadi versi saat ini yang baru. Untuk informasi selengkapnya, lihat CopyObject.