...

Data Management System

by user

on
Category: Documents
19

views

Report

Comments

Transcript

Data Management System
Trinacria Grid Virtual Laboratory
Data Management System
gLite – LCG
Salvatore Scifo
INFN Catania
Primo Grid Tutorial
Catania, 14-15 Marzo 2006
University of
Coimbra
www.trigrid.it
FESR
Sommario
• Introduzione al Data Management System
• Obiettivi e sfide della Gestione dei Dati
• Spazio dei nomi e convenzioni in ambiente GRID
• Storage Element (tipologia e interfacce)
• Gestione dei dati con il middleware LCG-2
• Gestione dei dati con il middleware gLite 1.4
Catania, Primo Grid Tutorial, 14.03.2006
2
Introduzione (I)
• Il Sistema di Gestione dei Dati (DMS) è il sottosistema del
middleware GRID dedicato alla manipolazione dei dati.
• Le funzionalità offerte sono comunissime all’esperienza di ognuno
di noi:
–
–
–
–
–
–
–
Upload/Download di file
Creazione di file/directory
Rinominazione di file/directory
Cancellazione di file/directory
Trasferimento file/directory
Visualizzazione directory
Creazione di link simbolici
• I servizi del DMS vengono esportati tramite specifiche interfacce ai
servizi GRID e tramite API per lo sviluppo di applicazioni.
Catania, Primo Grid Tutorial, 14.03.2006
3
Introduzione (II)
• In ambiente GRID i dati possono essere replicati in
locazioni differenti a seconda delle applicazioni che
devono utilizzarli
• L’utente non ha bisogno di sapere dove un file è
conservato fisicamente, l’unica cosa che serve è il
Logical File Name (LFN).
• DMS lavora con i file:
– Ia semantica dei file è ben conosciuta da ognuno di noi nella
comune esperienza quotidiana (*.doc, *.ppt, *.txt)
– un file è la più fine granularità dei dati.
– una ragione storica: le prime due organizzazioni virtuali ad
usare Grid (HEP – High Energy Physics e Biomedical) hanno
cominciato conservando le informazioni proprio nei file.
Catania, Primo Grid Tutorial, 14.03.2006
4
DMS – Obiettivi
• Il Data Management System fornisce due principali
funzionalità:
– File Management
– Metadata Management
• Un file rappresenta la granularità più fine dei dati
• Metadati sono dati che descrivono dati
File Management
Metadata Management
•storage (save, copy, read, list, …)
•movement (replica, transfer, ….)
•security (access control, ….);
•cataloguing
•secure database access
•database schema virtualization
Catania, Primo Grid Tutorial, 14.03.2006
5
DMS – Grid Data Management Challenge
NEEDS
Requirements
LCG
gLite
Eterogeneità: I dati sono
conservati in diverse tipologie di
“storage device” ognuno con la
propria tecnologia di accesso.
Una interfaccia comune per
l’accesso alle risorse che
mascheri la complessità dei
“device” fisici adottati.
SRM come
interfaccia per
RFIO + dCAP
(local access)
SRM come interfaccia
per
RFIO + dCAP
(local access)
gLite File I/O Server
Distribuzione: I dati si trovano in
locazioni differenti e nella maggior
parte dei casi non esiste un “file
system” condiviso ne uno spazio
dei nomi comune.
Una visione uniforme dello
storage distribuito.
LFC
(LCG File Catalog)
File Catalog
Replica Catalog
Metadata Catalog
Storage Index
Recupero dati: Le applicazioni si
trovano in locazioni differenti
rispetto ai file che devono essere
usati come input.
I dati devono essere
accessibili
indipendentemente dalla loro
posizione fisica.
GFAL come
interfaccia per
RFI/O + dCap
(remote access)
gLite File I/O Server
POSIX-Like Library
C’è bisogno di “schedulare” la
disponibilità dei file al
momento del loro utilizzo.
GSIFTP
File Transfer Service
Servizio di controllo
d’accesso centralizzato.
Secure RFIO
File Authorization
Service
Securezza: I dati devono essere
gestiti in accordo con le regole di
controllo d’accesso della
Organizzazione Virtuale di
appartenenza.
Tenere traccia delle locazioni
dei file all’interno dello
storage distribuito.
dCAP
(gsi compliant)
Catania, Primo Grid Tutorial, 14.03.2006
6
File Naming (I)
• LFN – Logical File Name
–
–
–
–
Identificativo logico (human readable) di un file
LFN è unico ma mutabile nel tempo
Lo spazio dei nomi per gli LFNs è globale e gerarchico per singola VO
Sintassi :
 lfn:<anything_you_want>
 lfn:/home/gilda/catania/tutorial.txt
• GUID – Grid Unique Identifier
– Identificativo logico di un file
– Unico per construzione (basato sulle specifiche UUID). GUID ed LFN
sono associati in una relazione di tipo 1:1
– Sintassi :
 guid:<40_bytes_unique_string>
 guid:38ed3f60-c402-11d7-a6b0-f53ee5a37e1d
Catania, Primo Grid Tutorial, 14.03.2006
7
File Naming (II)
• SURL – Site URL
– È utilizzato dallo SRM per identificare i file replicati in uno SE.
– GUID e SURLs sono associati in una relazione 1:n.
– Sintassi :
 sfn://<SE_hostname><SE_Accesspoint><VO_path><filename>
 srm://egee016.cnaf.infn.it:8443/srm/managerv1?SFN=/dpm/cnaf.infn.it/hom
e/gilda/catania/tutorial.txt
• TURL – Transport URL
– È un normalissimo URL utilizzato per trasferire file mediante un
qualunque protocollo di trasferimento standard.
– Sintassi:
 <protocol>://<some_string>
 gsiftp://tbed0101.cern.ch/flatfiles/SE00/dteam/generated/2004-0226/file3596e86f-c402-11d7-a6b0-f53ee5a37e1d
Catania, Primo Grid Tutorial, 14.03.2006
8
Relazioni logiche tra i nomi dei file
• La seguente tabella mostra le relazioni tra i nomi dei file nell’ambiente
GRID:
–
–
–
–
–
GUID e LFN 1:1 (gLite middleware)
GUID e LFN 1:N (LCG middleware)
LFN e Symbolic Link 1:N
GUID e SURL 1:N
SURL e TURL 1:1
• Nota: gli Alias sono permessi nel LCG middleware, quindi uno GUID è
referenziato da ‘N’ LFNs.
Symbolic Link 1
.
.
LFN
LFN
TURL 1
.
.
.
.
Physical File SURL n
TURL n
GUID
Symbolic Link n
File Catalog
Physical File SURL 1
(Aliasing)
SRM
Catania, Primo Grid Tutorial, 14.03.2006
9
DMS – Access File Protocols
• File Access
– RFIO remote file I/O (sviluppato per Cern Advanced STORage devices)
– GSIDCAP – GSI dCache Access Protocol
• GFAL – Grid File Access Library
– maschera le iterazioni tra RFIO and DCAP e si presenta come una interfaccia
Posix-Like per le operazioni di I/O remote
– RFIO e GSI DCAP sono utilizzati sia per l’accesso ai file locale che remoto, (es:
il workernode utilizza GFAL per lavorare sui file da remoto)
• Transfer
– GSIFTP è il protocollo di trasferimento più usato ed è supportato da ogni SE
Protocol
Type
Security
GSIDCAP – GSI dCache Access Protol
(Access Protocol for dCache devices)
File I/O
GSI enabled
RFIO - Remote File I/O
(Access Protocol for CASTOR devices)
File I/O
Secure + Insecure
GSI FTP
File Transfer
GSI enabled
Catania, Primo Grid Tutorial, 14.03.2006
10
DMS - Storage Resource Manager
• SRM è stato sviluppato come unica interfaccia per la
gestione di dischi e sistemi di storage a tape.
• SRM è una collezione di protocolli di accesso nativi
dipendenti dal sistema di storage.
• SRM è stato progettato per nascondere la complessità
dello storage all’untente finale (sia esso un client tool o un
qualunque altro servizio grid).
Catania, Primo Grid Tutorial, 14.03.2006
11
Richiesta di file di analisi
SRM
SRM in un esempio
CERN SE
dCache
FermiLab SE
Castor
Nikhef SE
Classic SE
Catania, Primo Grid Tutorial, 14.03.2006
12
DMS - Tipologia di Storage Element (I)
• CLASSIC SE
– Consiste di un disco fisico o un array di dischi e un server
GSIFTP e un insecure RFIO daemon come Front End.
– Le uniche funzionalità di sicurezza sono fornite dal GSIFTP server,
quindi l’RFIO daemon agisce solo dentro in confini della LAN del
sito Grid.
– Il Classic SE non supporta l’interfaccia SRM e le più comuni attività
di gestione sono delegate all’amministratore dei sito. (Per esempio,
l’allocazione di spazio per le VO avviene mediante partizionamento
logico del disco.)
• dCACHE DISK POOL MANAGER
– Consiste di un server dCache e uno o più pool nodes. Il server
rappresenta il singolo punto di accesso allo SE e presenta i files
contenuti nel pool di dischi sottoforma di un unico file system
virtuale.
– GSIFTP viene usato per assicurare il trasferimento dei dati e
GSIDCAP per favorirne la manipolazione.
– dCache espone una interfaccia SRM. I dischi possono essere
aggiunti dinamicamente al pool manager in ogni momento.
Catania, Primo Grid Tutorial, 14.03.2006
13
DMS - Tipologia di Storage Element (II)
• LCG Disk Pool Manager
– Alternativa leggera al dCache DPM. Facile da installare e da gestire e,
sebbene no è così potente come dCache, rappresenta comunque una
buona scelta per siti di piccola taglia.
– Viene utilizzato GSIFTP per lo spostamento dei dati e GSIDCAP per la loro
gestione.
– I dischi possono essere aggiunti dinamicamente al pool manager in ogni
momento ed è fornita una interfaccia SRM.
– L’allocazione dinamica dello spazio per VOs è supportata.
– In una parola, LCG DPM è una ottima soluzione per convertire
velocemente un classic SE in un DPM con un solo disco nel pool server.
• GILDA test bed provides different SE:
– classic SE (grid009)
– dCache DPM (aliserv)
– CASTOR is coming soon
Catania, Primo Grid Tutorial, 14.03.2006
14
DMS - Tipologia di Storage Element (III)
• MSS - MASS STORAGE SYSTEM
– MSS è uno Storage Management System Gerarchico utilizzato
per file che devono essere trasferiti da un front end di dischi ad
un back end costituito da nastri magnetici.
– Il processo che si occupa della migrazione asincrona di file si
chiama STAGER.
– MSS fornisce GSIFTP come protocollo di trasferimento e
insecure RFIO per sistemi CASTOR oppure GSICAP per sistemi
dCache come interfaccia di accesso ai file.
– LCG supporta solo una interfaccia SRM per CASTOR MSS,
quindi, ogni sito GRID dovrebbe provvedere alla interfaccia SRM
per il proprio eventuale MSS diverso da CASTOR.
Catania, Primo Grid Tutorial, 14.03.2006
15
DMS in LCG-2
• I file sono conservati nello Storage Element (SE)
• Il Catalog Service è fornito per la gestione delle repliche dei
file su differenti SEs.
• L’utente può interagire con i Data Management Services
attraverso appositi Client Tools.
• Non esiste alcuna politica per definire un file volatile
piuttosto che permanente; tutti i file sono considerati per
default permanenti e la loro gestione è sotto la piena
responsabilità dell’utente.
Catania, Primo Grid Tutorial, 14.03.2006
16
LGG-2 File & Replica Catalog (I)
• Utenti e applicazioni necessitano di localizzare i files (o
replica) sull’intera Grid. Il File Catalog è il servizio che
permette questa caratteristica mantenendo il “mappings”
(relazioni) tra LFNs, GUIDs e SURLs.
• In LCG-2, le operazioni di catalogazione dei file sono
implementate dal LFC (LCG File Catalog); esso è il migliore
sostituto per il meno recente RLS (Replica Location
Server).
Catania, Primo Grid Tutorial, 14.03.2006
17
LGG-2 File & Replica Catalog (II)
• Il passato
– RLS è il primo catalogo usato in LCG middleware
– Composto da due sotto servizi: LRC (Local Replica Catalog) che
mappa gli LFN con gli GUID e il RMC (Replica Metadata Catalog)
che mappa i GUID con gli SURLs.
• Il presente
– LFC è distribuito come servizio centralizzato ed il suo endpoint è
pubblicato sul Information Service al fine di essere rintracciabile sia
dai DMS tools quanto da ogni altro servizio GRID interessato.
• Nota1: un endpoint è semplicemente l’URL del servizio.
• Nota2: I due cataloghi non sono sincronizzati; se in un sito
coesistono entrambi RLS ed LFC è solamente
responsabilità dell’utente assicurare la consistenza delle
entries nei due differenti cataloghi.
Catania, Primo Grid Tutorial, 14.03.2006
18
LGG-2 File & Replica Catalog (III)
• LFC è stato sviluppato per migliorare le performance e la
sicurezza, ma sono state aggiunte altre funzionalità quali
transazioni, roll-back e spazio dei nomi gerarchico per gli
LFNs.
• LFC supporta la gestione dei metadati
– i metadati di sistema vengono gestiti pienamente
– la gestione dei metadati per l’utente è molto ristretta (una
singola stringa testuale è permessa).
– nel middleware gLite tale situazione si è nettamente evoluta,
(si rimanda a FiReMan e AMGA per più dettagli).
• Come l’utente può interagire con LCG DMS?
– Sono disponibili due tipologie di strumenti: high level tools (lcgutils o lgc-* commands) e low level tools (edg-gridftp-* o
globus-url-copy).
Catania, Primo Grid Tutorial, 14.03.2006
19
DMS in gLite 1.4 middleware
• Le funzionalità del Data Management System sono fornite
da un set of web services che rispettano una service
oriented architecture (SOA).
• L’architettura rispetta 4 parole chiave:
–
–
–
–
Interoperabilità
Portabilità
Scalabilità
Modularità
• Il Data Management System di gLite è composto da tre
moduli principali: Storage Element, Catalog e File
Transfer Service.
Catania, Primo Grid Tutorial, 14.03.2006
20
DMS – Architettura in gLite (I)
• Lo Storage Element ha in carica la gestione della conservazione
permanente dei dati.
• Sono fornite due interfacce:
– Storage Resource Manager (SRM)
 Per dialogare con i Mass Storage System presenti.
– gLite File I/O server:
 Una interfaccia unica per accedere allo SRM e/o al catalogo
 Fornisce una POSIX-like (Portable Operating System Interface) File I/O API per
permettere agli utenti l’implementazione delle proprie applicazioni client.
• Il Catalogo mantiene traccia della posizione dei file all’interno del file
system distribuito e conserva qualunque tipo di informazione aggiuntiva
su tali files.
• Il File Transfer Service abilita la GRID a spostare file da/a un sito
all’altro.
Catania, Primo Grid Tutorial, 14.03.2006
21
DMS – Architettura in gLite (II)
Data Management System
Storage Element
FTS (File Transfer Service)
FPS
(File Placememt Service)
Data Scheduler
Storage
Storage
Storage
Storage
Storage
Mass Storage System
Storage
Glite I/O Server
SRM
(Storage Resource Manager)
TA
(Transfer Agent)
FTL
(File Transfer Library)
Combined Catalog
File Catalog
Replica Catalog
Metadata Catalog
Data base Back End
RDBMS
RDBMS
RDBMS
RDBMS
RDBMS
RDBMS
Catania, Primo Grid Tutorial, 14.03.2006
22
gLite File I/O at work
GUID o LFN vengono risolti nel
SURL corretto, il quale è utilizzato
dal local SRM per accedere al file.
I/O client library API accetta in
input sia LFN che GUID.
LFN o GUID
vengono presentati
al I/O server.
Worker node
Storage Element
SRM
Client
1. Ask for the file by GUID/LFN
IO Server
3. Access the file by SURL
Il File Authorization Service controlla se l’utente
possiede i corretti diritti di accesso al file desiderato.
2. Check for the right access
Combined Catalog
(FAS)
Resolve LFN to GUID
File Catalog
Resolve GUID to SURL
Replica Catalog
Resolve GUID to Metadata
Metadata Catalog
Catania, Primo Grid Tutorial, 14.03.2006
24
gLite - File Transfer Service (I)
Co-location
• Grid assume che i dati devono stare insieme alle
applicazioni che li usano. Questa assunzione implica la coschedulazione dei dati al momento dell’esecuzione del job
associato affinchè essi siano effettivamente dispobibili.
Paradigma
• Lo SE di destinazione è sempre lo SE locale, lo SE
sorgente può stare all’interno o all’esterno dei confini del
sito.
• Logicamente, per ogni SE esiste un File Transfer Service
che controlla tutto il flusso di dati proveniente da altri SEs.
Catania, Primo Grid Tutorial, 14.03.2006
25
gLite – File Transfer Service (II)
• Il processo di trasferimento dei file coinvolge tre moduli
differenti:
• Data Scheduler
– è responsabile della schedulazione dei dati e tiene traccia del
trasferimento di dati tra diversi sites.
• File Placement Service
– Interroga continuamente il Data Scheduler per individuare tutte le
richieste di trasferimento la cui destinazione è lo storage element locale
per una data VO;
– Tali richieste vengono inserite in una Queue di lavoro locale.
– FPS provvede allo spostamento dei dati preoccupandosi di mantenere
la consistenza tra il File Catalog e il Replica Catalog.
• Transfer Agent
– Gestisce lo stato di ogni trasferimento. Esso utilizza la File Transfer
Library (transfer tool di basso livello) per eseguire il trasferimento
fisico.
Catania, Primo Grid Tutorial, 14.03.2006
26
gLite – Catalog services
• Il catalogo si preoccupa della organizazione dei file nello
SE.
• Il requisito di ubiquità è soddisfatto dal meccanismo di
replica dei file su più siti GRID.
• Il catalog contiene anche le informationi necessarie
all’accesso autorizzato ai files conservati nello SE.
• Ancora, il catalogo gestisce le relazioni tra the LFN, (fornito
dall’utente al momento della creazione), e GUID, (creato da
GRID); e tra il GUID e i vari SURLs (identificatori dei diversi
replica file).
Catania, Primo Grid Tutorial, 14.03.2006
28
Tipi di Catalogo (I)
• File Catalog
– Permette le operazioni sullo spazio dei nomi logici (LFN)
 Creazione di directory
 Rinominazione di file
 Creazione di link simbolici
– Mantiene le relazioni LFN-GUID
• Replica Catalog
– Fornisce le operazioni riguardanti gli aspetti della replica
 Lista di tutte le repliche di un file,
 Aggiunta di una replica
 Rimozione di una o tutte le repliche
– Mantiene le relazioni GUID-SURL
• Storage Index
– Favorisce le interazioni con il WMS, (per esempio: localizzazione
dei file per il Resource Broker)
Catania, Primo Grid Tutorial, 14.03.2006
30
Catalog types (II)
• Metadata Catalog
– Permette di collezionare e conservare informazioni che descrivono i file
contenuti nello SE.
– Fornisce strumenti per interrogare e manipolare i metadati conservati.
• Combined Catalog
– Mantiene traccia di tutte le operazioni che vengono eseguite attraverso
cataloghi di diverso tipo al fine di mantenere la coerenza e la
sincronizzazine tra di essi
• FileReplicaManager
– È l’implementazione del catalogo combinato adottato in gLite.
– Implementa il File Catalog, il Replica Catalog e il Metadata Catalog.
– FiReMan implementa anche l’interfaccia StorageIndex, per il job
matchmaking process.
Catania, Primo Grid Tutorial, 14.03.2006
31
gLite - File Authorization Service
• Uso dei servizi Grid
– I servizi Grid condividono tutti la stessa infrastruttura di
sicurezza. Tutti gli utenti devono acquisire delle credenziali
X.509 dalla propria Certificate Authority (CA).
– Chiunque voglia accedere a qualunque servizio Grid deve
essere registrato ad una Virtual Organization la quale gli
permetterà di utilizzare la Grid in accordo con la politica di
controllo d’accesso adottata.
– DMS controlla l’accesso ai file basandosi sul meccanismo delle
Access Control Lists (ACLs).
– Prima di accedere ai file un utente deve richiedere al VOMS
(Vitual Organization Membership Service) uno short-live proxy il
quale contiene, (oltre alle credenziali per l’autenticazione), tutti i
permessi necessari per l’autorizzazione all’accesso ai file.
Catania, Primo Grid Tutorial, 14.03.2006
32
Come interagire con il DMS di gLite
• Command Line tools accessibili da una GRID UI (user
interface).
– Attraverso una Shell di Unix, l’utente può utilizzare i servizi
forniti dalla “command line” utilizzando il file system
remoto virtuale in una modalità familiare
• gLite-I/O API
– Per sviluppare applicazioni che si interfacciano allo SE
• catalogs API
– Per sviluppare applicazioni che si interfacciano al Catalogo
Catania, Primo Grid Tutorial, 14.03.2006
33
DMS - Glossary





















DMS
MMS
FiReMan
SRM
FTS
PFS
ACLs
ACE
VOMS
LFN
GUID
URL
SURL
TURL
LHC
LCG
LFC
RFIO
GSIFTP
CASTOR
dCAP
: Data Management System
: Mass Storage System
: File Replica Manager
: Storage Resource Manager
: File transfer service
: Placement file Service
: Access Control List
: Access Control Element
: Virtual Organization Membership Service
: Logical File Name
: Grid Unique Identifier
: Universal Resource Locator
: Site URL
: Transport URL
: Large Handron Collider
: LHC Computing Grid
: LCG File Catalog
: Remote File I/O
: Grid Security Infrastructure FTP
: CERN Advanced Storage Manager
: dCache Access Protocol
Catania, Primo Grid Tutorial, 14.03.2006
34
References
•
gLite homepage
–
•
DM subsystem documentation
–
•
http://egee-jra1-dm.web.cern.ch/egee-jra1-dm/doc.htm
FiReMan catalog user guide
–
•
http://www.glite.org
https://edms.cern.ch/file/570780/1/EGEE-TECH-570780-v1.0.pdf
gLite-I/O user guide
–
https://edms.cern.ch/file/570771/1.1/EGEE-TECH-570771-v1.1.pdf
Catania, Primo Grid Tutorial, 14.03.2006
35
Domande…
Catania, Primo Grid Tutorial, 14.03.2006
36
Fly UP