Hi Robert,


Don’t believe there are specific whitepapers/slides/video’s on the topic
but the following can be stated:

   - There are no imposed limits on the number of keys in OpenSplice
   - Keys are basically limited to primitive types (see preprocessor
   user-manual chapter 1.5.1)
   - Keys define the ‘dimensions’ of your storage and unique-key-values
   represent instances, so typically the more keys you have, the more
   instances you likely have
   - As instances are basically database-entries (into a reader-cache or
   transient-cache), the more instances, the bigger the database, the more
   memory is used and the slower are queries/reads/takes (this is especially
   true if you don’t properly manage the lifecycle of keys/instances i.e. keep
   increasing key-values without ever ending the lifecycle of ‘old’ instances
   by unregistering them by key-value)
   - Typically  when you exceed ‘tens of thousands’ (of instances),
   performance impact on todays’ platforms will become noticeable (both in
   reactivity as well as footprint)
   - W.r.t. topic-design/granularity: a good data-model is ‘key’ in DDS and
   granularity is typically driven by (a) the scope of a writer (i.e. the
   information available at that writer), (b) the ‘kind’ of data the publisher
   is writing (i.e. if its periodic measurements, you typically want that
   published in a volatile/best-effort topic, if its state-data,
   transient/reliable makes sense and if it’s a ‘setting’ then
   persistent/reliable makes sense). Note that since the data-model in DDS is
   relational (i.e. where shared key-attributes model relationships between
   topics), information from multiple related dataReaders can be reconstructed
   pretty easily at the subscriber side utilizing the relationships expressed
   by shared keys.



We do have architecture workshops related to the topic though (including
detailed information on the impact/overhead of any DDS-entity) ..



Regards,

Hans





* *

*Hans van 't Hag*

OpenSplice DDS Product Manager

PrismTech Netherlands

Email: [email protected]

Tel: +31742472572

Fax: +31742472571

Gsm: +31624654078



PrismTech is a global leader in standards-based, performance-critical
middleware.  Our products enable our OEM, Systems Integrator, and End User
customers to build and optimize high-performance systems primarily for
Mil/Aero, Communications, Industrial, and Financial Markets.
   ------------------------------

*From:* [email protected] [mailto:
[email protected]] *On Behalf Of *Feider, Robert
*Sent:* Wednesday, August 08, 2012 8:43 PM
*To:* [email protected]
*Subject:* [OSPL-Dev] Topic Construction Best Practices



I am looking for resources (white paper, slides, videos etc.) that describe
the best practices for creating DDS topics. In particular I am interested
in discussions about Data Type Key construction and what the implications
are (performance, scalability) of having a key that results in the creation
of a large number of data instances.  I have seen some anecdotal remarks
that this should not be done, but I’d like to understand the issue a bit
better as to what happens inside DDS and what the limits are.



Thanks for your help,

*Robert Feider*

Lockheed Martin, IS&GS Defense

719-277-4069

<<image001.jpg>>

_______________________________________________
OpenSplice DDS Developer Mailing List
[email protected]
Subscribe / Unsubscribe http://dev.opensplice.org/mailman/listinfo/developer

Reply via email to