Well, the bottom line is that the Siemens server will perform drastically better if you read only the top level structures and use the derived tags with jsonGet/jsonSet strategy (described here and elsewhere) to read/write the tags. Unless the structures contain some kind of system type that results in a "swiss cheese" structure that can't be written to, writing should generally work.
The problem with this strategy is it's a real pain in the ass to set up and work with.
I've seen others do an end-run around the Monitored Item limitations in the Siemens server by just using dedicated Tag Groups set to OPC polled/read mode instead of subscribe mode.