Registri Skema di Azure Event Hubs

Registri Skema di Azure Event Hubs memberi Anda repositori untuk menggunakan dan mengelola skema dalam skenario streaming peristiwa berbasis skema.

Komponen Registri Skema

Namespace Layanan Azure Event Hubs dapat menghosting grup skema bersama hub peristiwa (atau topik Kafka). Ini meng-host registri skema dan dapat memiliki beberapa kelompok skema. Meskipun dihosting di Azure Event Hubs, registri skema dapat digunakan secara universal dengan semua layanan pesan Azure dan broker pesan atau acara lainnya. Masing-masing kelompok skema ini adalah repositori yang dapat diamankan secara terpisah untuk satu set skema. Grup dapat diselaraskan dengan aplikasi tertentu atau unit organisasi.

Diagram that shows the components of Schema Registry in Azure Event Hubs.

Grup skema

Grup skema adalah kelompok logis skema serupa berdasarkan kriteria bisnis Anda. Grup skema dapat menyimpan beberapa versi skema. Pengaturan penerapan kompatibilitas pada grup skema dapat membantu memastikan bahwa versi skema yang lebih baru kompatibel dengan mundur.

Batas keamanan yang diberlakukan oleh mekanisme pengelompokan membantu memastikan bahwa rahasia dagang tidak secara tidak sengaja bocor melalui metadata dalam situasi di mana namespace dibagikan di antara beberapa mitra. Ini juga memungkinkan pemilik aplikasi untuk mengelola skema independen dari aplikasi lain yang memiliki namespace yang sama.

Skema

Skema mendefinisikan kontrak antara produsen dan konsumen. Skema yang ditentukan dalam registri skema Azure Event Hubs membantu mengelola kontrak di luar data peristiwa, sehingga menghapus kelebihan muatan. Skema memiliki nama, tipe (misalnya: rekam, array, dan sebagainya), mode kompatibilitas (tidak ada, maju, mundur, penuh), dan tipe serialisasi (hanya Avro untuk saat ini). Anda dapat membuat beberapa versi skema dan mengambil serta menggunakan versi skema tertentu.

Format skema

Format skema digunakan untuk menentukan cara di mana skema disusun dan didefinisikan, dengan setiap format menguraikan pedoman dan sintaks tertentu untuk menentukan struktur peristiwa yang akan digunakan untuk streaming peristiwa.

Skema Avro

Avro adalah sistem serialisasi data populer yang menggunakan format biner ringkas dan menyediakan kemampuan evolusi skema.

Untuk mempelajari selengkapnya tentang menggunakan format skema Avro dengan Azure Event Hubs Schema Registry, lihat:

Skema JSON (Pratinjau)

Skema JSON adalah cara standar untuk menentukan struktur dan jenis data peristiwa. Skema JSON memungkinkan penggunaan format data JSON yang percaya diri dan andal dalam streaming peristiwa.

Untuk mempelajari selengkapnya tentang menggunakan format skema JSON dengan Azure Event Hubs Schema Registry, lihat:

Evolusi skema

Skema perlu berkembang dengan persyaratan bisnis produsen dan konsumen. Azure Schema Registry mendukung evolusi skema dengan memperkenalkan mode kompatibilitas di tingkat grup skema. Saat membuat grup skema, Anda dapat menentukan mode kompatibilitas skema yang Anda sertakan dalam grup skema tersebut. Saat Anda memperbarui skema, perubahan harus sesuai dengan mode kompatibilitas yang ditetapkan dan hanya itu yang membuat versi skema baru.

Catatan

Evolusi skema hanya didukung untuk format skema Avro saja.

Azure Schema Registry untuk Azure Event Hubs mendukung mode kompatibilitas berikut.

Kompatibilitas mundur

Mode kompatibilitas mundur memungkinkan kode konsumen untuk menggunakan skema versi baru tetapi dapat memproses pesan dengan skema versi lama. Saat Anda menggunakan mode kompatibilitas mundur dalam grup skema, hal ini memungkinkan perubahan berikut dibuat pada skema.

  • Hapus bidang.
  • Tambahkan bidang opsional.

Meneruskan kompatibilitas

Meneruskan kompatibilitas memungkinkan kode konsumen untuk menggunakan skema versi lama tetapi dapat membaca pesan dengan skema baru. Mode meneruskan kompatibilitas memungkinkan perubahan berikut dibuat pada skema.

  • Tambahkan bidang
  • Hapus bidang opsional

Tidak ada kompatibilitas

Saat mode kompatibilitas None digunakan, registri skema tidak akan memeriksa kompatibilitas apa pun saat Anda memperbarui skema.

SDK Klien

Anda dapat menggunakan salah satu pustaka berikut yang menyertakan serializer Avro, yang dapat Anda gunakan untuk menserialisasikan dan mendeserialisasi payload yang berisi pengidentifikasi skema Schema Registry dan data bersandi Avro.

Batas

Untuk batasan (misalnya: jumlah grup skema di namespace layanan) Azure Event Hubs, lihat Kuota dan batas Azure Event Hubs.

Kontrol akses berbasis peran Azure

Untuk mengakses registri skema secara terprogram, ikuti langkah-langkah berikut:

  1. Mendaftarkan aplikasi Anda di ID Microsoft Entra
  2. Tambahkan prinsip keamanan aplikasi ke salah satu peran kontrol akses berbasis peran Azure (Azure RBAC) berikut di tingkat namespace layanan.
Peran Deskripsi
Pemilik Membaca, menulis, dan menghapus grup dan skema Schema Registry.
Kontributor Membaca, menulis, dan menghapus grup dan skema Schema Registry.
Pembaca Schema Registry Membaca dan membuat daftar grup dan skema Schema Registry.
Kontributor Schema Registry Membaca, menulis, dan menghapus grup dan skema Schema Registry.

Untuk instruksi tentang membuat pendaftaran aplikasi menggunakan portal Azure, lihat Mendaftarkan aplikasi dengan ID Microsoft Entra. Catat ID klien (ID aplikasi), ID penyewa, dan rahasia yang akan digunakan dalam kode.

Langkah berikutnya