You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/event-hubs/schema-registry-concepts.md
+29-32Lines changed: 29 additions & 32 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,16 +11,14 @@ ms.author: spelluru
11
11
12
12
Schema Registry is crucial in loosely coupled and event streaming workflows for maintaining data consistency, simplifying schema evolution, enhancing interoperability, and reducing development effort. It ensures highly reliable data processing and governance with little operational overhead in large distributed organizations with a centralized repository for schemas.
13
13
14
-
Schema Registry in Azure Event Hubs fulfills multiple roles in schema-driven event streaming scenarios -
14
+
Schema Registry in Azure Event Hubs fulfills multiple roles in schema-driven event streaming scenarios:
15
15
* Provides a repository where multiple schemas can be registered, managed, and evolved.
16
16
* Managed schema evolution with multiple compatibility rules.
17
17
* Performs data validation for all schematized data.
18
18
* Provides client-side libraries (serializers and deserializers) for producers and consumers.
19
19
* Improves network throughput efficiency by passing schema ID instead of the schema definition for every payload.
20
20
21
-
> [!NOTE]
22
-
> Schema Registry is supported on Standard, Premium, and Dedicated tiers.
23
-
>
21
+
Schema Registry is supported on Standard, Premium, and Dedicated tiers.
24
22
25
23
## Schema Registry components
26
24
@@ -50,7 +48,7 @@ To learn more about using Avro schema format with Event Hubs Schema Registry, se
50
48
-[How to use Schema registry with Event Hubs .NET SDK (AMQP) and Avro.](schema-registry-dotnet-send-receive-quickstart.md)
51
49
52
50
##### JSON Schema
53
-
[JSON Schema](https://json-schema.org/) is a standardized way of defining the structure and data types of the events. JSON Schema enables the confident and reliable use of the JSON data format in event streaming.
51
+
[JSON Schema](https://json-schema.org/) is a standardized way of defining the structure and data types of the events. JSON Schema enables the confident and reliable use of the JSON data format in event streaming.
54
52
55
53
To learn more about using JSON schema format with Event Hubs Schema Registry, see:
56
54
-[How to use schema registry with Kafka and JSON Schema](schema-registry-json-schema-kafka.md)
@@ -61,31 +59,31 @@ To learn more about using JSON schema format with Event Hubs Schema Registry, se
61
59
62
60
### Schema groups
63
61
64
-
Schema groups are logical groups of similar schemas based on your business criteria. A schema group holds
62
+
Schema groups are logical groups of similar schemas based on your business criteria. A schema group holds:
65
63
* multiple schema definition,
66
-
* multiple versions of a specific schema, and
64
+
* multiple versions of a specific schema, and
67
65
* metadata regarding the schema type and compatibility for all schemas in the group.
68
66
69
67
A schema groups can be thought of as a subset of the schema registry, aligned with a particular application or organizational unit, with a separate authorization model. This extra security boundary ensures that in the shared services model, metadata, and trade secrets aren't leaked. It also allows for application owners to manage schemas independent of other applications that share the same namespace.
70
68
71
69
## Schema evolution
72
-
Schemas need to evolve with the business requirement of producers and consumers. Azure Schema Registry supports schema evolution by introducing compatibility modes at the schema group level. When you create a schema group, you can specify the compatibility mode of the schemas that you include in that schema group. When you update a schema, the change should comply with the assigned compatibility mode and then only it creates a new version of the schema.
70
+
Schemas need to evolve with the business requirement of producers and consumers. Azure Schema Registry supports schema evolution by introducing compatibility modes at the schema group level. When you create a schema group, you can specify the compatibility mode of the schemas that you include in that schema group. When you update a schema, the change should comply with the assigned compatibility mode and then only it creates a new version of the schema.
73
71
74
72
> [!NOTE]
75
73
> Schema evolution is only supported for Avro schema format only.
76
74
77
-
Azure Schema Registry for Event Hubs support following compatibility modes.
75
+
Azure Schema Registry for Event Hubs support following compatibility modes.
78
76
79
77
### Backward compatibility
80
-
Backward compatibility mode allows the consumer code to use a new version of schema but it can process messages with old version of the schema. When you use backward compatibility mode in a schema group, it allows following changes to be made on a schema.
78
+
Backward compatibility mode allows the consumer code to use a new version of schema but it can process messages with old version of the schema. When you use backward compatibility mode in a schema group, it allows following changes to be made on a schema.
81
79
82
-
- Delete fields.
83
-
- Add optional fields.
80
+
* Delete fields.
81
+
* Add optional fields.
84
82
85
83
### Forward compatibility
86
-
Forward compatibility allows the consumer code to use an old version of the schema but it can read messages with the new schema. Forward compatibility mode allows following changes to be made on a schema.
87
-
- Add fields
88
-
- Delete optional fields
84
+
Forward compatibility allows the consumer code to use an old version of the schema but it can read messages with the new schema. Forward compatibility mode allows following changes to be made on a schema.
85
+
* Add fields
86
+
* Delete optional fields
89
87
90
88
### No compatibility
91
89
When the ``None`` compatibility mode is used, the schema registry doesn't do any compatibility checks when you update schemas.
@@ -94,14 +92,13 @@ When the ``None`` compatibility mode is used, the schema registry doesn't do any
94
92
95
93
You can use one of the following libraries to include an Avro serializer, which you can use to serialize and deserialize payloads containing Schema Registry schema identifiers and Avro-encoded data.
-[Apache Kafka](https://github.com/Azure/azure-schema-registry-for-kafka/) - Run Kafka-integrated Apache Avro serializers and deserializers backed by Azure Schema Registry. The Java client's Apache Kafka client serializer for the Azure Schema Registry can be used in any Apache Kafka scenario and with any Apache Kafka® based deployment or cloud service.
102
-
-**Azure CLI** - For an example of adding a schema to a schema group using CLI, see [Adding a schema to a schema group using CLI](https://github.com/Azure/azure-event-hubs/tree/master/samples/Management/CLI/AddschematoSchemaGroups).
103
-
-**PowerShell** - For an example of adding a schema to a schema group using PowerShell, see [Adding a schema to a schema group using PowerShell](https://github.com/Azure/azure-event-hubs/tree/master/samples/Management/PowerShell/AddingSchematoSchemagroups).
*[Apache Kafka](https://github.com/Azure/azure-schema-registry-for-kafka/) - Run Kafka-integrated Apache Avro serializers and deserializers backed by Azure Schema Registry. The Java client's Apache Kafka client serializer for the Azure Schema Registry can be used in any Apache Kafka scenario and with any Apache Kafka® based deployment or cloud service.
100
+
***Azure CLI** - For an example of adding a schema to a schema group using CLI, see [Adding a schema to a schema group using CLI](https://github.com/Azure/azure-event-hubs/tree/master/samples/Management/CLI/AddschematoSchemaGroups).
101
+
***PowerShell** - For an example of adding a schema to a schema group using PowerShell, see [Adding a schema to a schema group using PowerShell](https://github.com/Azure/azure-event-hubs/tree/master/samples/Management/PowerShell/AddingSchematoSchemagroups).
105
102
106
103
## Limits
107
104
For limits (for example: number of schema groups in a namespace) of Event Hubs, see [Event Hubs quotas and limits](event-hubs-quotas.md).
@@ -112,8 +109,8 @@ To access a schema registry programmatically, follow these steps:
112
109
1.[Register your application in Microsoft Entra ID](../active-directory/develop/quickstart-register-app.md)
113
110
1. Add the security principal of the application to one of the following Azure RBAC(role-based access control) roles at the **namespace** level.
114
111
115
-
| Role | Description |
116
-
| ---- | ----------- |
112
+
| Role | Description |
113
+
| ---- | ----------- |
117
114
| Owner | Read, write, and delete Schema Registry groups and schemas. |
118
115
| Contributor | Read, write, and delete Schema Registry groups and schemas. |
119
116
|[Schema Registry Reader](../role-based-access-control/built-in-roles.md#schema-registry-reader-preview)| Read and list Schema Registry groups and schemas. |
@@ -123,10 +120,10 @@ For instructions on creating registering an application using the Azure portal,
123
120
124
121
## Next steps
125
122
126
-
- To learn how to create a schema registry using the Azure portal, see [Create an Event Hubs schema registry using the Azure portal](create-schema-registry.md).
127
-
- See the following **Schema Registry Avro client library** samples.
-[Kafka Avro Integration for Azure Schema Registry](https://github.com/Azure/azure-schema-registry-for-kafka/tree/master/csharp/avro/samples)
123
+
* To learn how to create a schema registry using the Azure portal, see [Create an Event Hubs schema registry using the Azure portal](create-schema-registry.md).
124
+
* See the following **Schema Registry Avro client library** samples.
0 commit comments