40.1 Collaborative DataWriters Use Cases

  • Ordered delivery of DDS samples in high availability scenarios
  • One example of this is RTI Persistence Service.1 When a late-joining DataReader configured with 59.9 DURABILITY QosPolicy set to PERSISTENT or TRANSIENT joins a DDS domain, it will start receiving DDS samples from multiple DataWriters. For example, if the original DataWriter is still alive, the newly created DataReader will receive DDS samples from the original DataWriter and one or more RTI Persistence Service DataWriters (PRSTDataWriters).

  • Ordered delivery of DDS samples in load-balanced scenarios
  • Multiple instances of the same application can work together to process and deliver DDS samples. When the DDS samples arrive through different data-paths out of order, the DataReader will be able to reconstruct the order at the source. An example of this is when multiple instances of RTI Persistence Service are used to persist the data. Persisting data to a database on disk can impact performance. By dividing the workload (e.g., DDS samples larger than 10 are persisted by Persistence Service 1, DDS samples smaller or equal to 10 are persisted by Persistence Service 2) across different instances of RTI Persistence Service using different databases the user can improve scalability and performance.

  • Ordered delivery of DDS samples with Group Ordered Access
  • The Collaborative DataWriters feature can also be used to configure the DDS sample ordering process when the Subscriber is configured with 58.4 PRESENTATION QosPolicy access_scope set to GROUP. In this case, the Subscriber must deliver in order the DDS samples published by a group of DataWriters that belong to the same Publisher and have access_scope set to GROUP.

Figure 40.2: Load-Balancing with Persistence Service