P. Mendez Lorenzo (CERN IT/GD)
In a Grid environment, the access to information on system resources is a necessity in order to perform common tasks such as matching job requirements with available resources, accessing files or presenting monitoring information. Thus both middleware service, like workload and data management, and applications, like monitoring tools, requiere an interface to the Grid information service which provides that data. Even though a unique schema for the published information is defined, actual implementations use different data models, and define different access protocols. Applications interacting with the information service must therefore deal with several APIs, and be aware of the underlying technology in order to use the appropiate syntax for their queries or to publish new information. We have produced a new hign level C++ API that accomodates several existing implementations of the information service such as Globus MDS(LDAP based), MDS3(XML based) an R-GMA(SQL based). It allows applications to access information in a transparent manner loading the needed implementation specific library on demand. Features allowing for the adding and removal of dynamic information have been included as well. A general query language to make the API compatible with future protocols has been used. In this paper we described the design of this API and the results obtained integrating this API in the Workload Management system and in the GridIce monitoring system of LCG.