I don't have a deep enough insight into the OODT architecture
to know for sure how that would work.  From an architectural
point of view, it would be useful to have UML synchronization
diagrams that show the threads of computation and the message
passing that you need to undertake for this work.  It's a familiar
problem in the embedded systems world (avionics, multi-computer
automobile control systems with 80 computers per car).  A good
reference on this kind of design work is Bruce Douglass' "Real-Time
UML".  It might also be useful to find a copy of Klein, et al., 1993:
"A Practicioner's Handbook for Real-Time Analysis: Guide to
Rate Monotonic Analysis for Real-Time Systems", Kluwer.
It isn't clear whether you want to do the design for the hard
real-time kind of system (where the system fails if messages
aren't received within a set priority) or less stringent kinds of
systems.  Exception handling gets to be a really "interesting"
part of these kinds of designs.

Bruce B.


On Wed, Aug 6, 2014 at 11:29 AM, Michael Starch <starc...@umich.edu> wrote:

> All,
>
> I am working on upgrading OODT to allow it to process streaming data,
> alongside traditional non-streaming jobs.  This means that some jobs need
> to be run by the resource manager, and other jobs need to be submitted to
> the stream-processing.  Therefore, processing needs to be forked or
> multiplexed at some point in the life-cycle.
>
> There are two places where this can be done: workflow manager runners, and
> the resource manager.  Currently, I am  working on building workflow
> runners, and doing the job-multiplexing there because this cuts out one
> superfluous step for the streaming jobs (namely going to the resource
> manager before being routed).
>
> Are there any comments on this approach or does this approach make sense?
>
> -Michael Starch
>

Reply via email to