Memindahkan data antar-bucket

Anda dapat menyalin objek antar-bucket Cloud Storage saat ingin mengatur ulang tata letak penyimpanan atau mengatasi properti bucket yang tidak dapat diubah. Misalnya, Anda dapat menyalin objek ke bucket baru untuk mengubah nama bucket atau mentransfer workload antar-project. Untuk menyelesaikan pemindahan, Anda menyalin objek dari bucket sumber ke bucket tujuan, lalu menghapus objek asli.

Jika sasaran utama Anda adalah menyimpan data di lokasi geografis yang berbeda, pertimbangkan untuk menggunakan relokasi bucket.

Ringkasan

Saat membuat bucket, beberapa properti yang Anda tetapkan bersifat permanen dan tidak dapat diubah, termasuk nama bucket dan project induknya.

Jika ingin menggunakan nama baru untuk bucket, Anda dapat secara efektif melakukannya dengan membuat bucket baru dengan nama yang ingin digunakan, lalu menyalin objek dari bucket lama ke bucket baru. Kemudian, Anda dapat menghapus bucket lama. Perhatikan hal berikut:

  • Saat Anda menghapus bucket, nama bucket dapat digunakan kembali.

  • Jika sasaran utama Anda memindahkan objek dari satu bucket ke bucket lain adalah untuk menyimpan data di lokasi bucket yang berbeda, sebaiknya pindahkan bucket Anda secara langsung.

Izin yang diperlukan

Konsol

Untuk menyelesaikan panduan ini menggunakan konsolGoogle Cloud , Anda harus memiliki izin IAM yang sesuai. Jika bucket yang ingin Anda akses ada di project yang tidak Anda buat, pemilik project harus memberi Anda peran yang berisi izin yang diperlukan.

Untuk mengetahui daftar izin yang diperlukan untuk tindakan tertentu, lihat Izin IAM untuk konsol Google Cloud .

Untuk daftar peran yang relevan, lihat peran Cloud Storage. Atau, Anda dapat membuat peran khusus yang memiliki izin tertentu dan terbatas.

Command line

Untuk menyelesaikan panduan ini menggunakan utilitas command line, Anda harus memiliki izin IAM yang sesuai. Jika bucket yang ingin Anda akses ada di project yang tidak Anda buat, pemilik project harus memberi Anda peran yang berisi izin yang diperlukan.

Untuk mengetahui daftar izin yang diperlukan untuk tindakan tertentu, lihat Izin IAM untuk perintah gcloud storage.

Untuk daftar peran yang relevan, lihat peran Cloud Storage. Atau, Anda dapat membuat peran khusus yang memiliki izin tertentu dan terbatas.

REST API

JSON API

Untuk menyelesaikan panduan ini menggunakan JSON API, Anda harus memiliki izin IAM yang sesuai. Jika bucket yang ingin Anda akses ada di project yang tidak Anda buat, pemilik project harus memberi Anda peran yang berisi izin yang diperlukan.

Untuk mengetahui daftar izin yang diperlukan untuk tindakan tertentu, lihat izin IAM untuk metode JSON.

Untuk daftar peran yang relevan, lihat peran Cloud Storage. Atau, Anda dapat membuat peran khusus yang memiliki izin tertentu dan terbatas.

Memindahkan data dari satu bucket ke bucket lain

Konsol

  1. Jika Anda belum memiliki bucket tujuan, buat bucket.

  2. Salin setiap objek dari bucket sumber ke bucket tujuan.

  3. Hapus bucket sumber dan kontennya.

Command line

  1. Jika Anda belum memilikinya, buat bucket tujuan.

  2. Untuk menyalin konten bucket sumber ke bucket tujuan secara berulang, gunakan perintah gcloud storage cp dengan opsi --recursive:

    gcloud storage cp --recursive gs://SOURCE_BUCKET/* gs://DESTINATION_BUCKET

    Dengan:

    • SOURCE_BUCKET adalah nama bucket asli Anda. Contoh, old-bucket.

    • DESTINATION_BUCKET adalah nama bucket tempat Anda memindahkan data. Contoh, my-bucket.

    Jika bucket Anda menggunakan folder terkelola dan namespace datar, Anda harus menyertakan flag --include-managed-folders dalam perintah agar folder terkelola dapat disalin.

  3. Untuk menghapus konten dari bucket sumber secara berulang, beserta bucket sumber itu sendiri, gunakan perintah gcloud storage rm dengan opsi --recursive:

    gcloud storage rm --recursive gs://SOURCE_BUCKET

    Dengan SOURCE_BUCKET adalah nama bucket asli Anda. Contoh, old-bucket.

    Atau, untuk menghapus konten dari bucket sumber tanpa menghapus bucket sumber itu sendiri, gunakan perintah gcloud storage rm dengan flag --all-versions dan karakter pengganti **:

    gcloud storage rm --all-versions gs://SOURCE_BUCKET/**

    Dengan SOURCE_BUCKET adalah nama bucket asli Anda. Contoh, old-bucket.

REST API

JSON API

  1. Jika Anda belum memiliki bucket tujuan, buat bucket.

  2. Salin setiap objek dari bucket sumber ke bucket tujuan.

  3. Hapus setiap objek di bucket sumber Anda.

  4. Hapus bucket sumber Anda.

XML API

  1. Jika Anda belum memiliki bucket tujuan, buat bucket.

  2. Salin setiap objek dari bucket sumber ke bucket tujuan.

  3. Hapus setiap objek di bucket sumber Anda.

  4. Hapus bucket sumber Anda.

Langkah berikutnya