Când producătorii trimit JSON arbitrar, o simplă redenumire de câmp poate bloca toți consumatorii din producție. Schema Registry acționează ca un server centralizat de guvernanță: producătorii înregistrează o schemă Apache Avro sau Protobuf, iar mesajele trimise în Kafka includ doar un identificator numeric de 4 octeți (schema ID) în loc de întreaga definiție a câmpurilor, reducând masiv traficul de rețea.
Definirea unei scheme Avro pentru tranzacții bancare
{
"type": "record",
"name": "PlataEveniment",
"namespace": "ro.dexblog.plati",
"fields": [
{ "name": "idTranzactie", "type": "string" },
{ "name": "suma", "type": "double" },
{ "name": "moneda", "type": "string", "default": "RON" },
{ "name": "timestamp", "type": "long" }
]
}
Moduri de Compatibilitate:
–
–
–
–
BACKWARD (implicit): Consumatorii noi cu noua schemă pot citi date scrise cu schema veche.–
FORWARD: Consumatorii vechi pot citi date scrise cu noua schemă.–
FULL: Compatibilitate bidirecțională simultană (garantează zero downtime la upgrade-uri).
Întrebări & Exemple de Cod:
Confluent Schema Registry și Apache Avro în Kafka: Compatibilitate și Validare de SchemeAi o nelămurire despre utilizarea comenzii
Confluent Schema Registry și Apache Avro în Kafka: Compatibilitate și Validare de Schemesau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.