UDT's in a Reference Provider or MQTT Engine


I was wondering what the pros and cons of having UDT's in a reference provider with tags referencing the MQTT engine tags as opposed to having the UDT's in the MQTT Engine it self.

We have created all our UDT's in the MQTT engine and all our tag bindings are directly with these UDT's in MQTT Engine. We did this because someone told us that this would be the correct way to enable history in special regards to store and forward. Is this the case?

or should we port all our UDT's to a reference provider with reference tags? Would this inpact the our database logging in a negative way?