Evolutionary Data Models

Many of our customers have asked us to integrate support for the popular Google Protocol Buffers (GPB) into Vortex as this is a widely accepted, well known and proven technology to capture evolutionary data-models in a language- and platform-neutral way.

Google Protocol Buffers

Vortex now has seamless integration with this technology where users can define their topic-types in so-called '.proto' files rather than in explicitly formatted 'traditional' IDL files and benefit from GPB specific features such:

  • optional fields
  • default field values
  • added / new fields

It is especially the capability to add new fields without breaking backwards compatibility that provides the 'evolutionary character' to this alternative way of dealing with topic types. The integration targets a seamless experience for both existing GPB users as well as existing Data Distribution Service (DDS) users:
For existing GPB users:

  • there is no notion (nor related knowledge) of OMG-IDL anymore
  • applications only interact with GPB-types (using generated field-accessors), not with OMG-DDS datatypes

For existing DDS users:

  • data-centricity and content-awareness are preserved by allowing (optional) annotation of (key) fields in the .proto files
  • thus realizing a global-dataspace of extensible proto-buffers
  • existing DDS entities (participants, publishers, subscribers, readers, writers) and QoS policies remain 'untouched'
  • tooling such as the Vortex OpenSplice Tester handles IDL and evolutionary GPB types transparently & concurrently