What is Azure Digital Twins?

Azure Digital Twins is a platform as a service (PaaS) offering that enables the creation of twin graphs based on digital models of entire environments. These environments could be buildings, factories, farms, energy networks, railways, stadiums, and more—even entire cities. These digital models can be used to gain insights that drive better products, optimized operations, reduced costs, and breakthrough customer experiences.

Leverage your domain expertise on top of Azure Digital Twins to build customized, connected solutions that:

  • Model any environment, and bring digital twins to life in a scalable and secure manner
  • Connect assets such as IoT devices and existing business systems
  • Use a robust event system to build dynamic business logic and data processing
  • Integrate with Azure data, analytics, and AI services to help you track the past and then predict the future

Azure Digital Twins capabilities

Here's a summary of the features provided by Azure Digital Twins.

Open modeling language

In Azure Digital Twins, you define the digital entities that represent the people, places, and things in your physical environment using custom twin types called models.

You can think of these model definitions as a specialized vocabulary to describe your business. For a building management solution, for example, you might define models such as Building, Floor, and Elevator. You can then create digital twins based on these models to represent your specific environment.

Note

Digital twins in Azure Digital Twins are different from device twins in IoT Hub. IoT Hub device twins often focus on describing the aspects and capabilities of a device itself, while twins in Azure Digital Twins are more conceptual representations that can store user-defined insights about a device or many related devices.

IoT Hub device twins can be connected to Azure Digital Twins as part of an end-to-end solution that represents devices across services.

Models are defined in a JSON-like language called Digital Twins Definition Language (DTDL), and they describe twins in terms of their state properties, telemetry events, commands, components, and relationships.

  • Models define semantic relationships between your entities so that you can connect your twins into a graph that reflects their interactions. You can think of the models as nouns in a description of your world, and the relationships as verbs.
  • You can also specialize twins using model inheritance. One model can inherit from another.

DTDL is used for data models throughout other Azure IoT services, including IoT Plug and Play (PnP) and Time Series Insights (TSI). This helps you keep your Azure Digital Twins solution connected and compatible with other parts of the Azure ecosystem.

Live execution environment

Digital models in Azure Digital Twins are live, up-to-date representations of the real world. Using the relationships in your custom DTDL models, you'll connect twins into a live graph representing your environment.

You can visualize your Azure Digital Twins graph in Azure Digital Twins Explorer, which provides the following interface for interacting with your graph:

Screenshot of Azure Digital Twins Explorer, showing a graph of nodes representing digital twins.

Azure Digital Twins provides a rich event system to keep that graph current with data processing and business logic. You can connect external compute resources, such as Azure Functions, to drive this data processing in flexible, customized ways.

You can also extract insights from the live execution environment, using Azure Digital Twins' powerful query API​. The API lets you query with rich search conditions, including property values, relationships, relationship properties, model information, and more. You can also combine queries, gathering a broad range of insights about your environment and answering custom questions that are important to you.

Input from IoT and business systems

To keep the live execution environment of Azure Digital Twins up to date with the real world, you can use IoT Hub to connect your solution to IoT and IoT Edge devices. These hub-managed devices are represented as part of your twin graph, and provide the data that drives your model.

You can create a new IoT Hub for this purpose with Azure Digital Twins, or connect an existing IoT Hub along with the devices it already manages.

You can also drive Azure Digital Twins from other data sources, using REST APIs or connectors to other services like Logic Apps.

Output to ADX, TSI, storage, and analytics

The data in your Azure Digital Twins model can be routed to downstream Azure services for additional analytics or storage. This is provided through event routes, which use Event Hub, Event Grid, or Service Bus to drive your desired data flows.

Some things you can do with event routes include:

This is another way that Azure Digital Twins can connect into a larger solution, and support your custom needs for continued work with these insights.

Azure Digital Twins in a solution context

Azure Digital Twins is commonly used in combination with other Azure services as part of a larger IoT solution.

A complete solution using Azure Digital Twins may contain the following parts:

  • The Azure Digital Twins service instance. This stores your twin models and your twin graph with its state, and orchestrates event processing.
  • One or more client apps that drive the Azure Digital Twins instance by configuring models, creating topology, and extracting insights from the twin graph.
  • One or more external compute resources to process events generated by Azure Digital Twins, or connected data sources such as devices. One common way to provide compute resources is via Azure Functions.
  • An IoT hub to provide device management and IoT data stream capabilities.
  • Downstream services to handle tasks such as workflow integration (like Logic Apps, cold storage, Azure Data Explorer, time series integration, or analytics).

The following diagram shows where Azure Digital Twins lies in the context of a larger Azure IoT solution.

Diagram showing input sources, output services, and two-way communication with both client apps and external compute resources.

Service limits

You can read about the service limits of Azure Digital Twins in the Azure Digital Twins service limits article. This can be useful while working with the service to understand the service's functional and rate limitations, as well as which limits can be adjusted if necessary.

Terminology

You can view a list of common IoT terms and their uses across the Azure IoT services, including Azure Digital Twins, in the Azure IoT Glossary. This resource may be a useful reference while you get started with Azure Digital Twins and building an IoT solution.

Next steps