Support Questions
Find answers, ask questions, and share your expertise
Announcements
Alert: Welcome to the Unified Cloudera Community. Former HCC members be sure to read and learn how to activate your account here.

Schema Registry - Question around protocol, schema version and fingerprint

Highlighted

Schema Registry - Question around protocol, schema version and fingerprint

New Contributor

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:

<protocol-id><schema-version-Id><payload>

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><payload>

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.

Few Questions:

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.

Thank you.

Don't have an account?
Coming from Hortonworks? Activate your account here