15
FESR www.trigrid.it Trinacria Grid Virtual Laborato University of Coimbra University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo Grid Tutorial Catania, 14-15 Marzo 2006

FESR Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Embed Size (px)

Citation preview

Page 1: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

FESR

www.trigrid.it

Trinacria Grid Virtual Laboratory

University of CoimbraUniversity of Coimbra

AMGA - Official Metadata Service for EGEE

Salvatore Scifo

INFN Catania

Primo Grid Tutorial

Catania, 14-15 Marzo 2006

Page 2: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 2

Contenuti

• Background e Motivazioni

• Concetti di base sui metadati

• Requisiti e Architettura

• Replicazione dei Metadati

Page 3: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 3

Perchè AMGA?

• Generalmente Grid contiene milioni di file distribuiti su diversi siti

• Utenti e applicazioni necessitano di un meccanismo efficiente per:– trovare agevolmente i file di interesse sulla Grid– ricercare file per mezzo di indicazioni sui loro contenuti (metadata

querying)

• Questo è fornito– associando attributi descrittivi (metadata) ai file– pubblicando queste informazioni in appositi cataloghi, accessibili e

interrogabili da utenti e/o applicazioni client

Page 4: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 4

I requisiti del Metadata Service

• Un servizio di metadati deve esporre una interfaccia completa ma semplice, tale da essere facilmente usabile da ogni utente

• Dovrebbe essere flessibile e fornire schemi dinamici al

fine di supportare un gran numero di domini applicativi– Uno Schema è un set di metadati raggruppati attorno al

significato logico di una data entità (es. Dublin Core)

• Il servizio deve permettere la definizione di metadati strutturati e gerarchici che permettono la definizione di collezioni– Collezione: un insieme di entry + valori degli attributi associati– (per esempio: una collezione potrebbe descrivere tutti i file video in

un qualunque formato di codifica, title, singer, duration, format, owner, …)

Page 5: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 5

I requisiti del Metadata Service

• Deve essere progettato con un’attenzione particolare alla scalabilità, per permettere l’interazione con un largo numero di entry (diversi milioni)

• Per quanto concerne la sicurezza è richiesto un meccanismo di accesso a livelli differenti per utenti differenti

• Qualità del servizio– Ridurre i tempi di latenza della rete migliorando le performance per

client WAN– Permettere l’accesso off-line al servizio – repliche locali– Essere trasparente ai differenti Back End (l’ambiente GRID è

eterogeneo per definizione)– Garantire affidabilità e scalabilità

Page 6: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 6

Un pò di storia

• AMGA nasce dalla valutazione dei Metadata Services esistenti per gli esperimenti HEP (High Energy Physics):– AMI (ATLAS), RefDB (CMS), Alien Metadata Catalogue (ALICE)– Analoghi concetti e analoghi obiettivi – Progettazione dipendente dal dominio dell’applicazione

(scarsamente riusabile)– Molte limitazioni tecniche: prestazioni, scalabilità, velocità,

flessibilità

• AMGA – ARDA Metadata Grid Application– ARDA ha adottato AMGA come EGEE Metadata Interface ufficiale– Prima release integrata in gLite 1.5– Il servizio è disponibile anche come componente “standalone”

Basato sui requisiti dell’esperimento LHC General purpose – aperto a qualunque dominio applicativo Progettato in collaborazione con il gLite/EGEE team Incorpora i feedback del gruppo GridPP (Grid Particle Physicists)

Page 7: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 7

AMGA – Funzionalità

• Schemi dinamici– Schemi modificabili a runtime dall’utente

Create schemas Delete schemas Add attributes Drop attributes

• Metadati strutturati e gerarchici– Gli schemi possono contenere sotto-schemi

– Analogia con il file system: Schema Directory Entry File

• Query flessibili– SQL-like query language– Join tra schemi e collezioni differenti ammessi

Page 8: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 8

AMGA – Concetti Base

• Per comprendere come lavora AMGA pensiamo a:– schema table– collection instance table– attribute column– entry row

• Schema - set di attributi associabili ad una directory/file

• Entry - astrazione di una directory/file registrata sul catalogo

• Collection - un set di entry (istanze di directory/file) con i valori degli attributi definiti dallo schema

• Attributo – è una coppia <nome,valore> con tipo– Nome – il nome dell’attributo– Valore – il valore dell’attributo– Tipe – il tipo del valore (int, float, varchar,…)

Page 9: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 9

AMGA - Sicurezza

• Access control– Tutte le entry di una collection/directory condividono la stessa ACL– È possibile filtrare l’accesso ai gruppi di utenti in uno Unix style

permissions

• Client Authentication – Username/password– General X509 certificates– Grid-proxy certificates – VOMS - Virtual Organization Management System è supportato

• Secure connections – SSL– SSL implementato nei webservice Authenticate

with X509 Cert VOMS-Cert

with Group & Role information

VOMS-Cert

Resource management

AMGAOracle

VOMS

Page 10: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 10

AMGA - Implementazione

• C++ multiprocess server– Backends

Oracle, MySQL, PostgreSQL, SQLite

– Front Ends TCP Streaming

• High performance• Client API for C++, Java,

Python, Perl, Ruby

SOAP (web services)• Interoperability• Scalability

• Standalone Python Library implementation– Data stored on file system

Metadata Server

MDServer

SOAP

TCP Streaming

PostgreSQL

Oracle

SQLite

Client

Client

MySQL

Python Interpreter

Metadata Python

APIClient

filesystem

Page 11: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 11

AMGA - Metadata Replication

• AMGA fornisce un meccanismo efficiente per la replica del servizio– Scalabilità – ottime prestazioni da 100 a 1000 utenti– Distribuzione Geografica nasconde la latenza di rete– Affidabilità – la caduta di un singolo nodo non costituisce

“breakdown”– Utilizzo off-line – access off-line (laptops)

• Architettura– Replica asincrona

Scrittura su un database qualunqu e aggiornamento asincrono sulle altre repliche

– Modello Master-Slave Scritture permesse solo sul master, il master aggiorna tutti gli slave

– Replica a livello Applicativo L’applicazione si occupa di garantire la coerenza tra le repliche

– Replica Parziale La replica avviene solo su sotto-alberi della gerarchia dei metadati.

Page 12: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 12

AMGA - Metadata Replication Patterns

MetadataCommands

RedirectedCommands

Full replication Partial replication

Federation Proxy

Page 13: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 13

Biomed

• Medical Data Manager – MDM– Conservare immagini mediche su GRID e recuperarle tramite i metadati

associati– Sviluppato su gLite 1.5 data management system– Dimostrato alla conferenza di EGEE Pisa, Ottobre 2005

• Requisiti di sicurezza molto restrittivi– I dati dei pazienti sono dati sensibili (privacy)– I dati devono essere criptati sullo storage– L’accesso ai metadati deve essere ristretto solo agli utenti autorizati

• AMGA adottato come metadata server– Dimostrata funzionalità di autenticazione– Dimostrato la crittografia dei contenuti– Utilizzato come virtualizzazione del Database

• Riferimenti– https://uimon.cern.ch/twiki/bin/view/EGEE/DMEncryptedStorage– http://project-arda-dev.web.cern.ch/project-arda-dev/

metadata

ImagesGUID Date

PatientID Doctor

DoctorName Hospital

Patient

Page 14: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 14

Conclusioni

• AMGA è il servizio di metadati per Grid – permette a utenti e applicazioni di definire e valorizzare metadati

descrittivi per file e identificare tali file in base ai valori dei metadati

• AMGA è basato RDBMS – Multidomain metadata: permette di definire schemi di attributi che

soddisfino le necessità dell’utente (metadata customization)– Fornisce un meccanismo per la replica del servizio il quale assicura

una disponibilità locale del database e assicura l’aggiornamento delle istanze replicate

– Database virtualization: un servizio di accesso a database per applicazioni Grid

• AMGA integrazione perfetta in un ambiente Grid– Il Metadata Service è un componente Grid– Il servizio è compatibile con la Grid Security Infrastructure– AMGA nasconde la eterogeneità dei Database server usati come

back end

Page 15: FESR  Trinacria Grid Virtual Laboratory University of Coimbra AMGA - Official Metadata Service for EGEE Salvatore Scifo INFN Catania Primo

Catania, Primo Grid Tutorial, 14.03.2006 15

Questions…