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/iot-operations/connect-to-cloud/concept-schema-registry.md
+70-2Lines changed: 70 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,6 +19,74 @@ Edge services use message schemas to filter and transform messages as they're ro
19
19
20
20
*Schemas* are documents that describe data to enable processing and contextualization. *Message schemas* describe the format of a message and its contents.
21
21
22
+
## Message schema definitions
23
+
24
+
Schema registry expects the following required fields in a message schema:
25
+
26
+
| Required field | Definition |
27
+
|`$schema`| Either `http://json-schema.org/draft-07/schema#` or `Delta/1.0`. In dataflows, JSON schemas are used for source endpoints and Delta schemas are used for destination endpoints. |
28
+
|`type`|`Object`|
29
+
|`properties`| The message definition. |
30
+
31
+
Additionally, you can include optional fields in your message schema as long as they conform with the schema type. For example:
32
+
33
+
| Optional field | Definition |
34
+
|`name`| A name for the schema. |
35
+
|`description`| A description of the schema. |
36
+
|`required`| A list of properties required to be present in the messages. |
37
+
38
+
### Sample schemas
39
+
40
+
The following sample schemas provide examples for defining message schemas in each format.
Message schemas are used in all three phases of a dataflow: defining the source input, applying data tranformations, and creating the destination output.
@@ -29,7 +97,7 @@ Each dataflow source requires a message schema.
29
97
30
98
Asset sources have a predefined message schema that was created by the connector for OPC UA.
31
99
32
-
MQTT sources require an uploaded message schema. Azure IoT Operations supports JSON schemas, and the filename is used as the schema name. In the operations experience, you can select an existing schema or upload one while defining an MQTT source:
100
+
MQTT sources require an uploaded message schema. Currently, Azure IoT Operations supports JSON for input schemas. In the operations experience, you can select an existing schema or upload one while defining an MQTT source:
33
101
34
102
:::image type="content" source="./media/concept-schema-registry/upload-schema.png" alt-text="Screenshot that shows uploading a message schema in the operations experience portal.":::
35
103
@@ -39,7 +107,7 @@ The operations experience uses the input schema as a starting point for your dat
39
107
40
108
### Output schema
41
109
42
-
Schemas are only used for dataflows that select Fabricor ADX as the destination endpoint.
110
+
Schemas are only used for dataflows that select local storage, Fabric, Azure Data Lake, or Azure Data Explorer as the destination endpoint. Currently, Azure IoT Operations supports Delta Parquey for outpus schema.
43
111
44
112
For these dataflows, the operations experience applies any transformations to the input schema then creates a new schema in Delta format. When the dataflow custom resource (CR) is created, it includes a `schemaRef` value that points to the generated schema stored in the schema registry.
0 commit comments