Skip to content
This repository has been archived by the owner on Jun 7, 2024. It is now read-only.

Nakadi Avro Envelope

Andrey Dyachkov edited this page Jul 12, 2022 · 5 revisions

Nakadi Avro Envelope

Nakadi Avro Envelope enables to send binary events through Nakadi in a form of Avro schema defined envelopes consisting metadata and events.

Nakadi Client

Every published events batch has to be wrapped in PublishingBatch. Every consumption batch comes wrapped in ConsumptionBatch.

The schemas can be loaded using https://nakadi.io/manual.html#/avro-schemas/name/versions_get. Name can be either batch.publishing or batch.consumption.

Publishing

For publishing events, the event type with the schema type avro_schema has to be created first.

The client has to support the following mode of operation:

  • the client instance is built during start up and should make sure that the event type has a schema which user defined. In order to fulfil the requirement, the client has to check the provided shema in Nakadi using the following endpoint by providing the schema. In response it will receive the version of the schema if exists otherwise it should fail to start, because unknown schema is used.

  • the returned version of the schema then has to be used in metadata version field.

Consumption

Clone this wiki locally