La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

FESR www.trigrid.it Trinacria Grid Virtual Laboratory The AMGA metadata catalog Riccardo Bruno – INFN Sez.CT Catania, Tutorial TriGrid su gLite 3.0, 27-28.07.2006.

Presentazioni simili


Presentazione sul tema: "FESR www.trigrid.it Trinacria Grid Virtual Laboratory The AMGA metadata catalog Riccardo Bruno – INFN Sez.CT Catania, Tutorial TriGrid su gLite 3.0, 27-28.07.2006."— Transcript della presentazione:

1 FESR Trinacria Grid Virtual Laboratory The AMGA metadata catalog Riccardo Bruno – INFN Sez.CT Catania, Tutorial TriGrid su gLite 3.0,

2 Contenuti Le origini e le motivazioni di AMGA Interfacce, Architettura e Implementazione Replica dei Metadati su AMGA Esempi di impiego su Grid di produzione Casi d’uso sul testbed GILDA

3 Catania, Tutorial TriGrid su gLite 3.0, Metadati su GRID Metadata sono dati che descrivono altri dati In Grid: informazioni aggiuntive sui file –Descrizione dei file –Individuare i file grazie a dati che descrivono il loro contenuto Non solo: Facilita l’accesso ai DB in Grid –Molte applicazioni grid necessitano di dati strutturati –Molte applicazione richiedono solo degli schemi semplici  Questi possono essere facilmente modellati come metadati Vantaggi: Una migliore integrazione con l’ambiente Grid –I servizi Metadata sono un componente Grid –E’ garantita la sicurezza (GSI) –Si nasconde la possibile eterogeneità dei DB

4 Catania, Tutorial TriGrid su gLite 3.0, ARDA valuto lo stato dei servizi metadata dagli esperimenti HEP –AMI (ATLAS), RefDB (CMS), Alien Metadata Catalogue (ALICE) –Stessi obiettivi, stessi concetti –Ogni servizio adattato per un particolare dominio di applicazione  Il riutilizzo reso difficoltoso al di fuori del dominio di appartenenza –Alcue limitazioni tecniche: risposte voluminose, scalabilità, prestazioni, carenze sulla flessibilità ARDA pensò a un’interfaccia per l’accesso ai metadati in Grid –Basata sulle richieste degli esperimenti su LHC –Che fosse generica (non limitato a un particolare dominio di applic.) –Sviluppato congiuntamente ai gruppi di gLite/EGEE –Che inglobasse le esperienze di GridPP Adottato come l’ufficliare interfaccia ai metadati su EGEE –Sostenuto dal PTF (Project Technical Forum of EGEE) ARDA/gLite Interfaccia ai Metadati

5 Catania, Tutorial TriGrid su gLite 3.0, AMGA Implementazione ARDA sviluppò una ‘P roject T ask F orce’ creando: –AMGA – ARDA Metadata Grid Application Iniziato come prototipo per la valutazione dell’interfaccia ai metadati –Evaluated Valutato continuamente da varie comunità sin dall’inizio:  LHCb e Ganga furono I primi tester –Maturato velocemente grazie alle impressioni degli utenti Adesso e’: parte integrante del middleware gLite –Servizio ai metadati ufficiale su EGEE –Primo rilascio ufficiale con gLite 1.5 –E’ anche disponibile in versione ’standalone’ Si sta espandendo velocemente verso altre comunità: –HEP, Biomed, UNOSAT…

6 Catania, Tutorial TriGrid su gLite 3.0, Metadata Concetti Alcuni concetti: –Metadata - Lista di attributi associati con elementi (entry) –Attribute – coppia chiave/valore con informazione sulla tipologia del valore (type)  Type – Il tipo di dato: (int, float, string,…)  Name/Key – Nome dell’attributo  Value – Valore dell’attributo su un dato elemento –Schema – Un insieme di attributi –Collection – Un insieme di elementi associati con uno schema Metafora: –Si pensi agli schemi come alle tabelle, agli attributes come le colonne a agli elementi come le righe di un database

7 Catania, Tutorial TriGrid su gLite 3.0, AMGA Funzionalità Schemi dinamici –Gli schemi possono essre modificati ‘al volo’ dal client  Creare, rimuovere gli schemi  Agglingere rimuovere attributi I metadati sono organizzati gerarchicamente –Una collection può contenere una o piu’ sotto-collection –In analogia al file system:  Collection  Directory  Entry  File Query flessibili –Usi di un linguaggio stile SQL –Possibilità di fare ‘join’ tra tabelle –Esempio: selectattr /gLibrary:FileName \ /gLibrary:Author \ ‘/gLibrary:FILE=/gLAudio:FILE \ and \ like(/gLibrary:FileName,“%.mp3")‘

8 Catania, Tutorial TriGrid su gLite 3.0, Permessi stile UNIX (rwx) ACLs – per-collection o per-entry. Connessioni sicure – SSL Autenticazione del client basata su –Username/password –Certificato X509 generale –Certificato Grid-proxy Controllo d’accesso via Virtual Organization Management System (VOMS) AMGA Sicurezza

9 Catania, Tutorial TriGrid su gLite 3.0, AMGA Implementazione C++ multiprocess server –Gira su qualsiasi ambiente Linux Database ‘backend’ –Oracle, MySQL, PostgreSQL, SQLite Due ‘frontends’ –TCP Streaming  Alte prestazioni  Client API per: C++, Java, Python, Perl, Ruby –SOAP  Interoperability Implementato anche come ‘standalone’ Python library –Dati memorizzati su filesystem

10 Catania, Tutorial TriGrid su gLite 3.0, Progettato per la scalabilità –Operazioni asincrone  Leggendo I dati da DB e mandandoli al client –Risposte mandate al client in chunks  Non c’e’ limite sulle dimensioni delle risposte Esempi di TCP Streaming –Protocolli ‘text based’(come: SMTP, POP3,…) –Risposte in ‘stream’ sul client Client: listattr entry Server: 0 entry value1 value2 … Architettura - TCP-Streaming frontend

11 Catania, Tutorial TriGrid su gLite 3.0, Metadata Replica 1/2 Motivazione –Scalabilità – Supporto a centinaia/migliaia di utenze concorrenti –Distribuzione georgafica – Per nascondere i tempi di latenza della rete –Affidabilità – Non c’e’ un punto unico di fallimento –Replica indipendente dal DB – Permette di avere eterogeneità dei DB –Disconnessione – Accesso Off-line ai metadati (laptops) Architettura –Asynchronous replication –Master-slave – Scritture abilitate solo sulla copia master –Replica a livello di applicazione  Replica fatta attraverso l’uso di comandi del client, independenza SQL → DB –Replica parziale – Supporto alle repliche solo su sotto-alberi della gerarchia sui metadati

12 Catania, Tutorial TriGrid su gLite 3.0, Metadata Replica 2/2 Full replication Partial replication FederationProxy

13 Catania, Tutorial TriGrid su gLite 3.0, Primi utilizzatori di AMGA LHCb-bookkeeping (conserva informazioni aggiuntive sui job eseguiti) –Migrazione dall’originale bookkeeping metadata al prototipo ARDA  20M entries, 15 GB  Large amount of static metadata –Feedback importanti nel migliorere l’interfaccia e per fissare difetti –AMGA ha dimostrato buone qualità di scalabilità Ganga –Job management system  Sviluppato congiuntamente ad Atlas e LHCb –Uso di AMGA per memorizzare informazioni sullo stato dei job  Pochi elementi con metadati molto dinamici

14 Catania, Tutorial TriGrid su gLite 3.0, Medical Data Manager – MDM –Memorizza ed accede a immagini mediche con associati metadati su Grid –Costruito sul data management system di gLite 1.5 –Presentatato all’ultima conferenza EGEE (October 05, Pisa) Requisiti di sicurezza molto restrittivi –I dati dei pazienti sono sensibili –I dati devono essere criptati –L’accesso ai metadati deve essere concesso solo agli utenti abilitati AMGA usato come metadata server –Ha dimostrato la capacità di avere accesso a dati criptati in maniera autenticata –Usato come database semplificato Più dettagli su: – https://uimon.cern.ch/twiki/bin/view/EGEE/DMEncryptedSto rage Biomed

15 Catania, Tutorial TriGrid su gLite 3.0, Accesso ad AMGA TCP Streaming Front-end –mdcli & mdclient, C++ API (md_cli.h, MD_Client.h) –Java Client API e command line mdjavaclient.sh & mdjavacli.sh (anche in ambiente Windows) –Python Client API SOAP Frontend (WSDL) –C++ gSOAP –AXIS (Java) –ZSI (Python)

16 Catania, Tutorial TriGrid su gLite 3.0, Conclusioni AMGA – Metadata Service of gLite –Parte di gLite (ma non ancora certificed in gLite 3.0. Farà parte integrante dal rilascio 3.1) –Strumento utile per facilitare l’accesso ai database –Fortemente integrato con l’ambiente Grid (Security) Funzionalità di Replication/Federation I test hanno dimostrato buone doti di Scalabilità e performance Già installato presso diverse applicazioni Grid –LHCb, ATLAS, Biomed, … AMGA Web Site –

17 Catania, Tutorial TriGrid su gLite 3.0, GILDA Casi d’uso gLibrary AMGA for geospatial metadata: GIS (Geographical Information System) gMOD

18 Catania, Tutorial TriGrid su gLite 3.0, gLibrary Motivazioni Grandi quantità di dato possono essere memorizzate sugli SE (è possibile dimenticarci di interagire direttamente con le DataGrid?) Ma come possiamo trovare un file facilmente di cui abbiamo di bisogno? –Avendo buona memoria basterebbe ricordare il GUID –I catalogi sui File ci permettono solo di organizzare i dati in cartelle e sottocartelle, ma non c’e’ modo di eseguire delle ‘query’ sul loro contenuto –I cataloghi metadata sono una soluzione possibile ma non sempre Catalogues are a possible solution, but not always accessibile specialmente per utenti poco esperti (strumento potente ma di uso complesso) La soluzione in Gilda: Un’applicazione di alto livello costruita utilizzando i servizi gLite: Ovvero: Un catalogo metadati + Un catalogo file + Storage Elements  gLibrary Requisiti: facilità d’uso, veloce, sicuro, estensibile

19 Catania, Tutorial TriGrid su gLite 3.0, gLibrary obiettivi Si vuole creare un Sistema di genstione multimediale su Grid –Esempi di contenuti multimediali gestiti da gLibrary:  Immagini  Animazioni  File audio  Documenti Office (Powerpoint, Word, Excel, OpenOffice)  s, PDFs, HTMLs  Altri contenuti di documenti conosciuti (ex. EGEE PPTs)  …. Tiene traccia e organizza in maniera uniforme I dettagli (metadata) dei file memorizzati sugli Storage Element e li registra nei cataloghi File Offre agli utenti un modo facile e veloce per recuperare i file a partire dall’informazione in essi contenuta

20 Catania, Tutorial TriGrid su gLite 3.0, Usage scenarios Esempi (Office/Entertainment): –Trocare tutte le presentazioni (PPTType) PowerPoint (Type) su FireMan (Keywords) tenute l’anno 2005 (Date) dal tutor M.Rossi (Speaker); –Trovare tutte le animazioni (Type) in nelle quali Giulia Roberts (Cast) ha recitato insieme a Hugh Grant (Cast) un film prodotto negli USA (Country) nel 2004 (ReleaseDate) –Trovare un brano musicale audio files (Type) acustico (Genre) in formato mp3 (Format) di Alanis Morissette (Singer) la cui durata superi i 3 minuti (Runtime). Example 2 (Biomed): –Un dottore cerca una serie di radiografie del cervello (keyword) DICOM (Type) di un uomo (Gender) tra i pazienti più grandi di 65 anni (Age) Example 3 (Complex activities): –Un job che scandisce il contenuto degli storage elements ed estrae informazione metadata a partire dal contenuto stesso dei file. Questa informazione può essere pubblicata su gLibrary per interrogazioni future

21 Catania, Tutorial TriGrid su gLite 3.0, gLibrary implementatione prototipale I file sono salvati sugli SE e registrati sui cataloghi file(LFC and/or FiReMan) Il catalogo metadati AMGA è utilizzato per archiviare e organizzare I metadati associati adi file e per rispondere alle interrogazioni degli utenti gLibrary è costruitoa partire dalle seguente collezioni AMGA: –/gLibrary informazione metadata generica per ciascun elemento –/gLAudio, /gLImage, /gLVideo, /gLPPT, /EGEEPPT, /gLDoc, … sono esempi di possivili collezioni che specificano funzionalità addizionali (saranno descritte in dettaglio piu avanti) –/gLTypes  Contiene l’associazione tra tipologia di documento ed il nome della collezione corrispondente contenente le funzionalità addizionali.  Utilizzato da gLibrary per definire nuove tipologie di documento (estensibilità) –/gLKeys Utilizzato per memorizzare la descrizione delle chiavi

22 Catania, Tutorial TriGrid su gLite 3.0, Example of entries Collection/gLibrary Entry Names Attributes FileNamePathNameTypeSubmitter 4ffaffc8-26e b460- 3d5bf08081a4 DedicatoAte.mp3/grid/gilda/calanducciAudioTony Calanducci 00454dca-a269-4b93-8a45- c4012af05600 ardizzonelarocca_is_ ppt.gpg/grid/gilda/calanducci/ EGEE EGEEDOCTony Calanducci /gLibrary (continuum) Attributes SubmissionDateEncryptionDescriptionKeywordsCreationDate :00:00falseCanzone delle vibrazioni che ha ricevuto un enorme successo tra i teenagers nel 2003 Vibrazioni :00: :44:22truegLite Information SystemR-GMA, RGMA, BDII, IS :40...

23 Catania, Tutorial TriGrid su gLite 3.0, Collection/gLTypes Entry names Attributes Path (refers to a collection) Audio /gLAudio Image /gLImage Video /gLVideo Documents /gLDOC PowerPoint /gLPPT EGEEDOC /EGEEPPT Collection/EGEEPPT Entry names Attributes TitleRuntimeAuthorTypeDateEventSpeakerTopic 00454dca-a269- 4b93-8a45- c4012af05600 Information Systems 00:30:00Valeria Ardizzione, Giuseppe La Rocca Theorical th EGEE Conferen ce Giuseppe La Rocca, Valeria Ardizzone R-GMA, BDII Collection/gLAudio Entry names Attributes SongTitleDurationAlbumGenreSingerFormat 4ffaffc8-26e b460-3d5bf08081a4 Dedicato A Te00:03:27Dedicato A TePopLe VibrazioniMP3 Collection/gLKeys Entry names Attributes Passphrase 00454dca-a269-4b93-8a45- c4012af05600 ardizzo “additional features” Example of gLibrary collections

24 Catania, Tutorial TriGrid su gLite 3.0, gLibrary Sicurezza Requisiti utente: –Un grid proxy valido con estensioni VOMS –Ruoli e gruppi VOMS sono riconosciuti da gLibrary per adattare la tipologia di utenza dinamicamente. 3 Tipologie di utenza: –gLibraryManager: Puo’ creare nuovi ‘content type’ e permete ad un utente generico della VO di diventare un gLibrarySubmitter –gLibrarySubmitters: possono aggiungere nuovi elementi e definire per essi i permessi di accesso  Permessi per: lettura, scrittura, elencazione, decriptazione) a livello di singolo elemento o interi membri di una VO o gruppi all’interno di una VO –generic VO users: Permesso di navigare ed eseguire interrogazioni sugli elementi (sugli elementi ai quali si ha accesso) Livello di crittografia base: –I nuovi file possono essere salvati sugli SE ed essreer criptati con un algoritomo a chiave simmetrica (GPG). La passphrase sara memorizzate in /gLKeys. Solo gli utenti selezionato avranno accessp alla passphrase per decriptare il contenuto del file. (Solo gli utenti che hanno un DN specifico nel ‘subject’ del loro proxy VOMS)

25 Catania, Tutorial TriGrid su gLite 3.0, AMGA Datatypes –Utilizzando i tipi di dato descritti sopra si è sicuri che i metadati inseriti possono essere facilmente ‘portati’ su tutti i tipi di database supportati da AMGA –Se non si tiene alla portabilità del DB, è possibile (in principio) specificando come tipologia di attributo un datatype caratteristico di un particolare database, (perfino I piu’ esoterici tipo: PostgreSQL Network Address o Geometric) In GILDA si è fatto qualche tentativo con il tipo: GIS Datatype offerto da MySQL 5 AMGA per GIS Datatype Metadata

26 Catania, Tutorial TriGrid su gLite 3.0, Example with ESR data Query> listattr /ESR/opera_nno >> Dataset >> varchar(30) >> File_Name >> varchar(50) >> Footprint >> multipolygon >> Lat >> numeric(8,2) >> Level >> varchar(5) >> Lon >> numeric(8,2) >> Orbit >> int(5) >> Proc_centre >> varchar(50) >> Proc_date >> timestamp >> Start_Date >> timestamp >> Stop_Date >> timestamp... Nella collezione /ESR/opera_nno si chiede ad AMGA di utilizzare il table engine MyISAM Si è utilizzato il comando insert che valuta tutti gli elementi da inserire: insert sameEntryName Dataset "GOME" Level 2 Version "v1.1" Orbit File_Name "/grid/esr/gome/utv/2000/03/ utv" Start_Date '" :01:00.0"' Stop_Date '" :58:00.0"' Footprint 'MPolyFromText("MULTIPOLYGON((( , , , , , , , , … … , , , , , , )))")' Proc_centre "EGEE" Proc_date '" :20:00.0"' File_input " lv1" Proc_description '"Algorithm: utv"'

27 Catania, Tutorial TriGrid su gLite 3.0, Query di esempio Riepilogando le seguenti funzioni non danno problemi: GeomFromText(), MPolyFromText(), Contains(), AsText() In principio PostgreSQL+PostGIS funzionarebbe ma questo non e’ stato ancora ampiamente testato Query> selectattr /ESR/opera_nno:File_Name /ESR/opera_nno:Start_Date /ESR/opera_nno:Stop_Date 'Contains(/ESR/opera_nno:Footprint, GeomFromText("POINT( )"))' >> /grid/esr/gome/utv/2000/03/ utv >> :01:00 >> :58:00 Query> selectattr /ESR/opera_nno:File_Name AsText(/ESR/opera_nno:Footprint) '' >> /grid/esr/gome/utv/2000/03/ utv >> MULTIPOLYGON((( , , , , , , , , , , ,75.07… Si controlli se l’elemento e’ correttamente inserito (si usi AsText() per decodificare il MultiPolygon): Si voglia cercare un elemento che contiene nel poligono un particolare punto:We want to look for a Polygon that cointains a given point:

28 Catania, Tutorial TriGrid su gLite 3.0, gMOD: grid Movie On Demand gMOD offre un servizio di Video-On-Demand L’utente sceglie tra una lista di video potendo fare lo ‘streaming’ del video selezionato Per ogni video è disponibile una vasta serie di dettagli: Title, Runtime, Country, Release Date, Genre, Director, Case, Plot Outline. Grazie all’informazione associata l’utente può cercare una particolare animazione interrogando su uno o piu’ attributi Due tipologie di utenza possono interagire con gMOD: TrailersManagers Che puo’ amministrare il database di animazioni (fare l’upload di nuovi elementi e definire per essi i metadati); GILDA VO users (guest) possono navigare, cercare e scegliere un’animazione da visualizzare.

29 Catania, Tutorial TriGrid su gLite 3.0, gMOD under the hood Sviluppato utilizzando i servizi gLite + il portale GENIUS: Storage Element, situati in posti diversi, contengono fisicamente le animazioni FireMan, il catalogo file, tiene traccia in quale Storage Element è loccalizzata una particolare animazione AMGA contiene le informazioni addizionali con i dettagli di ogni animazione, è inoltre possibile fare interrogazioni per il recuper di una o più animazioni Il Virtual Organization Membership Service (VOMS) è utilizzato per assegnare i permessi ed I ruoli alle diverse tipologie di utenze The Workload Management System (WMS) è responsabile di recuperare l’animazione dal corretto SE ed eseguire lo streaming sul desktop dell’utente attraverso la rete

30 Catania, Tutorial TriGrid su gLite 3.0, gMOD interazioni VOMS FireMan Catalogue Metadata Catalogue WNWN WN CE Storage Elements User Genius Portal Workload Management System get Role AMGA

31 Catania, Tutorial TriGrid su gLite 3.0, gMOD screenshot gMOD [ accessibile attraverso il portale Genius: https://glite-tutor.ct.infn.ithttps://glite-tutor.ct.infn.it

32 Catania, Tutorial TriGrid su gLite 3.0,


Scaricare ppt "FESR www.trigrid.it Trinacria Grid Virtual Laboratory The AMGA metadata catalog Riccardo Bruno – INFN Sez.CT Catania, Tutorial TriGrid su gLite 3.0, 27-28.07.2006."

Presentazioni simili


Annunci Google