Halaman ini memberikan panduan tentang cara mengoptimalkan performa di bucket dengan namespace hierarkis yang diaktifkan.
Mencantumkan objek
Berikut adalah pertimbangan performa untuk mencantumkan objek:
- Di bucket dengan namespace hierarkis yang diaktifkan, mencantumkan semua objek untuk seluruh bucket atau dengan awalan memerlukan banyak resource karena operasi harus melintasi setiap folder dan subfolder, mirip dengan perintah
ls -rdalam sistem file. Akibatnya, jika ada lebih banyak folder di bucket Anda, listingan objek akan terjadi lebih lambat. Folder kosong dalam jumlah besar juga dapat berdampak negatif pada performa listingan objek. Agar tidak berdampak negatif pada performa, sebaiknya maksimalkan jumlah objek di setiap folder dan hapus folder kosong secara rutin. - Mencantumkan atau mengambil objek dan subfolder dalam folder tertentu menggunakan
pembatas dan awalan tertentu lebih efisien di bucket dengan
namespace hierarkis yang diaktifkan karena objek disusun dalam struktur
folder. Untuk mengoptimalkan performa listingan saat menggunakan pembatas dan
awalan tertentu, tetapkan parameter
includeFoldersAsPrefixes. Jika tidak, Cloud Storage akan melakukan pemeriksaan tambahan untuk mengecualikan folder kosong, yang dapat memperlambat operasi. Untuk mengetahui informasi selengkapnya tentang penggunaanincludeFoldersAsPrefixessaat mencantumkan objek, lihat Mencantumkan objek.
Pengelolaan folder
Untuk pengelolaan folder yang efisien, sebaiknya lakukan hal berikut:
- Buat struktur folder terlebih dahulu: Alih-alih mengandalkan pembuatan folder otomatis selama operasi upload, penulisan ulang, dan penyusunan objek, gunakan operasi pembuatan folder untuk mendapatkan struktur folder yang diinginkan terlebih dahulu. Membuat struktur folder terlebih dahulu akan meningkatkan konsistensi dan prediktabilitas performa.
- Maksimalkan rasio objek per folder: Upayakan rasio objek terhadap folder yang tinggi karena hal ini mengurangi overhead yang terkait dengan pembuatan dan pengelolaan folder.
- Hapus folder kosong secara rutin: Folder kosong dapat menumpuk, terutama saat menggunakan Object Lifecycle Management atau menghapus objek tanpa menghapus folder induknya secara eksplisit. Folder yang terakumulasi dapat memengaruhi performa operasi listingan objek dan operasi terkait folder lainnya. Berikut adalah beberapa metode yang dapat Anda gunakan untuk menghapus
folder kosong:
- Saat Anda menggunakan Cloud Storage FUSE atau konektor Cloud Storage untuk berinteraksi dengan bucket yang diaktifkan dengan namespace hierarkis, menghapus direktori akan menghapus folder yang sesuai di bucket Anda.
- Anda dapat menggunakan penghapusan rekursif untuk menghapus folder secara otomatis saat menggunakan konsol Google Cloud atau Google Cloud CLI.
- Anda dapat menggunakan skrip
delete_empty_folders.pyuntuk menghapus folder kosong secara berkala menggunakan pemrosesan paralel. Skrip ini menyediakan opsi untuk menargetkan awalan jalur folder tertentu, yang memungkinkan skrip melakukan penghapusan folder pada subset struktur direktori bucket. Selain itu, skrip menghapus semua folder kosong (dibuat secara implisit atau eksplisit) termasuk folder terkelola dan kebijakan IAM terkait. Untuk mengetahui detail tentang cara menggunakan skrip, lihat README di GitHub.