posted on Tuesday, September 18, 2012 - 02:06 pm
I have few questions about what DDS can do. I have a data acquisition system which acquire data from a lots of sensors (1000 sensors) at 20 samples per seconds (each sample is about 80 bytes). Those data are then sent to a visualization software that draws charts and graphs. I read a lot of documents about DDS and it looks very good but I am not sure I could replace my sending system (between data acquisition and visualization software) with DDS. Could it scale with that much data at that speed ? I'm used to sent data by packets (ie grouped in one network packet) and then extract data from those packets. The idea of writing and reading "sample" is good but will it be efficient for my needs ?
If I did my math right, your aggregate throughput is about 12.8 MBps. This should be no problem for OpenSplice DDS.
In addition, if you would like to have better network utilisation and finely control data batching, you could take advantage of OpenSplice Streams API. This extensions is available starting with OpenSplice v6.2.
Perhaps the next step would be to craft a quick prototype and see what you get. Would be interesting for you to try with, and without, streams.