Factory Data Foundation
Available inEdgeCloudEnterprise
In Tier0, factory data is organized into clear, tree-structured models based on UNS (Unified Namespace) methodology, forming a unified data foundation.
Data Foundation Architecture
Section titled “Data Foundation Architecture”- The broker receives and sends data through model topics.
%%{init: {"flowchart": {"defaultRenderer": "elk", "nodeSpacing": 32, "rankSpacing": 48, "diagramPadding": 8}}}%%
flowchart TB
source["Data Source / Consumer"]
subgraph UNS["Unified Namespace"]
direction LR
Model["Model<br/>Defines paths,<br/>topics, and payloads"]
Broker["Broker<br/>Handles data exchange"]
Storage["Storage<br/>Persists data"]
Model <--> Broker
Broker --> Storage
end
source <-- "MQTT / API" --> UNS
classDef broker fill:#F7FAF2,stroke:#D8E6B8,stroke-width:1px,color:#2A2A2A,stroke-dasharray:5 5
class Broker broker- Models are categorized into three types, Metric, State, and Action.
- Data is stored in different databases based on model type.
- Action/State: JSONB (PostgreSQL)
- Metric: Real-time data (TSDB)
%%{init: {
"themeVariables": {
"fontSize": "14pt"
},
"flowchart": {
"defaultRenderer": "elk",
"nodeSpacing": 40,
"rankSpacing": 56,
"diagramPadding": 8
}
}}%%
flowchart LR
subgraph Model["Model Type"]
direction TB
metric["Metric<br/>High-frequency numeric data"]
state["State<br/>Current facts or status"]
action["Action<br/>Commands or requested operations"]
end
subgraph Storage["Storage"]
direction TB
tsdb["TSDB<br/>Time-series storage<br/>for Metric history"]
jsonb["JSONB<br/>Document storage<br/>for State and Action"]
end
metric --> tsdb
state --> jsonb
action --> jsonbBroker
Section titled “Broker”The UNS broker is the platform component that receives and sends data through MQTT or OpenAPI based on data models.
- By MQTT: The complete path of each node in the model tree works as the MQTT topic address to pass the message payload.
- By OpenAPI: Perform CRUD commands on data models through HTTP requests.
Metric, State, Action
Section titled “Metric, State, Action”Industrial data changes at different frequencies and serves different purposes, so Tier0 separates UNS models into three fixed types.
| Type | Object | Example |
|---|---|---|
METRIC |
Designed for high-frequency data that is collected continuously and needs time-series storage. | Machine temperature/pressure/voltage |
STATE |
Designed for data that changes less often and describes the current condition or fact of an object. | Machine operational status |
ACTION |
Designed for lower-frequency command data that records what an external system or operator should execute. | Start batch, stop machine |
Path/Topic, Payload
Section titled “Path/Topic, Payload”Each UNS model contains path, topic, and payload. Together, they form a tree structure that carries business context and transmits industrial data.
- Path/Topic: The path represents data ownership, and the topic carries the message payload. Together, they define the model address.
- Payload: The message payload held by the topic. It is JSON in a key-value format and defines the model data. For example, a model in UNS looks like the tree displayed below:
Factory_A└── Site_01 └── SMT_Line_1 └── Metric └── Machine_001- Path:
Factory_A/Site_01/SMT_Line_1/Metric - Topic:
/Machine_001. - Payload
Terminal window "temperature": 85,"vibration": 2.8,
Factory_A└── ERP └── ProductionOrders └── State └── OrderList- Path:
Factory_A/ERP/ProductionOrders/State - Topic:
/OrderList. - Payload
Terminal window "orders": "0123569876","updated_at": 2026-7-13,
Storage
Section titled “Storage”Tier0 uses PostgreSQL to store data. Different data types change at different rates and have different storage requirements.
| Data Type | Storage | Description |
|---|---|---|
METRIC |
TSDB | Optimized for high-frequency measurements such as temperature and pressure. Each topic includes default fields: timestamp and quality. |
STATE |
PostgreSQL | Stores machine or system states in a flexible JSONB format. |
ACTION |
PostgreSQL | Stores commands or actions in a flexible JSONB format. |
- Connect Data to UNS - How to model your plant to UNS and connect data to the model.
- Working with UNS Data - How to operate on your UNS model through MQTT and APIs.