Presentation is loading. Please wait.

Presentation is loading. Please wait.

GFAL Grid File Access Library

Similar presentations


Presentation on theme: "GFAL Grid File Access Library"— Presentation transcript:

1 GFAL Grid File Access Library
Annamaria Muoio INFN Catania I Corso di formazione INFN su aspetti pratici dell'integrazione di applicazioni in GRID Martina Franca, 13/11/2007

2 SUMMARY This presentation covers the following points: GFAL Overview
GFAL Available APIs GFAL C API Overview GFAL Java API Overview GFAL C API Practical (hands on session) GFAL Java API Practical (hands on session) GFAL References.

3 GFAL: Introduction What is GFAL?
It stands for Grid File Access Library! Grid storage interactions today require using some existing software components: The file catalog services to locate valid replicas of files in order to Download them to the user local machine Copy them from a SE to another one Make job running on the worker node able to access and manage files stored on remote storage element. The SRM to ensure: Files existence on disk or disk pool (they are recalled from mass storage if necessary) Space allocation on disk for new files (they are possibly migrated to mass storage later)

4 GFAL: Main features The GFAL Features
Hides interactions to the SRM to the end user Provides a Posix-like interface for File I/O Operation Based on shared libraries (both threaded e unthreaded version) Needs only one header file (gfal_api.h) to write C applications Supports following protocols : file for local access nfs-like dcap, gsidcap and kdcap for dCache access protocol rfio for CASTOR/DPM access protocol. Access to SRMs in secure mode, i.e. using a valid Grid proxy obtained by voms-proxy-init command.

5 GFAL: File Names GFAL works with all Grid types name:
Logical File Name (LFN) lfn:baud/testgfal15 Grid Unique IDentifier (GUID) guid:2cd ae af6d-b1f File Replica (SURL) srm://wacdr002d.cern.ch:8443/castor/cern.ch/user/b/baud/testgf al Transport file name (TURL). rfio:////castor/cern.ch/user/b/baud/testgfal15

6 GFAL: Environment Auxiliary linked libraries Environment Variables
libcgsi_plugin_gsoap_2.3 libglobus_gss api_gsi_gcc32dbg libglobus_gss_assist_gcc32dbg. Environment Variables LCG_GFAL_VO LCG_GFAL_INFOSYS LCG_CATALOG_TYPE LCG_RFIO_TYPE LFC_HOST LD_LIBRARY_PATH

7 GFAL: Available API C API
The header file gfal_api.h needs to be included in the application source code to get the prototype of the functions. The function names are obtained by prepending gfal_ to the Posix names, for example gfal_open, gfal_read, gfal_close ... The argument lists and the values returned by the functions are identical. The variable errno is set to the Posix Error Codes in the case of failure.

8 GFAL: Available API Java API (C API Wrapper)
It provides three main Java Objects that need to be imported in the java applications in order to hide the underlying C functions. GFalFile : to handle and read/write files GFalDirectory : to handle and manage directories (create, delete, list) GFalUtilities : to manage file (rename, stat, lstat, delete)

9 GFAL Java API GFAL API are available for C/C++ programmers
We wrote a wrapper around the C APIs using Java Native Interface and a the Java APIs on top of it More information can be found here:

10 GFAL References Examples in gLite3 User Guide (Appendix F)
GFAL C API Description: deployment/documentation/LFC_DPM/gfal/html/

11 Evento, Luogo, Data odierna - 11

12 Hands on http://repository.gs.ba.infn.it/twiki/bin/view/GILDA/APIGFAL


Download ppt "GFAL Grid File Access Library"

Similar presentations


Ads by Google