Wir verwenden Apache Kafka (nicht konfluente Kafka) 0.10. Wir möchten AVRO Schema mit kafka einrichten. Ich habe avro Schema wie folgt.Apache Kafka mit zentralisiertem Avro-Schema
{
"namespace": "Rule",
"type": "record",
"name": "RuleMessage",
"fields": [
{
"name": "station",
"type": "string"
},
{
"name": "model",
"type": "string"
}
}
Serialisierung Nachricht wie
public byte[] serializeMessage(EventMessage eventMessage) throws IOException {
ByteArrayOutputStream out = new ByteArrayOutputStream();
BinaryEncoder encoder = EncoderFactory.get().binaryEncoder(out, null);
DatumWriter<EventMessage> writer = new SpecificDatumWriter<EventMessage>(EventMessage.getClassSchema());
writer.write(eventMessage, encoder);
encoder.flush();
out.close();
return out.toByteArray();
}
Dies funktioniert wie erwartet.
Aber möchte ein Avro-Schema auf der Themenebene einrichten, so dass das Thema Nachrichten zurückweist, wenn die Nachricht nicht das Avro-Schema erfüllt.
Gibt es sowieso, könnte ich dies mit Apache Kafka 0.10 tun.
Dank