Halaman ini membahas upload multibagian XML API di Cloud Storage. Metode upload ini mengupload file dalam beberapa bagian, lalu menyusunnya menjadi satu objek menggunakan permintaan akhir. Upload multibagian XML API kompatibel dengan upload multibagian Amazon S3.
Ringkasan
Upload multibagian XML API memungkinkan Anda mengupload data dalam beberapa bagian, lalu menyusunnya menjadi objek akhir. Perilaku ini memiliki beberapa keuntungan, terutama untuk file berukuran besar:
Anda dapat mengupload beberapa bagian secara bersamaan, sehingga mengurangi waktu yang diperlukan untuk mengupload data secara keseluruhan.
Jika salah satu operasi upload gagal, Anda hanya perlu mengupload ulang sebagian dari keseluruhan objek, tidak perlu memulai ulang dari awal.
Karena total ukuran file tidak ditentukan di awal, Anda dapat menggunakan upload multibagian XML API untuk upload streaming atau untuk mengompresi data dengan cepat saat mengupload.
Upload multibagian XML API memiliki tiga langkah yang diperlukan:
Mulai upload menggunakan permintaan
POST
, yang mencakup penentuan metadata apa pun yang seharusnya dimiliki objek yang sudah selesai. Respons akan menampilkanUploadId
yang Anda gunakan di semua permintaan berikutnya yang terkait dengan upload.Upload data menggunakan satu atau beberapa permintaan
PUT
.Selesaikan upload menggunakan permintaan
POST
. Permintaan ini akan menimpa objek apa pun yang ada di bucket dengan nama yang sama.
Tidak ada batasan durasi upload multibagian dan bagian yang diuploadnya tetap dalam status tidak selesai atau tidak ada aktivitas dalam bucket.
- Bagian yang berhasil diupload akan mengurangi penggunaan penyimpanan bulanan Anda.
- Anda dapat menghindari penumpukan upload multibagian yang diabaikan menggunakan Object Lifecycle Management untuk secara otomatis menghapus upload multibagian saat mencapai usia tertentu.
Pertimbangan
Batasan berikut berlaku untuk penggunaan upload multibagian XML API:
- Ada batas ukuran minimum suatu bagian, ukuran maksimum suatu bagian, dan jumlah bagian yang digunakan untuk menyusun upload yang selesai.
- Prasyarat tidak didukung dalam permintaan.
- Hash MD5 tidak ada untuk objek yang diupload menggunakan metode ini.
- Metode upload ini tidak didukung di konsol Google Cloud atau Google Cloud CLI.
Perhatikan hal berikut saat menggunakan upload multibagian XML API:
Upload multibagian XML API memiliki izin IAM tertentu. Jika menggunakan peran IAM kustom, Anda harus memastikan peran tersebut memiliki izin yang Anda perlukan.
Meskipun Anda dapat memulai upload dan bagian upload, permintaan untuk menyelesaikan upload akan gagal jika proses tersebut menimpa objek yang memiliki status pembekuan atau periode retensi data yang tidak terpenuhi
Anda dapat mencantumkan upload yang sedang berlangsung di dalam bucket, tetapi hanya upload yang telah selesai yang akan muncul dalam daftar objek normal dalam bucket.
Bagian yang diupload dapat dikenai biaya penghapusan awal jika tidak pernah digunakan.
Cara library klien menggunakan upload multibagian XML API
Bagian ini memberikan informasi tentang cara melakukan upload multibagian XML API dengan library klien yang mendukungnya.
Library klien
Java
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Java API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Library klien Java tidak mendukung upload multibagian XML API. Sebagai gantinya, gunakan upload gabungan paralel.
Node.js
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Node.js API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Anda dapat melakukan upload multibagian XML API menggunakan metode
uploadFileInChunks
. Contoh:
Python
Untuk mengetahui informasi selengkapnya, lihatDokumentasi referensi Cloud Storage Python API.
Untuk melakukan autentikasi ke Cloud Storage, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Anda dapat melakukan upload multibagian XML API menggunakan metode
upload_chunks_concurrently
. Contoh:
Langkah selanjutnya
- Pelajari metode upload tambahan untuk Cloud Storage.
- Pelajari backoff eksponensial terpotong dan waktu untuk mencoba ulang permintaan.