Yandex Cloud
Search
Contact UsGet started
  • Blog
  • Pricing
  • Documentation
  • All Services
  • System Status
    • Featured
    • Infrastructure & Network
    • Data Platform
    • Containers
    • Developer tools
    • Serverless
    • Security
    • Monitoring & Resources
    • ML & AI
    • Business tools
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Customer Stories
    • Gateway to Russia
    • Cloud for Startups
    • Education and Science
  • Blog
  • Pricing
  • Documentation
Yandex project
© 2025 Yandex.Cloud LLC
Yandex MetaData Hub
    • About Yandex MetaData Hub
      • Schema registry
      • Content models and JSON schema evolution issues
      • Compatibility policies
    • Quotas and limits
  • Audit Trails events
  • Pricing policy
  • Troubleshooting
  • Public materials
  • Release notes

In this article:

  • Namespace
  • Subject
  • Schema
  • Reference
  • Use cases
  1. Concepts
  2. Schema Registry
  3. Schema registry

Data schema registry

Written by
Yandex Cloud
Updated at May 14, 2025
  • Namespace
  • Subject
  • Schema
  • Reference
  • Use cases

Note

This feature is at the Preview stage.

Schema Registry implements a schema registry, i.e., a centralized repository for managing and validating data schemas. The schema registry ensures safe data schema evolution, resolves data compatibility issues, and enhances system performance by reducing the volume of data transmitted over the network. Moreover, the schema registry will allow you to satisfy data security requirements and promote collaboration across teams. In Schema Registry, you can add schemas in Avro, JSON Schema, and Protobuf formats.

NamespaceNamespace

A namespace is a certain number of schemas. Schemas and subjects of different namespaces are completely isolated from one another. It is up to the user to decide how many namespaces to create and what principle to follow for placing schemas in them. You cannot create references between schemas from different namespaces.

SubjectSubject

A subject is a named entity within which a data schema evolves.
The particular subject version contains metainformation about the schema and the schema itself. Subject versions are numbered sequentially incrementing by 1. Each subject version is unique and contains only one schema. You can compare schemas in different versions of a subject.

SchemaSchema

A _schema_ is a definition of a data format used to describe data type and structure.
Schemas are used to check data structure in messages on events, thereby ensuring that producers and consumers send and receive data in the same format. You can define schemas in a schema registry only within a given subject.
You can edit a data schema. To do this, upload an updated schema to a subject. The new schema will appear in the new subject version:

ReferenceReference

A reference (schema reference) is a link to other schemas comprising the following parameters:

  • Reference name. For Avro, a reference name is a full schema name; for JSON, it is a URL address; and for Protobuf, a name of a Protobuf file with a schema (as stated in the import directive).
  • Subject name used to register the referenced schema.
  • Subject version containing the referenced schema.
Example of a Protobuf schema reference

Let's take a look at the msg2.proto schema in the test-msg2 subject that refers to the msg1.proto schema in the test-msg1 subject.

msg1.proto file contents:

message msg1 {
    int8 my_field = 1
}

msg2.proto contents:

import "msg1.proto"

message msg2 {
    msg1 my_field = 1
}

To link these schemas, add a reference with the following parameters when loading the msg2.proto schema into the test-msg2 subject:

  • msg1.proto: Reference name.
  • test-msg1: Subject name used to register the referenced schema, msg1.proto.
  • 1: test-msg1 subject version containing the referenced schema.

Use casesUse cases

  • Using Schema Registry with Yandex Managed Service for Apache Kafka®
  • Creating a schema registry to deliver data in Debezium CDC format from Apache Kafka®

Was the article helpful?

Previous
Impersonation in Metastore
Next
Content models and JSON schema evolution issues
Yandex project
© 2025 Yandex.Cloud LLC