Data Access is the core OPC UA service set that enables a Client to interact with the current state of Variable Nodes in a Server's Address Space. It provides the fundamental Read and Write services for synchronous and asynchronous retrieval and modification of a Node's Value, StatusCode, and SourceTimestamp attributes, forming the basis of all real-time industrial data exchange.
Glossary
Data Access

What is Data Access?
The Data Access service set defines the standardized mechanisms by which an OPC UA Client reads, writes, and monitors the current value and status of Variable Nodes representing real-time process data.
Beyond simple polling, Data Access includes the Subscription and Monitored Item model for efficient change-driven updates. A Client creates a Subscription to group Monitored Items, each specifying a Node attribute to watch and a Sampling Interval. The Server then publishes Notification Messages only when changes occur, with optional Deadband Filters to suppress insignificant fluctuations, dramatically reducing network overhead compared to continuous polling.
Key Features of the Data Access Service Set
The Data Access service set forms the backbone of real-time industrial communication in OPC UA, defining how Clients interact with the current state of automation systems. It provides standardized mechanisms for reading, writing, and monitoring live process variables with rich metadata and quality context.
Synchronous & Asynchronous Read
The Read Service allows a Client to retrieve the current value, timestamp, and quality of one or more Variable Node attributes in a single request. OPC UA supports both synchronous (blocking) and asynchronous (non-blocking) invocation models.
- Synchronous Read: The Client thread waits for the Server to process and return the complete result set before continuing execution.
- Asynchronous Read: The Client issues the request and continues processing; the Server delivers results via a callback when ready.
- Optimized Bulk Reads: A single Read request can target multiple Nodes across different areas of the Address Space, minimizing round-trip latency.
Write with Index Range Support
The Write Service allows a Client to modify the current value of writable Variable Nodes. Beyond simple scalar updates, OPC UA supports IndexRange parameters for partial writes into arrays and matrices.
- Scalar Write: Update a single value, such as a setpoint temperature.
- Array Write: Modify a specific element within an array using an IndexRange (e.g.,
[5]to target the sixth element). - Matrix Write: Update a sub-region of a two-dimensional matrix using multi-dimensional IndexRanges.
- StatusCode Return: Each write target receives an individual StatusCode, allowing partial success in bulk operations.
Subscription & Monitored Items
Instead of polling, Clients create Subscriptions that contain Monitored Items to receive automatic, event-driven notifications when data changes. This publish-subscribe pattern within the Client-Server model drastically reduces network overhead.
- Sampling Interval: The rate at which the Server evaluates a Monitored Item's value for changes.
- Publishing Interval: The cadence at which the Subscription delivers queued notifications to the Client.
- Queue Size: Defines how many notifications the Server buffers if the Client is temporarily unreachable.
- Keep-Alive: Periodic empty messages ensure the Subscription remains active and the connection is healthy.
Data Change Filters & Deadbands
To suppress noise and reduce unnecessary network traffic, Monitored Items can be configured with Data Change Filters. The most common is the Deadband Filter, which prevents notifications unless a value change exceeds a defined threshold.
- Absolute Deadband: A notification triggers only if
|current_value - last_reported_value|exceeds the deadband value. - Percent Deadband: The threshold is calculated as a percentage of the engineering unit range (EURange) of the Variable.
- StatusCode Triggers: Notifications can also be configured to fire on StatusCode changes alone, even if the value remains static.
- Filter Operand: Advanced filters allow Clients to specify complex trigger conditions using mathematical operands.
StatusCode & Quality Context
Every Data Access value is accompanied by a StatusCode that encodes the operational quality, sub-status, and limit conditions of the measurement. This is critical for deterministic control logic.
- Quality Bits: Indicate Good, Bad, or Uncertain data quality at a glance.
- Sub-Status: Provides granular detail, such as
Bad_SensorFailureorUncertain_LastUsableValue. - Limit Bits: Flag whether a value is at a High, Low, or Constant engineering limit.
- Source Timestamp: Marks the exact moment the data was sampled at the physical sensor or controller.
Browsing the Address Space
Before reading or writing, a Client must discover what data is available. The View Services (Browse, BrowseNext) allow Clients to navigate the Server's Address Space hierarchically and programmatically.
- Browse: Starting from a root Node, the Client requests the list of forward References (e.g.,
HasComponent) to discover child Nodes. - BrowseNext: Used when the Server's response indicates more results are available than fit in a single message.
- Type Filtering: Clients can restrict browsing to specific NodeClasses, such as only returning Variable Nodes.
- Continuation Points: Stateless pointers that allow a Client to resume a large browse operation across multiple requests.
Frequently Asked Questions
Clear answers to common questions about how OPC UA Clients read, write, and monitor real-time process data through the Data Access service set.
OPC UA Data Access is the core service set that defines how a Client reads, writes, and monitors the current value and status of Variable Nodes in a Server's Address Space. It works by exposing real-time process data—such as temperature, pressure, or speed—as standardized Nodes with attributes like Value, StatusCode, and SourceTimestamp. A Client establishes a Session over a Secure Channel, then uses the Read service to request current values, the Write service to modify control parameters, and Subscriptions with Monitored Items to receive automatic notifications when data changes. Unlike OPC Classic, OPC UA Data Access combines data, quality, and timestamp into a single atomic structure, ensuring that every value read carries its full context for reliable decision-making.
Data Access vs. Historical Access vs. Alarms & Conditions
A functional comparison of the three core OPC UA service sets governing real-time data, time-series history, and stateful eventing.
| Feature | Data Access | Historical Access | Alarms & Conditions |
|---|---|---|---|
Primary Function | Read, write, and monitor current values and status of Nodes | Retrieve, aggregate, and analyze stored time-series data and events | Detect, signal, acknowledge, and confirm abnormal system states |
Data Temporality | Real-time (current snapshot) | Past (stored history) | Stateful (transition-driven) |
Typical Use Case | HMI visualization of live process values | Trend analysis and regulatory compliance reporting | Safety shutdowns and operator alerting |
State Management | |||
Supports Aggregation Functions | |||
Requires Acknowledgment | |||
Monitored Item Support | |||
Data Encoding | UA Binary, JSON | UA Binary, JSON | UA Binary, JSON |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Core OPC UA services and mechanisms that enable structured, secure, and efficient real-time data exchange between industrial clients and servers.
Read Service
The primary synchronous request/response mechanism used by a Client to retrieve the current value, status, and timestamp of one or more Variable Node Attributes. The Client specifies a list of ReadValueIds, each containing a NodeId and an AttributeId. The Server returns a corresponding list of DataValues with a StatusCode indicating quality. This service supports max-age parameters, allowing a Client to request a value from the Server's cache if it is fresher than a specified interval, optimizing for speed over absolute accuracy in high-frequency polling scenarios.
Write Service
The synchronous mechanism for a Client to update the values of one or more Variable Nodes. Each write operation targets a specific NodeId and AttributeId, sending a new DataValue. The Server validates the request against the Node's DataType, ValueRank, and access level permissions defined in the Address Space. A successful write updates the SourceTimestamp and triggers associated Subscriptions to notify other Clients of the change. This service is critical for sending setpoints, commands, and configuration parameters to industrial equipment.
MonitoredItem & Subscription
The asynchronous, event-driven alternative to polling. A Client creates a Subscription within a Session to define pacing and publishing intervals. Within that Subscription, the Client adds MonitoredItems, each watching a specific Node Attribute. The Server samples the value at a configurable SamplingInterval and queues a NotificationMessage only when a change exceeds the Deadband Filter threshold. This model drastically reduces network overhead compared to continuous polling, making it essential for high-frequency sensor telemetry and alarm monitoring.
Historical Access
Extends basic Data Access by defining how Clients retrieve time-series data and event logs stored in a Server's historian. Rather than just reading the current value, a Client can call HistoryRead to request raw data, aggregated summaries, or modified values over a specified time domain. Common aggregates include Interpolative, Average, and TimeAverage2. This service set is foundational for predictive maintenance algorithms and post-incident root cause analysis, allowing engineers to replay and analyze process behavior leading up to a failure event.
Alarms & Conditions
A stateful eventing model that goes beyond simple threshold violations. Unlike a basic MonitoredItem that reports a value crossing a limit, an Alarm is a specific Condition type with a defined lifecycle: Inactive, Active, Acknowledged, and Confirmed. A LimitAlarm monitors a Variable against a high or low setpoint. When triggered, it requires explicit human acknowledgment via the Acknowledge Method. This two-way handshake ensures critical safety interlocks and process deviations are not just logged but actively managed, supporting ISA-18.2 alarm management standards.
Deadband Filter
A critical data suppression mechanism applied to a MonitoredItem to prevent network flooding from noisy analog signals. The AbsoluteDeadband filter calculates the change between the last reported value and the current sample. A notification is generated only if the absolute difference exceeds the defined threshold. For example, a temperature sensor fluctuating by ±0.1°C with a deadband of 0.5°C will not trigger updates until a meaningful thermal shift occurs. This filter is essential for preserving bandwidth in large-scale SCADA integrations.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us