SAGA
Encyclopedia
SAGA or "Simple API for Grid Aapplications" is the name of a family of related standards specified by the Open Grid Forum
Open Grid Forum
The Open Grid Forum is a community of users, developers, and vendors for standardization of grid computing. It was formed in 2006 in a merger of the Global Grid Forum and the Enterprise Grid Alliance. The OGSA, OGSI, and JSDL standards were created by the OGF...

 to define an application programming interface (API), for common distributed computing functionality.

Overview

The SAGA specification for distributed computing originally consisted of a single document, GFD.90, which was released in 2009.

Scope

The SAGA API does not strive to replace Globus
Globus Toolkit
The Globus Toolkit, currently at version 5, is an open source toolkit for building computing grids developed and provided by the Globus Alliance.-Standards implementation:The Globus Toolkit is an implementation of the following standards:...

 or similar grid computing
Grid computing
Grid computing is a term referring to the combination of computer resources from multiple administrative domains to reach a common goal. The grid can be thought of as a distributed system with non-interactive workloads that involve a large number of files...

 middleware systems, and does not target middleware developers, but application developers with no background on grid computing. Such developers typically wish to devote their time to their own goals and minimize the time spent coding infrastructure functionality. The API insulates application developers from middleware.

The specification of services, and the protocols to interact with them, is out of the scope of SAGA. Rather, the API seeks to hide the detail of any service infrastructures that may or may not be used to implement the functionality that the application developer needs. The API alignes, however, with all middleware standards within Open Grid Forum
Open Grid Forum
The Open Grid Forum is a community of users, developers, and vendors for standardization of grid computing. It was formed in 2006 in a merger of the Global Grid Forum and the Enterprise Grid Alliance. The OGSA, OGSI, and JSDL standards were created by the OGF...

 (OGF).

The SAGA API is designed to be extensible: a well defined mechanism exists to specify additional API packages which expand the scope of the API as needed. The SAGA Core API itself defines a number of packages: job management, file management, replica management, remote procedure calls, and streams. A large part of the SAGA Core API specification

Standardization

SAGA was standardized by the Open Grid Forum
Open Grid Forum
The Open Grid Forum is a community of users, developers, and vendors for standardization of grid computing. It was formed in 2006 in a merger of the Global Grid Forum and the Enterprise Grid Alliance. The OGSA, OGSI, and JSDL standards were created by the OGF...

.
  • SAGA Use Cases: an experimental OGF document describing the target use cases for SAGA.
  • SAGA Requirement Analysis: another experimental OGF document which extracts specific requirements from the use case document.
  • The SAGA Core API Specification: the basis of the standard, defines the Look and Feel
    Look and feel
    In software design, look and feel is a term used in respect of a graphical user interface and comprises aspects of its design, including elements such as colors, shapes, layout, and typefaces , as well as the behavior of dynamic elements such as buttons, boxes, and menus...

    of the SAGA API.
  • SAGA API Extensions: additional functional API extensions which use the Look and Feel of the SAGA API.
  • SAGA API Language Bindings: mapping of the language neutral SAGA API to various programming languages.


The SAGA Core API specification covers the following non-functional areas:
  • security and session management
  • permission management
  • asynchronous operations
  • monitoring
  • asynchronous notifications
  • attribute management
  • I/O buffer management


The SAGA Core API specification covers the following functional areas:
  • job submission and management
  • management of namespaces
  • file I/O
  • replica management
  • streaming (modeled after BSD sockets)
  • remote procedure calls


The following functional areas are supposed to be covered by SAGA API extensions:
  • service discovery
  • message exchange
  • storage of application level information
  • database access and integration
  • checkpoint management and recovery

Implementations

Since the SAGA standard is not bound to a specific programming language, several implementations of the SAGA
standards exist in different programming languages. Apart from the supported languages, they differ from each other in their completeness in terms of the standard coverage, as well as in the distributed middleware the support. The following table lists all currently known, public implementations :
Name Programming Language(s) Standard Coverage Supported Middleware
Bliss Python text for row 2, column 3 text for row 1, column 1
DESHL Python text for row 2, column 3 text for row 1, column 1
JavaSAGA Java text for row 1, column 3 text for row 1, column 1
JSAGA Java text for row 1, column 3 text for row 1, column 1
SAGA C++ C++ / Python text for row 1, column 3 text for row 1, column 1





External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK