Dashboard > CI Development > ... > Elaboration Coordination > CEI Dependencies
Log In   View a printable version of the current page.
CI Development
CEI Dependencies
Added by David Stuebe , last edited by Steve Foley on Mar 17, 2010  (view change) show comment
Labels: 
(None)


[[ Note: main capabilities of CEI (the "EPU") are not directly 'acquired'/'linked' to other subsystems except as a sort of 'side effect' of using messages via COI.  Just pointing out in case it is not clear that for CEI in particular, functional dependency is separate from triggers and direct interactions between code modules." ]]

Dependency Table

Other subsystems depend on the functionality provided by Common Execution Infrastructure as shown in the following table. Each X requires a discussion between subsystem leads and architects to clearly understand the dependency and the interface.

Functionality
COI
DM
S&A
I A
Notes
Virtualized computing resource provisioning, operations and maintenance X X X ?  
Provisioning parameterized configurations of service and application modules into compute node deployment packages X X X ?
Monitoring and provisioning compute nodes based on compute resource utilization and latency of provisioning         This is functionality used to provide other functionality to subsystems (it is
information used to know when to scale, other information is also used).
On-demand scheduling of processes X X X X Job scheduling is functionality handled in a "batch" oriented way in R1.
More "capacity" will allow more processes to be run in an on-demand way.
Optimized scheduling of stream process subscriptions   X     Job scheduling is functionality handled in a "batch" oriented way in R1.
More "capacity" would allow more processes to be run in a high priority way.
Is priority based scheduling in R1?
Extendable process execution environment that supports multiple execution formats X X X ? VM images will represent the different execution formats.
An extendable set of process execution engines         Though this was a COI concern.  This is referring to how a message is received
in a capability container and sent to some local execution engine like MatLab etc.? See (2)
Federation of process execution service providers, and process control interface          
Immediate-mode scheduling of processes at specified locations         See "Optimized scheduling of stream process subscriptions" above.  Priority?
Coupling of processes to the streaming environment of the Data Management subsystem         DM concern
Coordinated and/or chained scheduling of processes         Workflow service?
Standard process execution planning and control X X X X  
Standard provenance capture and reporting       X An archive of what ran when and where?  COI concern? See (1)
Process authoring and monitoring applications that will be integrated as a user interface to the CEI include MatLab and Kepler         See "process execution engine" above.

Notes:

  1. COI provides just the means for archiving the "logs" of what/when/where was executed. The right process has two parts:
    1. Definition and Setup of repositories
      CEI provides to DM a) a specification/data model for such log entry; b) a data model/schema/specification of how a repository for such information would look like; c) a set of operations that CEI would require from that repository (e.g., read, write, query, etc). DM provides an abstract specification/models of these (and others similar) to COI for implementation/provisioning. COI picks up the appropriate technology choice to support the capabilities required by the abstract spec from DM; DM extends (if needed) the operations associated with the abstract spec to support the capabilities required by CEI.
    2. Operation
      Using CEI capabilities, the COI instantiates the necessary number of capability containers/deployable units/EPUs (depends on the specific technology used to implement the repository) to bring up the repository services required by CEI to store the "logs". CEI uses the DM implemented operations to communicate with those services and store/update/etc the "logs".
  2. The set of process execution engines refers to the availability of a number of preconfigured environments within the deployable types & units that can support applications/processes written in different languages or requiring custom environments. For instance, plain Java VM, Tomcat servlet containers, Matlab scripts, etc. Similarly with note (1), the CEI is responsible for providing the specifications for a repository that would contain these entities to DM, which would abstract them and pass for implementation to COI. For instance, the set might contain groups of packages with the right dependencies that can extend a deployable type to support the necessary processes. In this example, each group could be described by a name, a list of packages, and a binary archive of those packages.

Powered by Atlassian Confluence 2.7.1, the Enterprise Wiki. Bug/feature request - Atlassian news - Contact administrators