The gProcess platform is an interactive toolset supporting the flexible description, instantiation, scheduling and execution of the Grid processing. The gProcess platform is a collection of Grid services and tools providing the following basic functionality:
- Visual manipulation based interactive description of the Grid based satellite image processing by pattern workflow like directed acyclic graph (DAG);
- Development of hypergraphs as complex composition of basic operators, Grid and Web services, and subgraphs;
- Pattern workflow instantiation for particular satellite image;
- Satellite data management, access and visualization;
- Workflow based Grid execution;
- Process execution control and visualization;
- Optimal execution for appropriate mapping of the processing over the Grid resources. The optimal processing is achieved in terms of code optimization, total execution time, and data communication costs over the Grid.
Architecture
The gProcess platform provides a flexible diagrammatical description solution for image processing workflows in the EO. At the conceptual level the algorithms are described by processing acyclic graphs, in which the nodes represent operators, services, sub-graphs and input data (e.g. satellite image bandwidths), and the arcs represent the execution dependencies between nodes. The development of the processing graphs implies two steps. The first step describes the conceptual Process Description Graph (PDG), as pattern processing a satellite image type (i.e. MODIS, Landsat). The second step describes the Instantiated Process Description Graph (IPDG), by mapping the already created PDG pattern over a particular satellite image data. The IPDG description together with the input satellite data are actually the subject of Grid based execution.
The gProcess architecture is based on the client-server model (Fig. 2) . At the server side the Grid Infrastructure supports the access to computing resources and distributed databases through a set of services such as EditorWS, ManagerWS, ExecutorWS, and ViewerWS. The client side encapsulates Client Java API, User Oriented Application Level, and Applications. The Web and desktop applications access the gProcess services by the Client Java API level. A set of user interaction supporting components, such as EditorIC, ManagerIC, and ViewerIC are exposed through the User Oriented Application Level. It is the higher level of accessing the gProcess services through the Client Java API level as well. The last level of Applications combines the editor, manager, and viewer related functionality into complex user interaction tools.