dargor / async-python-schema-registry-client

Async Python Rest Client to interact against Schema Registry confluent server

Home Page:https://marcosschroh.github.io/async-python-schema-registry-client/serializer/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Async Python Rest Client Schema Registry

Build Status GitHub license codecov Python Version

Async Python Rest Client to interact against schema-registry confluent server to manage Avro Schemas resources.

Requirements

python 3.6+, fastavro>=0.22.3, requests-async>=0.4.1, aiofiles>=0.4.0

Installation

pip install async-python-schema-registry-client

Client API, Serializer, Faust Integration and Schema Server description

Documentation: https://marcosschroh.github.io/async-python-schema-registry-client.io

When use this library?

Usually, we have a situacion like this:

Confluent Architecture

So, our producers/consumers have to serialize/deserialize messages every time that they send/receive from Kafka topics. In this picture, we can imagine a Faust application receiving messages (encoded with an Avro schema) and we want to deserialize them, so we can ask the schema server to do that for us. In this scenario, the MessageSerializer is perfect.

Also, could be a use case that we would like to have an Application only to administrate Avro Schemas (register, update compatibilities, delete old schemas, etc.), so the SchemaRegistryClient is perfect.

Run Tests

The tests are run against the Schema Server using docker compose, so you will need Docker and Docker Compose installed.

./scripts/test.sh

About

Async Python Rest Client to interact against Schema Registry confluent server

https://marcosschroh.github.io/async-python-schema-registry-client/serializer/

License:MIT License


Languages

Language:Python 96.6%Language:Shell 2.3%Language:Dockerfile 1.0%