Hi,
I provide two answers at varying levels of sophistication.
1) (Less detail answer) Yes! Of course MDS4 can do this, because
MDS4 can be used to publish, index, and query just about any kind of
information. From an architectural standpoint, this is well within
the scope of what one can do with MDS4. In fact, there is at least
one high-availability/production/heavily used system that does this:
the NSF TeraGrid. (See details below.)
2) (More detail answer) Yes and no. From a strictly "out of the
box" perspective, MDS4 will not do this for you without additional
work on your part. The kind of information that current Globus Web
services publish is not sufficient to allow you to discover and use
them without "out of band" knowledge of them. However, as noted
above, it is entirely possible to publish that "out of band" knowledge
in MDS4 and enable these things to be done. It just doesn't happen
automatically.
Example:
NSF's TeraGrid uses MDS4 to publish the information about the software
and services that are coordinated among the many resources deployed on
TeraGrid. As we started doing this, we found the limitation noted in
point (2): one could not use the "default" information published about
services to understand what each service does, and there were details
that were important to end users that needed to be added. So, that's
exactly what we did. We looked for an existing data schema to encode
the details, and couldn't find one that met our needs. So we designed
one ourselves (in coordination with the MDS4 developers, who know a
lot about good schema design), and are now using it to publish data
about TeraGrid's software and services.
An example of the results (this is a live query, not just a sample) is
available http://info.teragrid.org:8080/webmds/webmds?info=tgislocal&xsl=kitsregistration
. When you look at this page (quite complicated!), keep in mind that
this page is *not* for end users: it's for internal debugging
purposes. The end users see the data in a much nicer format
(interactive browsing, etc.) on the TeraGrid documentation website.
Good examples of how this data describes software and services would be:
a) In the "iu.teragrid.org" site's section, there is a subsection
called "app-support.teragrid.org." (This section contains the data on
software/services to support application development and execution.)
Click the "Software" link to expand the list of software. These are
all local software packages (compilers, libraries, languages) that are
available once you're logged into the system. The information service
provides the name, version, and details on how to add the tool to the
user environment for each. You can see the same information via a
ReST query at http://info.teragrid.org/restdemo/html/tg/sites/iu.teragrid.org/resources/bigred.iu.teragrid.org/kits/app-support.teragrid.org/software
.
b) For a service example, look at the subsection called "data-
movement.teragrid.org." (This section contains the data on software/
services to support data movement into or out of the system.) Click
the "Services" link to expand the list of services. These are all
services accessible remotely (some are Web services, some are not),
and the information service provides the name of the service, the type
of the service (protocol used), the version of the software, and the
service endpoint (host/port and/or WS URL). You can see the same
information via a ReST query at http://info.teragrid.org/restdemo/html/tg/sites/iu.teragrid.org/resources/bigred.iu.teragrid.org/kits/data-movement.teragrid.org/services
.
Note that in addition to the details about each software item and each
service, the information service also organizes the information into
functional areas: data movement, application development & runtime,
and so on. This is important information, too! A service may be
listed in more than one section if it supports more than one
functional area. But the important thing is that this allows users to
look up services based on the problem(s) they are supposed to help with.
For more details (such as the schema used by TeraGrid), see http://info.teragrid.org/
.
-- Lee
On Apr 20, 2008, at 3:02 AM, Lin Wan wrote:
Hi,
Can anyone tell me whether MDS4 can provide Grid Service's
Description Query ? (such as Grid Service's type, usage?)
--------------
Lin Wan
2008-04-20