Inferensys

Glossary

Data Access

The OPC UA service set that defines how Clients read, write, and monitor the current value and status of Variable Nodes representing real-time process data.
Data scientist building training data pipeline on laptop, data preprocessing visible, technical workspace.
OPC UA SERVICE SET

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.

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.

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.

CORE CAPABILITIES

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.

01

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.
02

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.
03

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.
04

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.
05

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_SensorFailure or Uncertain_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.
06

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.
DATA ACCESS

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.

OPC UA SERVICE SET COMPARISON

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.

FeatureData AccessHistorical AccessAlarms & 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

Prasad Kumkar

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.