Looking at the schema registry documentation I understand following:
For deserializing a message using the schema registry it expects the message in the following format:
Conversely during serialization it converts the payload to the above format.
I already have some messages coming in from client side in the following format:
schema-fingerprint for me is my generated fingerprint and is a string value.
My clients cannot change to send me the data in the format that schema registry expects.
1. Is there a way for me to use the schema-registry with my existing payload as is?
2. If not, do I need to maintain the mapping between my schema-fingerprint to the protocol-id and schema-version-id and accordingly convert the incoming message in the format the schema registry expects for me to be able to use the schema registry functionality.
3. I also notice a fingerprint field in the registry database. So when we register a schema a fingerprint is also generated. But I am not sure at the moment where it gets used. I did not see an API in the SchemaRegistryClient where you can retrieve the schema based on a fingerprint. If this is possible then it would be possible for me to request my clients to send me the data with the fingerprint that the schema registry generates for me when I register a schema.
Any ideas or feedback from the community is highly appreciated and it will help me in deciding how to move forward on this.