How big can the Opensplice DDS persistent datas be?

How big can the Opensplice DDS persistent datas be?

This depends on your definition of putting persistent data.
In OpenSplice-DDS there are multiple ways to save non-volatile data by persisting it on some non-volatile media. The first way is to publish data as PERSISTENT (durability-QoS) in combination with having one or more durability-services (which are standard available in the OpenSplice core [LGPL-v3], i.e. not an optional/commercial feature). When starting up the system, the durability-services (typically of the first node that starts) will inject the persisted data into the global data-space and with that its available to each application (which can block for this information to be injected via the wait_for_historical_data API). A typical limitation of the size of persistent data is the size of available memory to hold it once published (or put in DDS_terminology: the resource-limits as specified for the durability-service, expressed in max_samples, max_samples_per_instance and max_instances for each persistent topic). Note that you could PERSISTENT data as a subset of TRANSIENT data and if youd have multiple durability-services configured, these will align each other on startup (and/or adding a new node that also has a durability-service configured) resulting in this PERSISTENT data to be instantly available when applications start and/or join an already running system.

The second way is to utilize an add-on that transparently replicates (2-way) data between DDS and a DBMS (ODBC 3.0 compliant) system. OpenSplice DDS has a pluggable service for this called DBMSConnect which can be configured to forward data in both directions, either event-based or state-based (down-sampled) as well as potentially filter on contents.

The third way (for OpenSplice) is to use a generic gateway product called OpenSplice Gateway that makes use of Apache Camel and thus all of the connectors available for that infrastructure. Here you can define routes and endpoints that allow your DDS-data to be routed to/from over 80 non-DDS technologies including relational-database systems that would then allow to persist your DDS-information.

Hope this helps somewhat,


How big can the Opensplice DDS persistent datas be?

Leave a Reply

Your email address will not be published.