Skip to content

Commit 1b8ba3a

Browse files
committed
edit pass: two-schema-registry-articles
1 parent 9977102 commit 1b8ba3a

File tree

1 file changed

+29
-32
lines changed

1 file changed

+29
-32
lines changed

articles/event-hubs/schema-registry-concepts.md

Lines changed: 29 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,14 @@ ms.author: spelluru
1111

1212
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.
1313

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:
1515
* Provides a repository where multiple schemas can be registered, managed, and evolved.
1616
* Managed schema evolution with multiple compatibility rules.
1717
* Performs data validation for all schematized data.
1818
* Provides client-side libraries (serializers and deserializers) for producers and consumers.
1919
* Improves network throughput efficiency by passing schema ID instead of the schema definition for every payload.
2020

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.
2422

2523
## Schema Registry components
2624

@@ -50,7 +48,7 @@ To learn more about using Avro schema format with Event Hubs Schema Registry, se
5048
- [How to use Schema registry with Event Hubs .NET SDK (AMQP) and Avro.](schema-registry-dotnet-send-receive-quickstart.md)
5149

5250
##### 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.
5452

5553
To learn more about using JSON schema format with Event Hubs Schema Registry, see:
5654
- [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
6159

6260
### Schema groups
6361

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:
6563
* multiple schema definition,
66-
* multiple versions of a specific schema, and
64+
* multiple versions of a specific schema, and
6765
* metadata regarding the schema type and compatibility for all schemas in the group.
6866

6967
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.
7068

7169
## 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.
7371

7472
> [!NOTE]
7573
> Schema evolution is only supported for Avro schema format only.
7674
77-
Azure Schema Registry for Event Hubs support following compatibility modes.
75+
Azure Schema Registry for Event Hubs support following compatibility modes.
7876

7977
### 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.
8179

82-
- Delete fields.
83-
- Add optional fields.
80+
* Delete fields.
81+
* Add optional fields.
8482

8583
### 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
8987

9088
### No compatibility
9189
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
9492

9593
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.
9694

97-
- [.NET - Microsoft.Azure.Data.SchemaRegistry.ApacheAvro](https://github.com/Azure/azure-sdk-for-net/tree/master/sdk/schemaregistry/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro)
98-
- [Java - azure-data-schemaregistry-avro](https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/schemaregistry/azure-data-schemaregistry-apacheavro)
99-
- [Python - azure-schemaregistry-avroserializer](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/schemaregistry/azure-schemaregistry-avroencoder/)
100-
- [JavaScript - @azure/schema-registry-avro](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro)
101-
- [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).
104-
95+
* [.NET - Microsoft.Azure.Data.SchemaRegistry.ApacheAvro](https://github.com/Azure/azure-sdk-for-net/tree/master/sdk/schemaregistry/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro)
96+
* [Java - azure-data-schemaregistry-avro](https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/schemaregistry/azure-data-schemaregistry-apacheavro)
97+
* [Python - azure-schemaregistry-avroserializer](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/schemaregistry/azure-schemaregistry-avroencoder/)
98+
* [JavaScript - @azure/schema-registry-avro](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro)
99+
* [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).
105102

106103
## Limits
107104
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:
112109
1. [Register your application in Microsoft Entra ID](../active-directory/develop/quickstart-register-app.md)
113110
1. Add the security principal of the application to one of the following Azure RBAC(role-based access control) roles at the **namespace** level.
114111

115-
| Role | Description |
116-
| ---- | ----------- |
112+
| Role | Description |
113+
| ---- | ----------- |
117114
| Owner | Read, write, and delete Schema Registry groups and schemas. |
118115
| Contributor | Read, write, and delete Schema Registry groups and schemas. |
119116
| [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,
123120

124121
## Next steps
125122

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.
128-
- [.NET](https://github.com/Azure/azure-sdk-for-net/tree/master/sdk/schemaregistry/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro/tests/Samples)
129-
- [Java](https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/schemaregistry/azure-data-schemaregistry-apacheavro/src/samples)
130-
- [JavaScript](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro/samples)
131-
- [Python](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/schemaregistry/azure-schemaregistry-avroencoder/samples)
132-
- [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.
125+
* [.NET](https://github.com/Azure/azure-sdk-for-net/tree/master/sdk/schemaregistry/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro/tests/Samples)
126+
* [Java](https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/schemaregistry/azure-data-schemaregistry-apacheavro/src/samples)
127+
* [JavaScript](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro/samples)
128+
* [Python](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/schemaregistry/azure-schemaregistry-avroencoder/samples)
129+
* [Kafka Avro Integration for Azure Schema Registry](https://github.com/Azure/azure-schema-registry-for-kafka/tree/master/csharp/avro/samples)

0 commit comments

Comments
 (0)