Menggunakan Cloud Storage sebagai sistem file yang terpasang

Cloud Storage FUSE memungkinkan Anda memuat data pelatihan ke bucket Cloud Storage dan mengakses data tersebut dari tugas pelatihan kustom Anda seperti sistem file yang terpasang. Menggunakan Cloud Storage FUSE memiliki manfaat berikut:

  • Data pelatihan di-streaming ke tugas pelatihan Anda, bukan didownload ke replika, yang dapat mempercepat pemuatan data dan tugas penyiapan saat tugas mulai berjalan.
  • Tugas pelatihan dapat menangani input dan output dalam skala besar tanpa melakukan panggilan API, menangani respons, atau mengintegrasikan dengan library sisi klien.
  • Cloud Storage FUSE menyediakan throughput tinggi untuk pembacaan berurutan file besar dan dalam skenario pelatihan terdistribusi.

Kasus penggunaan

Sebaiknya gunakan Cloud Storage untuk menyimpan data pelatihan dalam situasi berikut:

  • Data pelatihan Anda adalah data tidak terstruktur, seperti gambar, teks, dan video.
  • Data pelatihan Anda adalah data terstruktur dalam format seperti TFRecord.
  • Data pelatihan Anda berisi file besar, seperti video mentah.
  • Anda menggunakan pelatihan terdistribusi.

Cara kerjanya

Tugas pelatihan kustom dapat mengakses bucket Cloud Storage Anda sebagai subdirektori dari direktori /gcs root. Misalnya, jika data pelatihan Anda berada di gs://example-bucket/data.csv, Anda dapat membaca dan menulis ke bucket dari aplikasi pelatihan Python Anda sebagai berikut:

Membacakan ke bucket

with open('/gcs/example-bucket/data.csv', 'r') as f:
  lines = f.readlines()

Menuliskan ke bucket

with open('/gcs/example-bucket/epoch3.log', 'a') as f:
  f.write('success!\n')

Izin akses bucket

Secara default, tugas pelatihan kustom dapat mengakses bucket Cloud Storage apa pun dalam project Google Cloud yang sama menggunakan Agen Layanan Kode Kustom Vertex AI. Untuk mengontrol akses ke bucket, Anda dapat menetapkan akun layanan kustom ke tugas. Dalam hal ini, akses ke bucket Cloud Storage diberikan berdasarkan izin yang terkait dengan peran Cloud Storage dari akun layanan khusus.

Misalnya, jika Anda ingin memberikan akses baca dan tulis tugas pelatihan kustom ke Bucket-A tetapi hanya memberikan akses baca ke Bucket-B, Anda dapat menetapkan akun layanan khusus yang memiliki peran berikut ke tugas tersebut:

  • roles/storage.objectAdmin untuk Bucket-A
  • roles/storage.objectViewer untuk Bucket-B

Jika tugas pelatihan mencoba menulis ke Bucket-B, error "izin ditolak" akan ditampilkan.

Untuk mengetahui informasi lebih lanjut tentang peran Cloud Storage, lihat Peran IAM untuk Cloud Storage.

Praktik terbaik

  • Hindari mengganti nama direktori. Operasi penggantian nama tidak bersifat atomik di Cloud Storage FUSE. Jika operasi terganggu, beberapa file akan tetap berada di direktori lama.
  • Hindari tindakan yang tidak perlu seperti menutup (close()) atau mengosongkan file (flush()). Menutup atau mengosongkan file akan mengirim file ke Cloud Storage, yang akan menimbulkan biaya.

Panduan pengoptimalan performa

Untuk mendapatkan throughput baca yang optimal saat menggunakan Cloud Storage sebagai sistem file, sebaiknya terapkan pedoman berikut:

  • Untuk mengurangi latensi yang ditimbulkan dengan mencari dan membuka objek di bucket, simpan data dalam file yang lebih besar dan lebih sedikit.
  • Gunakan pelatihan terdistribusi untuk memaksimalkan penggunaan bandwidth.
  • Simpan file yang sering diakses ke dalam cache untuk meningkatkan performa baca. Untuk mengetahui detailnya, lihat Ringkasan penyimpanan dalam cache di Cloud Storage FUSE.
  • Gunakan penyimpanan lokal untuk checkpointing dan log, bukan Cloud Storage.

Batasan

Untuk mempelajari batasan Cloud Storage FUSE, termasuk perbedaan antara sistem file Cloud Storage FUSE dan POSIX, lihat Batasan dan perbedaan dari sistem file POSIX.

Menggunakan Cloud Storage FUSE

Untuk menggunakan Cloud Storage FUSE untuk pelatihan kustom, lakukan hal berikut:

  1. Buat bucket Cloud Storage. Perhatikan bahwa bucket region ganda dan multi-region tidak didukung untuk pelatihan kustom.
  2. Upload data pelatihan Anda ke bucket. Untuk mengetahui detailnya, lihat Upload.

    Untuk mempelajari opsi lain untuk mentransfer data ke Cloud Storage, lihat Opsi transfer data.

  3. Instal Cloud Storage FUSE.

  4. Pasang bucket di aplikasi pelatihan Anda.

Langkah selanjutnya