bul 2004
systems.
ave such
Many of
s require
luct such
ormance
es, those
ject and
set idle,
data to
xpensive
his is the
lon and
/ are not
IN THE
ormation
specific
current
roviding
on and
instream
eospatial
ly-to-use
neans an
to deal
tial data
eospatial
t enough
cospatial
1 nature
re/model
] how to
the data
back to
n can be
problem
requires
ybe only
. Even if
Pars, the
e (SOA)
advance
iction of
capable
tems can
iScovery.
an focus
tion and
t of time
will also
\putation
E AND
o enable
ronment.
business
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B2. Istanbul 2004
services available over the Internet. However, it is impossible
for individual standalone services to meet all service
requirements of many users. However, such information
requests could be met by dynamically chaining multiple
services provided by single and multiple service providers. The
service-oriented architecture (SOA) recognizes this and tries to
construct a distributed, dynamic, flexible, and re-configurable
service system over Internet that can meet many different users’
information requirements.
The key component in the service-oriented architecture is
services. A service is a well-defined set of actions. It is self-
contained, stateless, and does not depend on the state of other
services. Stateless means that each time a consumer interacts
with a service, an action is performed. After the results of the
service invocation have been returned, the action is finished.
There is no assumption that subsequent invocations are
associated with prior ones. In the service-oriented architecture,
the description of a service is essentially a description of the
messages that are exchanged between the consumer and the
service. Standard-based individual services can be chained
together to solve complex tasks. The basic operations in SOA
include publish, find, bind, and chain (Figure 1).
2. Find I. Publish
Figure 1. The basic service operations
There are three types of key actors in SOA, including the
providers who provide specific services over the Internet, the
requesters (users) who request information services, and the
brokers who help the requestors to find the right services. When
à service provider sets up a service over the Internet and wants
users to use his service, he needs to publish the service
descriptions to a broker (eg, a registry, catalog or
clearinghouse). When a requestor requests a service, the
requestors and service brokers need to collaborate to find the
right services. Service requestors describe the kinds of services
they’re looking for to the broker and the broker delivers the
results that match the request back to the requestor. After the
right service is found, a service requestor and a service provider
negotiate as appropriate so the requestor can access and invoke
services of the provider (bind). In many cases, a sequence of
services must be bound together to produce the user-desired
results (chain).
189
The SOA can be implemented at many different network
environments. The major two include the Web and the Grid.
The implementation of SOA in the web environment is called
Web services. Web services are self-contained, self-describing,
modular applications that can be published, located, and
dynamically invoked across the Web. Web services perform
functions, which can be anything from simple requests to
complicated business processes. Once a Web service is
deployed, other applications (and other Web services) can
discover and invoke the deployed service. The real power of
web services relies on
* Everyone on the Internet can set up a web service to
provide service to anyone who wants—many services will
be available.
e The standard-based services can be chained together
dynamically to solve complicated tasks — Just in-time
integration.
The Grid is a rapid developing technology originally motivated
and supported from sciences and engineering requiring high-
end computing, for sharing geographically distributed high-end
computing resources (Foster et al. 2002, 2001; Foster and
Kesselman, 1999). The vision of the Grid is to enable resource
sharing and coordinated problem solving in dynamic, multi-
institutional virtual organizations (Foster et al, 2001). It
provides on-demand, ubiquitous access to computing, data, and
services and constructs new capabilities dynamically and
transparently from distributed services. The key for the Grid
success is the open source middleware called Globus Toolkit
(Foster and Kesselman, 1998; Globus 2004). It has become a de
facto standard for all major Grid implementations. The
implementation of services in Grid environment is called the
Grid services.
The latest major version of Globus is Globus 3.0, which
implemented the Open Grid Service Architecture (Foster et al.,
2002). The fundamental concepts of services in the Grid are the
same as the Web services. However, they do have differences.
A Web service can be invoked by any requestors over the Web
while a Grid service can only be invoked by the requestors
within the virtual organization. The web service practices also
have been extended in Grid to accommodate the additional
requirements of Grid services, including
e Stateful interactions between consumers and services
e Exposure of a web service's "publicly visible state"
e Access to (possibly large amounts of) identifiable data
e Service lifetime management
Currently the Grid and Web communities are converging
through the Web Service Resource Framework (WSRF) (GGF,
2004).
In order for SOA to work, interoperability standards related to
all aspects of service operations are needed. The major
international bodies setting the web service standards are
World-Wide Web Consortium (W3C, 2004) and Organization
for the Advancement of Structured Information Standards
(OASIS, 2004) while the body setting the Grid service
standards is the Global Grid Forum (GGF, 2004). The major
standards related to services are shown in Figure 2.