Best practice for handling large-scale OPC UA Structured DataTypes / ExtensionObjects

Hi all,

We have a shopfloor where most machine data is exposed via OPC UA Structured DataTypes / ExtensionObjects instead of simple atomic tags. This is based on a standard machine information model, so values and metadata like unit, limits, ID, timestamp, status, etc. come together as one structured object.

The overall scale is large around 100k shopfloor tags/signals follow this pattern.

I understand Ignition can connect and read these, but practically they seem to come in as Document/JSON rather than fully expanded member tags.

I wanted to ask what is the best and most scalable way to handle this in Ignition.

  • Should we keep the structured object as the source and only extract required members into derived tags?

  • Should we flatten things upstream before Ignition?

  • Is there a recommended UDT-based abstraction approach in Ignition for this?

  • What are the real performance concerns at this scale for subscriptions, tag count, memory, historian, alarming, and UI bindings?

  • Any known limitations with custom structured datatypes / ExtensionObjects / datatype definitions in current Ignition versions?

Mainly looking for best practice from people who have implemented this in production, especially at large scale.

Some key information that will inform whatever decision you make is:

  • does the server also expose the structure members as their own variable nodes in the address space?
  • is this a "real" server that could handle the load of 100k monitored items, or an embedded server on a PLC where it's crucial you only create monitored items for the structure value nodes?
2 Likes

Hi Kevin ,

does the server also expose the structure members as their own variable nodes in the address space? - Yes this tags will be exposed to MES via Ignition OPC UA server
is this a "real" server that could handle the load of 100k monitored items, or an embedded server on a PLC where it's crucial you only create monitored items for the structure value nodes? - Not one single server but combination of 4 gateways with EAM

Thanks