Äîêóìåíò âçÿò èç êýøà ïîèñêîâîé ìàøèíû. Àäðåñ îðèãèíàëüíîãî äîêóìåíòà : http://www.adass.org/adass/proceedings/adass97/reprints/ferniquep.pdf
Äàòà èçìåíåíèÿ: Wed Apr 15 01:39:46 1998
Äàòà èíäåêñèðîâàíèÿ: Tue Oct 2 15:23:46 2012
Êîäèðîâêà:
Astronomical Data Analysis Software and Systems VII ASP Conference Series, Vol. 145, 1998 R. Albrecht, R. N. Hook and H. A. Bushouse, eds.

CDS GLU, a To ol for Managing Heterogeneous Distributed Web Services
P. Fernique, F. Ochsenbein and M. Wenger Centre de Donn´es astronomiques de Strasbourg, 11 rue de l'universit´ e e, 67000 STRASBOURG - FRANCE, Email: question@simbad.u-strasbg.fr Abstract. The Web development has been a very important milestone in unifying the access to remote databases : a unique user interface, a unique network protocol, and a hypertext link mechanism (via URLs Uniform Resource Links). But if creating URLs is easy, maintaining them is the real challenge for database managers. In this context, the CDS (Centre de Donn´es astronomiques de Strase bourg) has developed the GLU system (G´ ´ ateur de Liens Uniformes). ener This tool allows all managers participating in the system to describe and easily distribute the URL definitions required to access their databases. The GLU system ensures that all GLU members receive these definitions and will receive all future modifications. So, the GLU system is particularly adapted to design cooperative Web services, allowing one to generate links to other services which remains always up-to-date.

1.

Introduction

The World Wide Web has allowed significant progress towards astronomical service interoperability : the Web is understood through all the Internet, it is very easy to interface it with databases, and hypertext is a powerful concept to obtain good interoperability between databases. However for this last functionality, a keystone, the ability to define a unique access key to a given information location, the URN (Uniform Resource Name), is still missing. A IETF Working Group has been working on it for a few years, but there is presently no implementation of such a system (Berners-Lee 1994) Therefore everybody is still using URLs (Uniform Resource Locators) instead of URNs, with their well known drawbacks: at any time, any component of an URL (the hostname, the directory, the resource name and/or the parameter syntax) can be modified without any possibility of informing potential users. The real challenge is thus to maintain all these URLs. For this, the Centre de Donn´es astronomiques de Strasbourg (CDS1 ) has developed the GLU e (G´ ´rateur de Liens Uniformes - Uniform Link Generator) which allows one to ene use symbolic names instead of hard-coded URLs in data.

1

http://cdsweb.u-strasbg.fr

466

© Copyright 1998 Astronomical Society of the Pacific. All rights reserved.


Managing Heterogeneous Distributed Web Services
In the GLU dictionary %ActionName %Description %Url

467

simbad Simbad query by identifier http://simbad.u-strasbg.fr/simbad?id=$1

In the data base ... keywords : galaxies: individual: <&simbad M31> ...

The result sent to the user ...keywords : galaxies: individual:


http://simbad.u-strasbg.fr/simbad?id=M31> M31
...

Figure 1. 2.

Usage of GLU tag (symbolic name: simbad, parameter: M31)

The GLU System

To fulfill this aim, the GLU implements two concepts: 1. the GLU dictionary which is a compilation of symbolic names with their corresponding URLs maintained up-to-date. 2. the GLU resolver which replaces symbolic names by the relevant URLs on the fly. Using the GLU system, data managers can forget the URLs and just use their symbolic names - using GLU tags - in all their Web documents. Every time a server sends a database result, the GLU replaces, on the fly, the GLU tags by the corresponding URLs and substitutes the parameters at the proper locations (see the example in Figure 1). The GLU system differs from other similar tools (such as the PURL system - developed by OCLC Office of Research) in that the GLU allows each of its members to locally resolve the URLs using its own view of the GLU dictionary. This is an important choice to ensure the resolution speed and the security of the system. So, for this replacement mechanism, only a simple modification to the Web server configuration is required: specifying that the data streams have to be filtered by the GLU resolver during output. For the advanced Web programmer, the GLU has two libraries, one in Perl, the other in C to resolve GLU tags directly in CGI (Common Gateway Interface) programs. An important piece of the GLU system is the mechanism maintaining each view of GLU dictionary. This task is performed by a daemon, called glud, which has the responsibility to send and to receive the GLU records (the entries in the dictionary). The GLU protocol used by these daemons has the following characteristics:


468

Fernique, Ochsenbein and Wenger

· It is based on distribution domains. Managers choose the GLU domains in which they want to distribute their own GLU records. In the same way, they choose the GLU domains from which they want to receive GLU records. · It uses a hierarchical name space for the GLU record identifiers (this ensures their uniqueness through the whole system). · It is pretty fault tolerant and secure: independent views of the GLU dictionary, mechanism authenticating the update sender, ... Several other functionalities are also addressed by the GLU system, the most important being: · The management of clones : in the GLU dictionary, it is possible to specify several URLs for a symbolic name. The GLU daemon will test each of them regularly and will label the best for the future resolutions (based on connection speed and proximity). · The capability to use the GLU system as a general macro system : instead of a simple URL, it is possible to specify in the GLU record a full HTML text. In this way, homogeneous HTML pages (for headers, menus, forms,...) are easy to maintain (see the CDS pages). 3. GLU Tools

To take the full benefit of all GLU facilities, three GLU tools have been developed: 1. The Dictionary Browser2. It is used by the data managers to check the GLU dictionary content (see Figure 2). 2. The Test Sequencer. Its purpose is to check all the URLs of the GLU dictionary to inform the managers of a disfunctionality. 3. The Service Browser (called AstroGLU). An "intelligent" service directory using the capability of the GLU to give access to the participating Web services by commonly known data types (see Egret 1997). 4. Conclusion

Presently, two centers use the GLU system : the CDS, for its own Web services, and the CNES, the French Space Agency for the Space Physics database pro ject (CDPP). The GLU package3 has been designed for a large cooperation and is opened to other astronomy partners.
2 3

http://simbad.u-strasbg.fr/demo/cgi-bin/glu dic.pl http://simbad.u-strasbg.fr/demo/glu.html


Managing Heterogeneous Distributed Web Services

469

Figure 2. References

GLU Browser tool

Egret, D., et al., 1998, this volume Wenger, M, 1996 et al., Bull. American Astron. Soc., 189, 602 Berners-Lee, T., 1994, Request For Comments 1630