Bucket Cepat

Halaman ini menjelaskan Rapid Bucket, kemampuan yang memungkinkan Anda menyimpan objek di kelas penyimpanan Rapid dengan menetapkan zona sebagai lokasi bucket. Pendekatan ini memungkinkan Anda menempatkan penyimpanan data bersama dengan resource komputasi, yang memberikan latensi yang jauh lebih rendah dan throughput yang lebih tinggi dibandingkan dengan kelas penyimpanan lainnya di Cloud Storage. Beban kerja di zona dan region lain juga dapat mengakses bucket, dengan performa yang relatif terhadap jarak jaringan.

Untuk membuat bucket zonal menggunakan Rapid Bucket, lihat Membuat bucket zonal. Anda dapat melihat daftar lokasi yang didukung di Zona. Untuk membaca dan menambahkan ke objek di bucket zonal, lihat menggunakan objek di bucket zonal.

Manfaat

Rapid Bucket dibuat untuk menghilangkan hambatan penyimpanan dan ideal untuk digunakan bagi aplikasi Anda yang paling intensif data, seperti AI/ML dan analisis data. Rapid Bucket mendukung latensi sub-milidetik, throughput gabungan hingga 15 TB/dtk, dan 20 juta kueri per detik (QPS). Latensi ultra-rendah memungkinkan pengambilan data instan dan memungkinkan aplikasi inferensi real-time untuk beroperasi dalam skala besar. Throughput yang besar dan QPS yang tinggi membantu menjaga cluster GPU mahal Anda tetap sepenuhnya jenuh, sehingga mengurangi waktu pelatihan model secara drastis.

Istilah Rapid Bucket

Dokumentasi Cloud Storage menggunakan istilah berikut:

  • Rapid Bucket: Produk yang memungkinkan bucket dibuat dengan lokasi zonal dan kelas penyimpanan Rapid.

  • Rapid storage: Kelas penyimpanan yang menawarkan akses data tertinggi dan performa operasi I/O di Cloud Storage. Saat menggunakan Rapid Bucket, Anda membuat bucket yang menggunakan Rapid storage. Untuk mengetahui informasi selengkapnya tentang Rapid storage, lihat Kelas penyimpanan.

  • Bucket zonal: Bucket yang berlokasi di zona. Objek di bucket zonal selalu disimpan di Rapid storage dan dapat ditambahkan.

Kemampuan bucket zonal

Selain memberikan latensi rendah dan throughput tinggi, bucket zonal memungkinkan Anda melakukan hal berikut:

  • Menambahkan ke objek di bucket zonal tanpa melakukan penulisan ulang objek penuh

  • Membuka objek dan mempertahankan aliran saat Anda melakukan operasi, sehingga Anda dapat mempercepat pembacaan dan penulisan berikutnya

Kasus penggunaan

Rapid Bucket paling cocok untuk beban kerja AI/ML atau beban kerja intensif data lainnya. Beberapa contoh beban kerja tersebut adalah checkpointing, evaluasi, dan penayangan model, serta antrean logging dan pesan. Fitur ini juga dapat digunakan untuk streaming data atau menyediakan penyimpanan untuk database.

Untuk memanfaatkan sepenuhnya latensi rendah dan throughput tinggi yang disediakan oleh Rapid Bucket, pastikan untuk mengaktifkan konektivitas langsung gRPC.

Akses ke objek di bucket zonal

Untuk mendapatkan manfaat performa bucket zonal, pastikan untuk membuka objek untuk streaming dan mempertahankan aliran saat Anda melakukan operasi pada objek. Saat membuat dan mempertahankan aliran, Anda dapat melakukan operasi baca atau tulis berikutnya ke objek dengan latensi yang sangat rendah. Misalnya, saat membaca file Parquet, Anda dapat melakukan pembacaan awal metadata file (footer) dan pembacaan berikutnya dari baris tertentu dalam satu permintaan. Pendekatan ini lebih efisien daripada menggunakan permintaan terpisah untuk setiap langkah.

Setelah dibuat, aliran objek akan tetap terbuka secara default saat Anda mengakses objek bucket zonal menggunakan Cloud Storage FUSE atau library klien Cloud Storage.

Anda dapat membuka beberapa aliran baca ke objek dari sejumlah host. Tidak ada batasan jumlah aliran baca yang dapat Anda buat ke objek.

Menambahkan objek

Anda dapat menambahkan data ke objek di bucket zonal. Saat Anda menambahkan ke objek, semantik berikut akan berlaku:

  • Objek yang dapat ditambahkan akan muncul di namespace bucket segera setelah Anda mulai menulis ke objek tersebut dan dapat dibaca saat masih ditulis.

  • Tidak ada batasan jumlah penambahan yang dapat Anda lakukan ke objek atau jumlah byte yang dapat Anda tambahkan dalam satu waktu. Anda dapat menambahkan hingga objek mencapai ukuran maksimum 5 TiB.

  • Ukuran objek akan bertambah secara real-time saat penambahan baru ditulis atau di-flush secara permanen. Saat membuat aliran baca, Anda harus mengantisipasi penundaan minimal dalam ukuran objek yang diperbarui.

  • Objek yang dapat ditambahkan hanya dapat memiliki satu penulis dalam satu waktu. Jika aliran tulis baru dibuat untuk objek yang sudah memiliki aliran tulis yang ada, error akan ditampilkan dari Cloud Storage ke aliran asli, dan aliran asli tidak akan diizinkan lagi untuk menulis. Penulis baru dapat melanjutkan penambahan dari offset terakhir yang dipertahankan tanpa penambahan yang disisipkan lainnya ke objek.

Menyelesaikan objek

Setelah objek diselesaikan, Anda tidak dapat lagi menambahkan ke objek tersebut, tetapi Anda masih dapat menimpa objek dengan versi baru. Metadata objek yang diselesaikan masih dapat diubah; misalnya, tag baru dapat ditambahkan dan objek dapat diganti namanya.

Memasang bucket zonal

Anda dapat memasang dan mengakses bucket zonal menggunakan Cloud Storage FUSE atau driver CSI Cloud Storage FUSE. Pastikan untuk menggunakan Cloud Storage FUSE versi 3.7.2 atau yang lebih baru. Untuk menggunakan driver CSI Cloud Storage FUSE, pastikan versi Google Kubernetes Engine Anda adalah 1.35.0-gke.3047001 atau yang lebih baru.

Harga

Penggunaan Rapid Bucket dikenai biaya untuk penyimpanan data, operasi, dan jaringan. Untuk mengetahui informasi selengkapnya, lihat Harga.

Batasan

  • Bucket zonal harus mengaktifkan namespace hierarkis dan akses level bucket yang seragam.

  • Batasan Google Cloud CLI:

    • Versi Google Cloud CLI minimum yang didukung: Versi minimum gcloud CLI yang mendukung bucket zonal adalah 553.0.0. Versi sebelumnya tidak kompatibel dengan bucket zonal. Sebaiknya gunakan gcloud CLI versi terbaru untuk mendapatkan fitur dan perbaikan bug terbaru.

    • Visibilitas upload yang tidak lengkap: Tidak seperti bucket di kelas penyimpanan lainnya, tempat objek hanya muncul di namespace setelah upload selesai, objek yang diupload sebagian di bucket zonal akan segera terlihat. Jika perintah upload Google Cloud CLI gagal atau terganggu, Anda mungkin melihat objek yang tidak lengkap di bucket. Anda masih dapat melanjutkan upload ini dengan menjalankan kembali perintah.

    • Penimpaan objek: Perilaku Google Cloud CLI standar berlaku untuk bucket zonal: saat Anda menimpa objek, jika file atau objek dengan nama yang sama ada di tujuan, perintah Google Cloud CLI cp, mv, dan rsync akan menimpanya secara default. Untuk mencegah penimpaan, gunakan flag --no-clobber. Saat menggunakan Google Cloud CLI, penambahan data ke objek yang ada tidak didukung; seluruh sumber harus diupload ulang.

    • Penyelesaian objek: Objek yang diupload ke bucket zonal menggunakan Google Cloud CLI mungkin sesekali mengalami penundaan singkat sebelum metadata objek disinkronkan sepenuhnya. Karena Cloud Storage menggunakan model yang pada akhirnya konsisten, mencoba mendownload objek segera setelah upload dapat menyebabkan error ketidakcocokan hash jika metadata belum diperbarui.

      Jika download gagal dengan error ketidakcocokan hash segera setelah upload, coba lagi perintahnya. Sistem memastikan bahwa download berhasil sepenuhnya atau gagal secara eksplisit; download sebagian atau rusak tidak akan terjadi secara diam-diam.

    • Performa validasi checksum: Bucket zonal hanya mengandalkan CRC32C untuk validasi data, sehingga sistem dapat melakukan checksum per bagian dan untuk seluruh upload atau download. Secara default, Google Cloud CLI menggunakan library Python google-crc32c, yang sudah diinstal sebelumnya dengan Google Cloud CLI. Namun, jika Anda menggunakan instalasi Python yang tidak dibundel, Anda harus menginstal library google-crc32c secara eksplisit dari PyPI. Jika tidak, Google Cloud CLI akan kembali ke program biner gcloud-crc32c, yang dapat menyebabkan performa yang lebih lambat untuk komputasi CRC per bagian.

Ketidaksesuaian

Bucket zonal tidak kompatibel dengan alat, produk, dan layanan berikut:

  • Alat

    • API library klien yang menulis ke bucket standar non-zonal. Jika Anda berencana menggunakan library klien untuk menulis ke bucket zonal, Anda harus mengubah kode untuk menggunakan API yang didukung. Untuk mempelajari API mana yang didukung, lihat contoh kode untuk library klien Anda di Menggunakan objek di bucket zonal.

    • Penulisan menggunakan gRPC yang bukan BidiWriteObject. Objek yang dapat ditambahkan hanya mendukung panggilan RPC BidiWriteObject dalam mode yang dapat ditambahkan. Metode tulis gRPC lainnya (seperti penulisan satu kali atau yang dapat dilanjutkan) dan panggilan RPC lainnya (seperti WriteObject) tidak didukung.

    • Penulisan menggunakan JSON API

    • Upload multibagian XML API

  • Perlindungan data dan pemulihan dari bencana

    • Pembuatan Versi Objek

    • Hapus untuk sementara

    • Replikasi lintas bucket

  • Pengelolaan data

    • Rapid Cache

    • Autoclass

    • Kunci Bucket

    • Menyusun objek

    • Penangguhan objek

    • Tindakan SetStorageClass Object Lifecycle Management

    • Kunci Retensi Objek

    • Memindahkan bucket

    • Upload yang dapat dilanjutkan

    • Menulis ulang objek

    • Pemohon Membayar

  • Kontrol akses

    • Daftar kontrol akses (ACL) level objek

    • Konfigurasi CORS

    • Kunci enkripsi yang disediakan pelanggan (CSEK)

    • Kunci HMAC

  • Metadata

    • Objek di bucket zonal tidak memiliki hash MD5.

    • Properti metadata yang terkait dengan fitur dan produk yang tidak didukung tidak muncul dalam representasi resource bucket zonal atau objek yang dapat ditambahkan, atau tidak dapat ditulis. Contoh:

      • Properti metadata softDeleteTime dan hardDeleteTime tidak muncul dalam representasi resource Objects resource karena penghapusan sementara tidak didukung untuk objek di bucket zonal.

      • Metadata storageClass objek di bucket zonal selalu memiliki nilai RAPID dan tidak dapat ditulis ulang karena bucket zonal harus selalu menggunakan kelas penyimpanan Rapid.

  • Layanan

    • BigQuery

Kuota

Setiap zona per project memiliki kuota kapasitas penyimpanan default. Setiap zona per project juga memiliki kuota keluar default dari Cloud Storage ke Google layanan. Untuk melihat kuota ini, lihat Kuota dan batas.

Untuk mempelajari cara memantau penggunaan keluar data dan meminta lebih banyak bandwidth, lihat Pemantauan penggunaan bandwidth.

Praktik terbaik

Untuk membantu mengoptimalkan performa saat menggunakan bucket zonal dengan Cloud Storage FUSE, pertahankan handle file terbuka ke objek yang dipasang dan gunakan untuk beberapa operasi. Hal ini menghasilkan performa yang lebih baik karena memungkinkan Cloud Storage FUSE menghindari melakukan perjalanan pulang pergi jaringan yang tidak perlu per pembacaan berulang.

Langkah berikutnya