Azure Schema Registry - Sneak peek from Preview
Azure Schema Registry (is available in preview mode)
Foremost I will start with:
The Schema Registry feature is currently in preview and is available only in standard and dedicated tiers, not in the basic tier.
Consider these limits before implementing the solution:
The Good side:
Easy to Manage
- Inside the namespace, you can now manage "schema groups" alongside the Event Hub instances
- No separate costing or vendor like Confluent Cloud
Schema Groups:
- It gives a concept of a securable repository for set of schemas.
- It kind of imposes a boundary that ensures secrets do not inadvertently leak through metadata in situations where the namespace is shared amongst multiple partners.
- It also allows for application owners to manage schemas independent of other applications that share the same namespace.
- Each schema group can hold multiple schemas and that too with version history.
Independent Nature and easy integration to other Azure services:
In spite of being hosted inside of Azure Event Hubs, the schema registry can be used universally with all Azure messaging services and any other message or events broker.
Another could be important point in some situations - The Azure Schema Registry also provides a simple governance framework for reusable schemas and defines the relationship between schemas through a grouping construct (schema groups).
The side yet to explore:
Need to get more relaxed on limits for solutions to be tried and implemented
An Event Hubs Standard namespace can host 1 schema group and 25 schemas for this public preview. Event Hubs Dedicated can already host 1000 schema groups and 10000 schemas.
Yet to support more serialization formats
Currently it supports Java, .NET, Python, and Node/JS that can de-/serialize payloads using the Apache Avro format from and to byte streams/array.
Open Source?
Apache kafka appears to be open source but vendor has switched license to a more restrictive one that limits on who can touch the code and run in managed cloud environments. Cloud customers are locked hard in vendor cloud offering inspite of been part of open source community.
Microsoft have mentioned that the schema registry interface is not restricted to or in any way dependent on the CloudEvents specification but there is still more clarity to come in future.
Some points to consider:
Confluenct Cloud is providing Apackhe Kafka services as serverless now which means no worry about clusters configuration and management. Elastic scaling and pay as you go is real.
It works seamlessly with AWS , GCP and Azure which provides a large benefit in hybrid cloud environments.
We have seen migrating solutions in working conditions with Confluent Schema Registry Schemas which were hosted in on premises or in self managed clusters to Confluent managed clusters or cloud.
with Azure Schema Registry on the other hand is fairly native right now and with more implementations we can see on how it can be leveraged more and give a tough competition to Confluent.
Disclaimer
I wrote this article from a personal view while trying to be objective as possible. These express my personal experience and these thoughts might not necessary be those of my firm.