The AWS Glue Schema Registry is a serverless registry for streaming schemas — Avro, JSON Schema, and Protobuf — with eight compatibility modes, open-source serialisers, and integrations across MSK, Kinesis Data Streams, Managed Service for Apache Flink, and Lambda. AWS's documentation states it is free to use.
Serverless: schemas group into registries reached through the AWS SDK and authorized by IAM. Compatibility is enforced at registration, and the serde libraries handle auto-registration, schema resolution from message metadata, and optional compression.
How AWS Glue Schema Registry answers the questions Schema Registries turns on.
| How it works | |
| Schema formats | Three, and narrower than they first appear, Avro at 1.11.4, JSON Schema at drafts 04, 06 and 07 validated through the Everit library, and Protobuf proto2 and proto3 without support for extensions or groups. Java is the documented client language, with AWS's own hedge that other formats and languages are still to come |
| Protocol | The AWS API and nothing else, the Glue schema registry actions reached through the AWS SDK and authorised by IAM. There is no Confluent Schema Registry compatibility endpoint at all, which is the sharpest single difference between this row and every other one here |
| Compatibility rules | Eight modes, more granularity than the Confluent contract exposes (NONE, DISABLED, BACKWARD, BACKWARD_ALL, FORWARD, FORWARD_ALL, FULL and FULL_ALL) and checked not against the previous version but against a designated checkpoint version that UpdateSchema can move. The rules are worked through separately for Avro, JSON Schema and Protobuf, down to gRPC service and method changes |
| Where enforced | At registration: a request to register a new schema version is checked against the schema's compatibility rule before it can succeed, so the registry itself is the gate, and DISABLED is the mode that refuses new versions outright |
| Running it | |
| What you run | Nothing at all: serverless, with schemas grouped into registries that carry their own ARNs. The quotas are what to know instead: 100 registries per region, 10,000 schema versions per region per account, and a 170 KB ceiling on a schema payload |
| Connections | |
| Client libraries | Open-source serialiser and deserialiser libraries, documented for Java, sitting between producers and consumers and handling auto-registration, schema sourcing through metadata and optional ZLIB compression; everything else goes through the AWS SDK |
| Generated code | None: the Serde libraries serialise and deserialise against a schema and nothing generates client code or publishes SDKs. The opposite pole from the BSR, where generation is half the product |
| Connectors | The AWS streaming estate: Apache Kafka and Amazon MSK, Kinesis Data Streams, Managed Service for Apache Flink, and Lambda. That list is also the boundary: with no Confluent-compatible endpoint, tooling that speaks that API does not connect |
| Access | |
| Access control | IAM, and only IAM: a registry is an ARN, so access control is resource permissions on registries and schemas rather than roles inside a product. Schema version metadata carries up to ten key-value pairs for anything else worth recording |
| Cost | |
| Billing unit | Nothing, and AWS says so outright, "the Schema registry is serverless and free to use". That is unique among the metered AWS services in this catalog, and the reason this row reads Free where Athena, Kinesis and Step Functions read Subscription |
vs AWS Glue Schema Registry: Open source (permissive) · Self-hosted · Java
vs AWS Glue Schema Registry: Self-hosted · Managed · Free · Subscription
vs AWS Glue Schema Registry: Source-available · Self-hosted · Managed · Free · Subscription · Java