Skip to content

Commit 09d3a25

Browse files
authored
Merge pull request #296886 from asergaz/message-processing-edge-based
message-processing edge-based
2 parents b4d249c + a2ecd45 commit 09d3a25

File tree

4 files changed

+3684
-1988
lines changed

4 files changed

+3684
-1988
lines changed

articles/iot/iot-overview-message-processing.md

Lines changed: 90 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,63 @@
11
---
2-
title: Process messages from your devices
2+
title: Process messages from your IoT assets and devices
33
description: An overview of message processing options in an Azure IoT solution including routing and enrichments.
44
ms.service: azure-iot
55
services: iot
6-
author: dominicbetts
7-
ms.author: dobett
6+
author: asergaz
7+
ms.author: sergaz
88
ms.topic: overview
9-
ms.date: 02/28/2024
10-
ms.custom: template-overview
9+
ms.date: 03/24/2025
1110
# Customer intent: As a solution builder or device developer I want a high-level overview of the message processing in IoT solutions so that I can easily find relevant content for my scenario.
1211
---
1312

1413
# Message processing in an IoT solution
1514

16-
This overview introduces the key concepts around processing messages sent from your devices in a typical Azure IoT solution. Each section includes links to content that provides further detail and guidance.
15+
This overview introduces the key concepts around processing messages sent from your assets and devices in a typical Azure IoT solution. Each section includes links to content that provides further detail and guidance.
1716

18-
The following diagram shows a high-level view of the components in a typical IoT solution. This article focuses on the message processing components of an IoT solution.
17+
## [Edge-based solution](#tab/edge)
1918

20-
:::image type="content" source="media/iot-overview-message-processing/iot-architecture.svg" alt-text="Diagram that shows the high-level IoT solution architecture highlighting message processing areas." border="false":::
19+
The following diagram shows a high-level view of the components in a typical edge-based IoT solution. This article focuses on the message processing components of an edge-based IoT solution.
2120

22-
In Azure IoT, message processing refers to processes such as routing and enriching telemetry messages sent by devices. These processes are used to control the flow of messages through the IoT solution and to add additional information to the messages.
21+
<!-- Art Library Source# ConceptArt-0-000-032 -->
22+
:::image type="content" source="media/iot-overview-message-processing/iot-edge-message-architecture.svg" alt-text="Diagram that shows the high-level edge-based IoT solution architecture highlighting message processing areas." border="false" lightbox="media/iot-overview-message-processing/iot-edge-message-architecture.svg":::
23+
24+
## [Cloud-based solution](#tab/cloud)
25+
26+
The following diagram shows a high-level view of the components in a typical cloud-based IoT solution. This article focuses on the message processing components of a cloud-based IoT solution.
27+
28+
<!-- Art Library Source# ConceptArt-0-000-032 -->
29+
:::image type="content" source="media/iot-overview-message-processing/iot-cloud-message-architecture.svg" alt-text="Diagram that shows the high-level cloud-based IoT solution architecture highlighting message processing areas." border="false" lightbox="media/iot-overview-message-processing/iot-cloud-message-architecture.svg":::
30+
31+
---
32+
33+
In Azure IoT, message processing refers to processes such as routing and enriching messages sent by assets and devices. These processes are used to control the flow of messages through the IoT solution and to add additional information to the messages.
2334

2435
## Route messages
2536

26-
An IoT hub provides a cloud entry point for the telemetry messages that your devices send. In a typical IoT solution, these messages are delivered to other downstream services for storage or analysis.
37+
### [Edge-based solution](#tab/edge)
38+
39+
To route messages from your assets to various endpoints, Azure IoT Operations uses [data flows](../iot-operations/connect-to-cloud/overview-dataflow.md). The destination endpoints might be in the cloud or at the edge. The list of available destination endpoints includes:
40+
41+
| Endpoint type | Description |
42+
|---------------|-------------|
43+
| [MQTT](../iot-operations/connect-to-cloud/howto-configure-mqtt-endpoint.md) | For bi-directional messaging with MQTT brokers, including the one built-in to Azure IoT Operations and Event Grid. |
44+
| [Kafka](../iot-operations/connect-to-cloud/howto-configure-kafka-endpoint.md) | For bi-directional messaging with Kafka brokers, including Azure Event Hubs. |
45+
| [Data Lake](../iot-operations/connect-to-cloud/howto-configure-adlsv2-endpoint.md) | For uploading data to Azure Data Lake Gen2 storage accounts. |
46+
| [Microsoft Fabric OneLake](../iot-operations/connect-to-cloud/howto-configure-fabric-endpoint.md) | For uploading data to Microsoft Fabric OneLake lakehouses. |
47+
| [Azure Data Explorer](../iot-operations/connect-to-cloud/howto-configure-adx-endpoint.md) | For uploading data to Azure Data Explorer databases. |
48+
| [Local storage](../iot-operations/connect-to-cloud/howto-configure-local-storage-endpoint.md) | For sending data to a locally available persistent volume, through which you can upload data via Azure Container Storage enabled by Azure Arc edge volumes. |
49+
50+
The operations experience web UI provides a no-code environment for building and running your data flows.
51+
52+
For enhanced security in the data that is routed to your endpoints, cloud/edge [synchronized secrets](../iot-operations/secure-iot-ops/howto-manage-secrets.md) are used in data flow endpoints for authentication.
53+
54+
While data flows let you configure routing at the edge, you can also define routing in the cloud. If your data flow delivers messages to Azure Event Grid you can use its routing capabilities to determine where to send the messages.
55+
56+
To learn more, see [Process and route data with data flows](../iot-operations/connect-to-cloud/overview-dataflow.md).
57+
58+
### [Cloud-based solution](#tab/cloud)
59+
60+
An Azure IoT hub provides a cloud entry point for the telemetry messages that your devices send. In a typical IoT solution, these messages are delivered to other downstream services for storage or analysis.
2761

2862
### IoT Hub routing
2963

@@ -40,9 +74,9 @@ To learn more, see [Use IoT Hub message routing to send device-to-cloud messages
4074

4175
You can use [queries to filter the messages](../iot-hub/iot-hub-devguide-routing-query-syntax.md) sent to different destinations.
4276

43-
## IoT Central routing
77+
### IoT Central routing
4478

45-
If you're using IoT Central, you can use data export to send telemetry messages to other downstream services. Destinations include:
79+
If you're using Azure IoT Central, you can use data export to send telemetry messages to other downstream services. Destinations include:
4680

4781
- Storage containers
4882
- Service Bus queues
@@ -61,7 +95,35 @@ IoT Hub has built-in integration with [Azure Event Grid](../event-grid/overview.
6195

6296
To learn more, see [React to IoT Hub events by using Event Grid to trigger actions](../iot-hub/iot-hub-event-grid.md) and [Compare message routing and Event Grid for IoT Hub](../iot-hub/iot-hub-event-grid-routing-comparison.md).
6397

64-
## Enrich or transform messages
98+
---
99+
100+
## Enrich, transform, and process messages
101+
102+
### [Edge-based solution](#tab/edge)
103+
104+
Enrichments and transformations can be applied to data during the processing stage to perform various operations. These operations can include:
105+
106+
- **Compute new properties**: Based on existing properties in the message
107+
- **Rename properties**: To standardize or clarify data
108+
- **Convert units**: Convert values to different units of measurement
109+
- **Standardize values**: Scale property values to a user-defined range
110+
- **Contextualize data**: Add reference data to messages for enrichment and driving insights
111+
112+
The [schema registry](../iot-operations/connect-to-cloud/concept-schema-registry.md) stores schemas for messages coming from your assets. Data flows use these message schemas to decode messages from various formats so they can be processed by data flows.
113+
114+
The operations experience web UI provides a no-code environment for building and running the transformations in your data flows.
115+
116+
To learn more, see [Enrich data by using data flows](../iot-operations/connect-to-cloud/concept-dataflow-enrich.md).
117+
118+
In Azure IoT Operations, you can deploy your own highly available edge applications to the Kubernetes cluster. The edge applications can interact with the built-in MQTT broker to:
119+
120+
- Use custom message processing logic on the MQTT messages.
121+
- Build custom application logic to run at the edge.
122+
- Run Edge AI models for real-time data processing and decision-making at the source of data generation, reducing latency and bandwidth usage.
123+
124+
To learn more, see [Develop highly available applications for Azure IoT Operations MQTT broker](../iot-operations/create-edge-apps/edge-apps-overview.md).
125+
126+
### [Cloud-based solution](#tab/cloud)
65127

66128
To simplify downstream processing, you might want to add data to telemetry messages or modify their structure.
67129

@@ -82,31 +144,39 @@ IoT Central has two options for transforming telemetry messages:
82144
- Use [mappings](../iot-central/core/howto-map-data.md) to transform complex device telemetry into structured data on ingress to IoT Central.
83145
- Use [transformations](../iot-central/core/howto-transform-data-internally.md) to manipulate the format and structure of the device data before you export it to a destination.
84146

85-
## Process messages at the edge
147+
### IoT Edge message processing
86148

87149
An Azure IoT Edge module can process telemetry from an attached sensor or device before it sends it to an IoT hub. For example, before it sends data to the cloud an IoT Edge module can:
88150

89151
- [Filter data](../iot-edge/tutorial-deploy-function.md)
90-
- Aggregate data
152+
- [Aggregate data](../iot-edge/tutorial-deploy-stream-analytics.md)
91153
- [Convert data](../iot-central/core/howto-transform-data.md#data-transformation-at-ingress)
154+
- [Perform image classification at the edge](../iot-edge/tutorial-deploy-custom-vision.md)
155+
156+
---
92157

93158
## Other cloud services
94159

95-
You can use other Azure services to process telemetry messages from your devices. Both IoT Hub and IoT Central can route messages to other services. For example, you can forward telemetry messages to:
160+
You can use other cloud services to process messages from your assets and devices.
161+
162+
Data flow endpoints in Azure IoT Operations let you connect to cloud services to send and receive data from your assets. A data flow endpoint is the connection point for the data flow.
163+
164+
To learn more, see:
96165

97-
[Azure Stream Analytics](../stream-analytics/stream-analytics-introduction.md) is a managed stream processing engine that is designed to analyze and process large volumes of streaming data. Stream Analytics can identify patterns in your data and then trigger actions such as creating alerts, sending information to a reporting tool, or storing the transformed data. Stream Analytics is also available on the Azure IoT Edge runtime, enabling it to process data at the edge rather than in the cloud.
166+
- [Configure data flow endpoints](../iot-operations/connect-to-cloud/howto-configure-dataflow-endpoint.md)
167+
- [Configure data flows in Azure IoT Operations](../iot-operations/connect-to-cloud/howto-create-dataflow.md)
98168

99-
[Azure Functions](../azure-functions/functions-overview.md) is a serverless compute service that lets you run code in response to events. You can use Azure Functions to process telemetry messages from your devices.
169+
In IoT Hub and IoT Central, you can route messages to other services. For example, you can forward messages to [Azure Stream Analytics](../stream-analytics/stream-analytics-introduction.md) to analyze and process large volumes of streaming data or to [Azure Functions](../azure-functions/functions-overview.md) to run code in response to events. Stream Analytics is also available on the Azure IoT Edge runtime, enabling it to process data at the edge rather than in the cloud.
100170

101171
To learn more, see:
102172

103173
- [Azure IoT Hub bindings for Azure Functions](../azure-functions/functions-bindings-event-iot.md)
104174
- [Visualize real-time sensor data from Azure IoT Hub using Power BI](../iot-hub/iot-hub-live-data-visualization-in-power-bi.md)
105175
- [Extend Azure IoT Central with custom rules using Stream Analytics, Azure Functions, and SendGrid](../iot-central/core/howto-create-custom-rules.md)
106176

107-
## Next steps
108177

109-
Now that you've seen an overview of device management and control in Azure IoT solutions, some suggested next steps include:
178+
## Related content
110179

111180
- [Extend your IoT solution](iot-overview-solution-extensibility.md)
112181
- [Analyze and visualize your IoT data](iot-overview-analyze-visualize.md)
182+
- [What Azure technologies and services can you use to create IoT solutions?](iot-services-and-technologies.md)

0 commit comments

Comments
 (0)