Menghapus versi subjek skema

Dokumen ini menjelaskan cara menghapus versi tertentu dari subjek skema dari registry skema. Ada dua cara untuk menghapus versi subjek:

  • Hapus sementara. Menandai versi sebagai dihapus, tetapi informasinya dipertahankan dan dapat dipulihkan.

  • Hapus permanen. Menghapus versi dan data terkaitnya secara permanen.

Peran dan izin yang diperlukan

Untuk mendapatkan izin yang diperlukan guna menghapus versi subjek skema, minta administrator untuk memberi Anda peran IAM Managed Kafka Schema Registry Editor (roles/managedkafka.schemaRegistryEditor) pada subjek induk. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk menghapus versi subjek skema. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk menghapus versi subjek skema:

  • Berikan izin berikut pada subjek induk: managedkafka.googleapis.com/subjectVersions.delete

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Untuk mengetahui informasi selengkapnya tentang peran bawaan, lihat Peran bawaan Managed Service for Apache Kafka.

Menghapus sementara versi subjek skema

Berikut adalah beberapa praktik terbaik untuk menghapus sementara versi subjek skema:

  • Pastikan tidak ada produsen atau konsumen aktif yang menggunakan versi subjek skema yang ingin Anda hapus.

  • Setelah menghapus versi subjek skema, pantau aplikasi Anda untuk memastikan aplikasi tersebut terus berfungsi seperti yang diharapkan.

  • Penghapusan sementara memungkinkan pemulihan versi subjek skema yang dihapus, yang berguna jika Anda tidak yakin untuk menghapus versi subjek skema.

Untuk menghapus sementara versi subjek skema, ikuti langkah-langkah berikut.

Konsol

  1. Di konsol Google Cloud , buka halaman Schema registries.

    Buka Schema registry

  2. Klik nama schema registry tempat subjek Anda berada.

  3. Di bagian Subjek dalam registry skema ini, klik nama subjek.

  4. Dalam daftar Semua versi, temukan versi yang ingin Anda hapus, lalu klik Tindakan lainnya.

  5. Klik Hapus versi.

  6. Di jendela Hapus versi skema, klik Hapus sementara.

  7. Konfirmasi penghapusan dengan mengetik delete, lalu klik Hapus.

REST

Untuk menghapus sementara versi subjek skema, buat permintaan DELETE ke metode projects.locations.schemaRegistries.subjects.versions.delete.

Permintaan harus diautentikasi dengan token akses di header Authorization. Untuk mendapatkan token akses bagi Kredensial Default Aplikasi saat ini, jalankan perintah berikut: gcloud auth application-default print-access-token.

Untuk menghapus sementara versi subjek skema:

  • Gunakan perintah berikut untuk konteks default:

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects/SUBJECT_ID/versions/VERSION_ID
    Authorization: Bearer $(gcloud auth application-default print-access-token)
    
  • Gunakan perintah berikut untuk konteks tertentu:

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/contexts/CONTEXT_ID/subjects/SUBJECT_ID/versions/VERSION_ID
    Authorization: Bearer $(gcloud auth print-access-token --impersonate-service-account=SERVICE_ACCOUNT)
    

Ganti kode berikut:

  • PROJECT_ID: Google Cloud project ID Anda, misalnya, test-project.
  • LOCATION: region Google Cloud tempat schema registry berada, misalnya, us-central1.
  • REGISTRY_ID: ID schema registry Anda, misalnya, test_registry.
  • CONTEXT_ID: ID konteks Anda, misalnya, test_context.
  • SUBJECT_ID: ID subjek, misalnya, test_subject.
  • VERSION_ID: versi subjek yang akan dihapus, misalnya, 2 atau latest.
  • SERVICE_ACCOUNT: akun layanan, misalnya, test-service-account@test-project.iam.gserviceaccount.com.

Jika permintaan berhasil, API akan menampilkan kode status 200 OK dan isi respons kosong.

Untuk mengetahui informasi selengkapnya, lihat dokumentasi metode projects.locations.schemaRegistries.subjects.versions.delete.

Menghapus paksa versi subjek skema

Berikut adalah beberapa praktik terbaik untuk menghapus paksa versi subjek skema:

  • Pastikan Anda memiliki cadangan atau cara untuk membuat ulang versi subjek skema jika diperlukan.

  • Pastikan tidak ada produsen atau konsumen aktif yang menggunakan versi subjek skema yang ingin Anda hapus.

  • Selalu uji penghapusan versi subjek skema di lingkungan pengembangan atau penyiapan sebelum menerapkan perubahan pada produksi.

  • Setelah menghapus versi subjek skema, pantau aplikasi Anda untuk memastikan aplikasi tersebut terus berfungsi seperti yang diharapkan.

  • Gunakan penghapusan permanen jika Anda perlu menghapus versi subjek skema secara permanen.

Untuk menghapus paksa versi subjek skema, ikuti langkah-langkah berikut.

Konsol

  1. Di konsol Google Cloud , buka halaman Schema registries.

    Buka Schema registry

  2. Klik nama schema registry tempat subjek Anda berada.

  3. Di bagian Subjek dalam registry skema ini, klik nama subjek.

  4. Dalam daftar Semua versi, temukan versi yang ingin Anda hapus, lalu klik Tindakan lainnya.

  5. Klik Hapus versi.

  6. Di jendela Hapus versi skema, klik Hapus permanen.

  7. Konfirmasi penghapusan dengan mengetik delete, lalu klik Hapus. Tindakan ini akan menghapus sementara versi subjek sebelum menghapusnya secara permanen.

REST

Untuk menghapus versi subjek skema secara permanen menggunakan REST API, Anda harus menghapusnya secara sementara terlebih dahulu. Setelah dihapus sementara, Anda dapat melanjutkan penghapusan permanen.

Untuk menghapus versi subjek skema secara permanen, buat permintaan DELETE ke metode projects.locations.schemaRegistries.subjects.versions.delete. Untuk menghapus versi subjek skema secara permanen, sertakan parameter kueri hardDelete=true.

Permintaan harus diautentikasi dengan token akses di header Authorization. Untuk mendapatkan token akses bagi Kredensial Default Aplikasi saat ini, jalankan perintah berikut: gcloud auth application-default print-access-token.

Untuk menghapus versi subjek skema secara permanen:

  • Gunakan perintah berikut untuk konteks default:

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects/SUBJECT_ID/versions/VERSION_ID?hardDelete=true
    Authorization: Bearer $(gcloud auth application-default print-access-token)
    
  • Gunakan perintah berikut untuk konteks tertentu:

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/contexts/CONTEXT_ID/subjects/SUBJECT_ID/versions/VERSION_ID?hardDelete=true
    Authorization: Bearer $(gcloud auth print-access-token --impersonate-service-account=SERVICE_ACCOUNT)
    

Ganti kode berikut:

  • PROJECT_ID: Google Cloud project ID Anda, misalnya, test-project.
  • LOCATION: region Google Cloud tempat schema registry berada, misalnya, us-central1.
  • REGISTRY_ID: ID schema registry Anda, misalnya, test_registry.
  • CONTEXT_ID: ID konteks Anda, misalnya, test_context.
  • SUBJECT_ID: ID subjek, misalnya, test_subject.
  • VERSION_ID: versi subjek yang akan dihapus, misalnya, 2 atau latest.
  • SERVICE_ACCOUNT: akun layanan, misalnya, test-service-account@test-project.iam.gserviceaccount.com.

Jika permintaan berhasil, API akan menampilkan kode status 200 OK dan isi respons kosong.

Untuk mengetahui informasi selengkapnya, lihat dokumentasi metode projects.locations.schemaRegistries.subjects.versions.delete.

Langkah berikutnya

Apache Kafka® adalah merek dagang terdaftar milik The Apache Software Foundation atau afiliasinya di Amerika Serikat dan/atau negara lain.