Line 1 was replaced by line 1 |
- Ring Buffered Network Bus (RBNB) was created by [Creare Inc.|http://www.creare.com/rbnb/index.html]. |
+ Ring Buffered Network Bus (RBNB) was created by [Creare Inc.|http://www.creare.com/rbnb/index.html]. It is also called Data Turbine. |
Line 3 was replaced by line 3 |
- Properties: |
+ !!Properties: |
Lines 8-12 were replaced by lines 8-24 |
- * Data is ''saved to'' and ''retrieved from'' the Data Turbine server by applications termed ''sources'' and ''sinks'', respectively. |
- ** Each source application generates its own ring buffer, which is managed by the Data |
- Turbine server. |
- ** Sink applications can request data from the Data Turbine server, which retrieves information from the appropriate ring buffer(s) and passes it back to the requesting sink application. |
- * Sources and sinks communicate with Data Turbine by passing messages via ''channel map'' objects. |
+ * Data is ''saved to'' and ''retrieved from'' the RBNB server by applications termed ''sources'' and ''sinks'', respectively. |
+ ** Each source application generates its own ring buffer, which is managed by the RBNB server. |
+ ** Sink applications can request data from the RBNB server, which retrieves information from the appropriate ring buffer(s) and passes it back to the requesting sink application. |
+ * Sources and sinks ''communicate'' with RBNB by passing messages via ''channel map'' objects. |
+ ** Each channel in a channel map is named and contains timestamped data. |
+ * An RBNB ''frame'' is created each time a channel map is written/flushed to disk. |
+ ** Size of a frame is variable. |
+ ** The sizes of both the cache and the archive are defined in terms of the number of frames. |
+ * Sink applications use channel maps to request data from the RBNB server in the following ways: |
+ ##''Subcribe'': The server pushes new data as it is received to the sink application's designated channel map. All data is sent to the application in a continuous stream regardless of whether the application can keep up. |
+ ##''Monitor'': The server pushes new data as it is received to the sink application's designated channel map. The server skips ahead, dropping data if necessary, if the sink application gets too far behind in its processing. |
+ ##''Request'': The sink application sends the server a channel map containing the name of the channel, timestamp, and duration of the requested data. The server responds by returning the channel map with the requested data filled in. |
+ |
+ \\ |
+ |
+ In REAP, we will start by designing a an API for RBNB operations and an ''RBNBSink'' actor that can operate in all three modes of using channel maps. We will build the actor based on the defined APIs. This is discussed in [RBNB Sink Actor Design page|RBNBSinkActorDesignAndAPI]. |
+ |