E-science grid facility for Europe and Latin America The AMGA Metadata Catalogue Riccardo Bruno INFN Catania,

Slides:



Advertisements
Similar presentations
Data Management Expert Panel - WP2. WP2 Overview.
Advertisements

FP7-INFRA Enabling Grids for E-sciencE EGEE Induction Grid training for users, Institute of Physics Belgrade, Serbia Sep. 19, 2008.
FP7-INFRA Enabling Grids for E-sciencE EGEE Induction Grid training for users, Institute of Physics Belgrade, Serbia Sep. 19, 2008.
SOFTWARE PRESENTATION ODMS (OPEN SOURCE DOCUMENT MANAGEMENT SYSTEM)
The AMGA metadata catalog Riccardo Bruno - INFN Madrid, 07-11/05/2007.
Asterios Katsifodimos Saturday, May 23, 2015 High Performance Computing systems Lab University of Cyprus The AMGA metadata catalog – An Overview Slides.
Grid and CDB Janusz Martyniak, Imperial College London MICE CM37 Analysis, Software and Reconstruction.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite Grid Services Abderrahman El Kharrim
Makrand Siddhabhatti Tata Institute of Fundamental Research Mumbai 17 Aug
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Riccardo Bruno INFN.CT Sevilla, Sep 2007 The GENIUS Grid portal.
KISTI’s Activities on the NA4 Biomed Cluster Soonwook Hwang, Sunil Ahn, Jincheol Kim, Namgyu Kim and Sehoon Lee KISTI e-Science Division.
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America The AMGA metadata catalog with use cases.
INFSO-RI Enabling Grids for E-sciencE Logging and Bookkeeping and Job Provenance Services Ludek Matyska (CESNET) on behalf of the.
E-science grid facility for Europe and Latin America Watchdog: A job monitoring solution inside the EELA-2 Infrastructure Riccardo Bruno,
EGEE-III INFSO-RI Enabling Grids for E-sciencE The Medical Data Manager : the components Johan Montagnat, Romain Texier, Tristan.
Marianne BargiottiBK Workshop – CERN - 6/12/ Bookkeeping Meta Data catalogue: present status Marianne Bargiotti CERN.
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America AMGA Server Installation Tony Calanducci.
INFSO-RI Enabling Grids for E-sciencE Distributed Metadata with the AMGA Metadata Catalog Nuno Santos, Birger Koblitz 20 June 2006.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
INFSO-RI Enabling Grids for E-sciencE AMGA Metadata Server - Metadata Services in gLite (+ ARDA DB Deployment Plans with Experiments)
Enabling Grids for E-sciencE EGEE-III INFSO-RI I. AMGA Overview What is AMGA Metadata Catalogue of EGEE’s gLite 3.1 Middleware Main Feature of.
E-science grid facility for Europe and Latin America Using Secure Storage Service inside the EELA-2 Infrastructure Diego Scardaci INFN (Italy)
EGRIS-1 E-infrastructure shared between Europe and Latin America AMGA Metadata Services: examples and usage scenarios Tony Calanducci INFN.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks AMGA PHP API Claudio Cherubino INFN - Catania.
Hands on session: the AMGA Metadata Catalogue Riccardo Bruno - INFN Madrid, 07-11/05/2007.
Getting started DIRAC Project. Outline  DIRAC information system  Documentation sources  DIRAC users and groups  Registration with DIRAC  Getting.
EGEE-II INFSO-RI Enabling Grids for E-sciencE Hands on session: the AMGA Metadata Catalogue.
EGEE User Forum Data Management session Development of gLite Web Service Based Security Components for the ATLAS Metadata Interface Thomas Doherty GridPP.
E-infrastructure shared between Europe and Latin America FP6−2004−Infrastructures−6-SSA gLite Information System Pedro Rausch IF.
INFSO-RI Enabling Grids for E-sciencE ARDA Experiment Dashboard Ricardo Rocha (ARDA – CERN) on behalf of the Dashboard Team.
Enabling Grids for E-sciencE EGEE-II INFSO-RI Medical Data Manager 1 Dicom retrieval : overview of the DPM One command line to retrieve a file:
Development of e-Science Application Portal on GAP WeiLong Ueng Academia Sinica Grid Computing
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America Grid2Win: Porting of gLite middleware to.
Database authentication in CORAL and COOL Database authentication in CORAL and COOL Giacomo Govi Giacomo Govi CERN IT/PSS CERN IT/PSS On behalf of the.
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America gLite Information System Claudio Cherubino.
David Adams ATLAS ATLAS-ARDA strategy and priorities David Adams BNL October 21, 2004 ARDA Workshop.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks A GRID based platform to host multiple repositories.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
FP6−2004−Infrastructures−6-SSA Enabling Grids for E-sciencE The AMGA Metadata Catalog Introduction and hands-on exercises Nuno Santos.
INFSO-RI Enabling Grids for E-sciencE University of Coimbra GSAF Grid Storage Access Framework Salvatore Scifo INFN of Catania EGEE.
Tutorial on Science Gateways, Roma, Catania Science Gateway Framework Motivations, architecture, features Riccardo Rotondo.
FESR Consorzio COMETA - Progetto PI2S2 GSAF Grid Storage Access Framework Salvatore Scifo
FESR Consorzio COMETA - Progetto PI2S2 The AMGA Metadata Catalog with use cases Salvatore Scifo, Tony Calanducci INFN Catania Grid.
IST E-infrastructure shared between Europe and Latin America The GILDA t-Infrastructure and the GENIUS portal Christian Grunfeld,
FESR Consorzio COMETA - Progetto PI2S2 AMGA Official Metadata Service for EGEE Salvatore Scifo – Consorzio Cometa - Catania, ITALY.
FESR Consorzio COMETA - Progetto PI2S2 AMGA Official Metadata Service for EGEE Salvatore Scifo – Consorzio Cometa - Catania, ITALY.
REST API to develop application for mobile devices Mario Torrisi Dipartimento di Fisica e Astronomia – Università degli Studi.
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America LFC Server Installation and Configuration.
Antonio Fuentes RedIRIS Barcelona, 15 Abril 2008 The GENIUS Grid portal.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite Grid Introduction Salma Saber Electronic.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) gLite AMGA Riccardo Bruno
Jean-Philippe Baud, IT-GD, CERN November 2007
Grid2Win Porting of gLite middleware to Windows XP platform
gLite Basic APIs Christos Filippidis
gLite Information System
AMGA - Official Metadata Service for EGEE
AMGA Metadata Service Vladimir Dimitrov IPP-BAS “gLite middleware Application Developers Course”, Sofia, Bulgaria,
Security and Replication of Metadata with AMGA
AMGA Web Interface Salvatore Scifo INFN sez. Catania
GSAF Grid Storage Access Framework
GSAF Grid Storage Access Framework
New developments on the LHCb Bookkeeping
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
AMGA Metadata Service Vladimir Dimitrov IPP-BAS “gLite middleware Application Developers Course”, Plovdiv, Bulgaria,
AMGA Metadata Service Vladimir Dimitrov IPP-BAS “gLite middleware Application Developers Course”, Sofia, Bulgaria,
AMGA Web Interface Vincenzo Milazzo
The AMGA metadata catalog
EGEE Middleware: gLite Information Systems (IS)
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Presentation transcript:

E-science grid facility for Europe and Latin America The AMGA Metadata Catalogue Riccardo Bruno INFN Catania, EELA-2 NA2 Training Manager 1 st EELA-2 Grid School (E2GRIS1), 02 nd -15 th Nov 2008

2 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Metadata services background and possible uses on a grid environment Architecture and features of the gLite Metadata Service New AMGA Features –existing DB import –native SQL support Use cases Contents

3 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Grids allow to save millions of files spread over several storage sites. Users and applications need an efficient mechanism –to describe files –to locate files based on their contents This is achieved by –associating descriptive attributes to files  Metadata is data about data –answering user queries against the associated information Why Grid needs Metadata?

4 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Entries – Representation of real world entities which we are attaching metadata to for describing them Attribute – key/value pair –Type – The type (int, float, string,…) –Name/Key – The name of the attribute –Value - Value of an entry's attribute Schema – A set of attributes Collection – A set of entries associated with a schema Metadata - List of attributes (including their values) associated with entries 4 Basic Metadata Concept

5 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Movie trailers files (entries) saved on Grid Storage Elements and registered into File Catalogue We want to add metadata to describe movie content. A possible schema: –Title -- varchar –Runtime -- int –Cast -- varchar –LFN -- varchar A metadata catalogue will be the repository of the movies’ metadata and will allow to find movies satisfying users’ queries Example: Movie Trailers

6 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Attribute ss Schema Entries Collection /trailers Trailer’s example Entry names (GUIDs)TitleRunt ime CastLFN 8c3315c1-811f-4823-a778-60a My Best Friend’s wedding 80Julia Roberts lfn:/grid/gilda/movies/m ybfwed.avi 51a18b7a-fd21-4b2c-aa74-4c53ee64846a Spider-man 2120Kirsten Dunst lfn:/grid/gilda/movies/s piderman2.avi 401e6df4-c1be c-ce3eb5c54fcb The God Father113Al pacinolfn:/grid/gilda/movies/g odfather.avi

7 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Information about files -- but not only! metadata can describe any grid entity/object –ex: JobIDs - add logging information to your jobs monitoring of running applications: –ex: ongoing results from running jobs can be published on the metadata server Inputset for a storm of parametric jobs information exchanging among grid peers –ex: producers/consumers job collections: master jobs produce data to be analyzed; slave jobs query the metadata server to retrieve input to “consume” Simplified DB access on the grid –Grid applications that needs structured data can model their data schemas as metadata 7 Metadata service on the Grid

8 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Inputset for parametric jobs /grid/my_simulation/input |entry |x1 |x2 |y1 |y2 |step |isTaken |found |output | | | |1 | | | | | |JobID1234 |No pillars| | |2 | |3435 |3423 | |0.003 |No | | | |3 | | | |132 |0.002 |No | | | | and so on | This collection lists all the parameter set to be run on the Grid On the WN, one of the inputset is selected and “isTaken” is set = JOB_ID of the job that has fetched it Results is also written in the “found” column to monitor the simulation so users can check the simulation from a UI, querying the metadata server, or from a WebPage (using APIs for ex) StdOutput can be copied also into the “output” text column 8

9 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – A possible parameter-get.sh script #!/bin/bash # Find the first set of parameters that has not been taken by noone ID=`mdcli find /grid/my_simulation/input 'isTaken="No"' | head -1` # Exit if all the parameters set has been already analyzed if [ "$ID" = "" ]; then exit 1; fi # set isTaken as its JOB_ID so that no one else will analyze the same set of parameter mdcli setattr /grid/my_simulation/input/$ID isTaken `echo $GLITE_WMS_JOBID` # retrieve the set of the parameter to be scanned X1=`mdcli getattr /grid/my_simulation/input/$ID x1 | tail -1` Y1=`mdcli getattr /grid/my_simulation/input/$ID y1 | tail -1` X2=`mdcli getattr /grid/my_simulation/input/$ID x2 | tail -1` Y2=`mdcli getattr /grid/my_simulation/input/$ID y2 | tail -1` STEP=`mdcli getattr /grid/my_simulation/input/$ID step | tail -1` # Run the scan with the proper parameter and save the output to output.txt java -cp issgc_sfk_nesc.jar:sfkscanner.jar uk.ac.nesc.toe.sfk.radar.Scanner $X1 $Y1 $X2 $Y2 $STEP > output.txt # the Scanner class returns the writing "No pillars found in this area" or "Found area:" - so this will give useful info for monitoring during the run mdcli setattr /grid/my_simulation/input/$ID found `cat output.txt | grep -i found` # save the output (and the pillar text if found) on the metadata server mdcli setattr /grid/my_simulation/input/$ID output `cat output.txt` 9

10 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Metadata Catalogue WNWN WN CE /results collection SE Customer/Sc ientist Scientist/Developer submitting jobs Workload Manager showing results as long as they are produced Monitoring of running application

11 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Suppose we have two sets of jobs: –Producers: they generate a file, store on a SE, register it onto the LFC File Catalogue assigning a LFN –Consumers: they will take a LFN, download the file and elaborate it A Metadata collection can be used to share the information generated by the Producers; it could act as a “bag-of-LFNs” (bag-of-task model) from which Consumers can fetch file for further elaboration Use a Metadata services to exchange data among running jobs

12 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Metadata Catalogue WNWN WN CE /bag-of-LFNs collection SE Scientist/Developer submitting jobs Workload Manager WNWN WN Producers jobs Consumers jobs CE fetch LFN put LFN Information exchanging among grid peers

13 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Official metadata service for the gLite middleware –but no dependencies from gLite software –it can be used with other grid technologies/other environments AMGA: Arda Metadata Grid Application Provide a complete but simple interface, in order to make all users able to use it easily. Designed with scalability in mind in order to deal with large number of entries –based on a lightweight and streamed text-based protocol, like HTTP/SMTP Grid security is provided to grant different access levels to different users. Flexible with support to dynamic schemas in order to serve several application domains Simple installation by tar source, RPMs or Yum/YAIM 13 The AMGA Metadata Catalogue

14 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Analogy to the RDBMS world: –schema  table schema –collection  db table –attribute  schema column –entry  table row/record Analogy to file system: –Collection  Directory –Entry  File Example: –createdir /jobs ( create table jobs ) –addattr /jobs jobStatus int ( alter table jobs add column jobStatus int ) –addentry /jobs/job1 jobStatus 0 ( insert into jobs (jobstatus) values(1) ) –updateattr /jobs jobStatus 1 jobID>100 ( update jobs set jobStatus=1 where JobID>100 ) 14 AMGA Analogies

15 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Dynamic Schemas –Schemas can be modified at runtime by client  Create, delete schemas  Add, remove attributes AMGA collections are hierarchical organized –Collections can contain sub-collections –Sub-collections can inherit/extend parent collection’ schema Flexible Queries –SQL-like query language –Different join type (inner, outer, left, right) between schemas are provided selectattr /gLibrary:FileName /gLAudio:Author /gLAudio:Album '/gLibrary:FILE=/gLAudio:FILE and like(/gLibrary:FileName, “%.mp3")‘  Support for Views, Constraints, Indexes AMGA Features

16 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Example

17 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Unix style permissions - users and groups ACLs – Per-collection or per-entry (table row). Secure client/server connections – SSL Client Authentication based on –Username/password –General X509 certificates (DN based) –Grid-proxy certificates (DN based) VOMS support: –VO attribute maps to defined AMGA user –VOMS Role maps to defined AMGA user –VOMS Group maps to defined AMGA group 17 AMGA Security

18 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), –  C++ multiprocess server –Backends § Oracle, MySQL 4/5, PostgreSQL, SQLite –Front Ends § TCP text streaming High performance Client API for C++, Java, Python, Perl, PHP § SOAP (deprecated) Interoperability Scalability §WS-DAIR Interface (new in AMGA 2.0) WS-enable environment  Standalone Python Library implementation –Data stored on file system AMGA server runs on SLC3/4, Fedora Core, Gentoo, Debian AMGA Implementation

19 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – ‣ Using the above datatypes you are sure that your metadata can be easily moved to all supported back- ends ‣ If you do not care about DB portability, you can use, in principle, as entry attribute type ALL the datatypes supported by the back-end, even the more esoteric ones (PostgreSQL Network Address type or Geometric ones) AMGA Datatypes

20 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Performance and statistics 20

21 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – TCP Streaming Front-end –mdcli & mdclient CLI and C++ API (md_cli.h, MD_Client.h) –Java Client API and command line mdjavaclient.sh & mdjavacli.sh (also under Windows !!) –Python and Perl Client API –PHP Client API – NEW  developed totally by the GILDA team – INFN CT –AMGA Web Interface (AMGA WI) ---NEW  Developed totally by the GILDA team – INFN CT  Based on JAVA AMGA Standard APIs  Web Application using standard as JSP Custom Tags, Servlet SOAP Frontend (WSDL) –C++ gSOAP –AXIS (Java) –ZSI (Python) Accessing AMGA from UI/WNs

22 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – AMGA Web Interface

23 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Modify Schema Instance Delete entry Collection Management

24 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – AMGA provides a replication/federation mechanisms Motivation –Scalability – Support hundreds/thousands of concurrent users –Geographical distribution – Hide network latency –Reliability – No single point of failure –DB Independent replication – Heterogeneous DB systems –Disconnected computing – Off-line access (laptops) Architecture –Asynchronous replication –Master-slave – writes only allowed on the master –Application level replication  Replicate Metadata commands –Partial replication – supports replication of only sub-trees of the metadata hierarchy Advanced features: Metadata Replication

25 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Full replication Partial replication FederationProxy Metadata Replication: Use cases

26 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Since AMGA , a new import feature allow to access existing DB tables Once imported into AMGA the tables from one or more DBs you want to access through AMGA, you can exploit many of the features brought to you by AMGA for your existing tables Advantages: –your db tables can be accessed by grid users/applications, using grid authentication (VOMS proxies)/authorization with ACLs –exploiting AMGA federation features you can access several databases together from the Grid 26 Existing DB access with AMGA

27 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – To remember: AMGA stores its own tables in its DB backend To access and existing DB you have 2 option:  import the tables of the DB you want to access to into AMGA DB backend  viceversa, add AMGA DB backed tables to the DB you want to access to Use the import command by root to “mount” your table into the AMGA collection hierarchy Query> whoami >> root Query> createdir /world Query> cd /world/ Query> import world.City /world/City Query> import world.Country /world/Country Query> import world.CountryLanguage /world/CountryLanguage 27 Set up AMGA to access your tables

28 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Properly set up authorization on the imported tables: Query> acl_remove /world/City/ system:anyuser Query> acl_remove /world/Country system:anyuser Query> acl_add /world/ gilda:users rx Query> acl_show /world >> root rwx >> gilda:users rx >> system:anyuser rx Query> selectattr City:CountryCode City:Name 'like(City:Name, "Am%") limit 5' >> NLD >> Amsterdam >> NLD >> Amersfoort >> BRA >> Americana >> ECU >> Ambato >> IDN ‣ More information on existing DB ‣ ‣ Set up AMGA to access your tables

29 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – DB Access and Replication MySQL DB Movie Metadata PostgreSQL DB User Comments Oracle DB Actors PostgreSQL DB Storage AMGA master AMGA master AMGA master AMGA master AMGA slave / /movie/storage/actors/comments /movie/info /movie/title /movie/aka_title /storage/LFN /storage/SEs /actors/name /actors/info/comments/i nfo /comments/users 29

30 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Native SQL Support Objective: –implement native SQL query processing functionality in AMGA Current Status: –direct SQL data statement in SQL92 Entry Level has been implemented in the 1.9 release  Including 4 statements: SELECT, DELETE, UPDATE and INSERT  ALL SQL commands should be issued in UPPERCASE Entry name: –when a new entry is created with addentry/addentries, a name has to be assigned (filling the “file” column in the AMGA db backend)  in the INSERT implementation, it’s filled automatically with a random guid 30

31 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Native SQL Support Permission handling –grant/revoke statemant are not supported –ACL can be changed using the existing AMGA commands DB entity mapping: –DB Table Name = AMGA Directory/Collection –DB TableName.attribute = AMGA TableName:attribute Testing: –PostgreSQL backend –Plain table, permission, view, schema have not fully tested –final version into AMGA 2.0 after summer and presented officially at the EGEE conference in Istanbul 31

32 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Native SQL example Query> INSERT INTO `City` VALUES (1,'Kabul','AFG','Kabol', ) >> Operation Success Query> dir /world/City/ >> /world/City/80b4fe646ed11dda >> entry Query> SELECT COUNT (*) FROM /world/City >> 3429 Query> SELECT * FROM /world/City WHERE Name LIKE '%Catani%' >> 1472 >> Catania >> ITA >> Sisilia >> Query> SELECT /world/City:Name, /world/City:District, /world/Country:Name, /world/Country:Region, /world/Country:Continent FROM /world/City, /world/Country WHERE /world/City:Name LIKE '%Catani%' AND Code = 'ITA' >> Catania >> Sisilia >> Italy >> Southern Europe >> Europe 32

33 Dublin (Ireland), Tutorial for User and Site Admin., – LHCb-bookkeeping –Migrated bookkeeping metadata to ARDA prototype  20M entries, 15 GB  Large amount of static metadata –Feedback valuable in improving interface and fixing bugs –AMGA showing good scalability Ganga –Job management system  Developed jointly by Atlas and LHCb –Uses AMGA for storing information about job status  Small amount of highly dynamic metadata Early adopters of AMGA

34 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Medical Data Manager – MDM –Store and access medical images and associated metadata on the Grid –Built on top of gLite 1.5 data management system –Demonstrated at last EGEE conference (October 05, Pisa) Strong security requirements –Patient data is sensitive –Data must be encrypted –Metadata access must be restricted to authorized users AMGA used as metadata server –Demonstrates authentication and encrypted access –Used as a simplified DB More details at – Biomed - MDM

35 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – gMOD provides a Video-On-Demand service User chooses among a list of video and the chosen one is streamed in real time to the video client of the user’s workstation For each movie a lot of details (Title, Runtime, Country, Release Date, Genre, Director, Case, Plot Outline) are stored and users can search a particular movie querying on one or more attributes Two kind of users can interact with gMOD: TrailersManagers that can administer the db of movies (uploading new ones and attaching metadata to them); GILDA VO users (guest) can browse, search and choose a movie to be streamed. gMOD: grid Movie On Demand

36 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Built on top of gLite services: Storage Elements, sited in different place, physically contain the movie files LFC, the File Catalogue, keeps track in which Storage Element a particular movie is located AMGA is the repository of the detailed information for each movie, and makes possible queries on them The Virtual Organization Membership Service (VOMS) is used to assign the right role to the different users The Workload Management System (WMS) is responsible to retrieve the chosen movie from the right Storage Element and stream it over the network down to the user’s desktop or laptop gMOD under the hood

37 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – VOMS LFC File Catalogue Metadata Catalogue WNWN WN CE Storage Element s User GENIUS Portal Workload Management System get Role AMGA gMOD interactions

38 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – gMOD is accesible through the Genius Portal ( gMOD screenshot

39 Dublin (Ireland), Tutorial for User and Site Admin., – GSAF Framework (Grid Storage Access Framework) GSAF is an Object Oriented Framework –built on top of the Grid Metadata Service and Grid Data Service and exposes classes and related methods for applications Main objective –hide the complexity and the fragmentation of the several underlying APIs –satisfy functional requirements shared among applications –ensure atomicity among different data manipulation operations

40 Dublin (Ireland), Tutorial for User and Site Admin., – GSAF System Architecture The core of the framework is designed as a set of plug-ins Its design covers several Object Oriented Design Patterns (Singleton, Strategy method, Factory method, Template Method, Iterator and Composite). This ensures a very clean and simple software architecture with an high degree of cohesion and decoupling. Built on top of Data Management Services of the Grid Middleware

41 Dublin (Ireland), Tutorial for User and Site Admin., – Class Diagram Object Model Logical Entities /Java Object mapping Iterator Pattern Factory Method Pattern Command Pattern Strategy Method Pattern Composite Pattern

42 Dublin (Ireland), Tutorial for User and Site Admin., –

43 Dublin (Ireland), Tutorial for User and Site Admin., –

44 Dublin (Ireland), Tutorial for User and Site Admin., –

45 Dublin (Ireland), Tutorial for User and Site Admin., – ADAT project

46 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – gLibrary challenge is to offer a multiplatform, flexible, secure and intuitive system to handle digital assets on a Grid Infrastructure. By Digital Asset, we mean any kind of content and/or media represented as a computer file. Examples: –Images –Videos –Presentations –Office documents – s, web pages –Newsletters, brochures, bulletins, sheets, templates –Receipts, e-books –... (only the imagination can make a limit) It allows to store, organize, search and retrieve those assets on a Grid environment. 46 What is gLibrary

47 Dublin (Ireland), Tutorial for User and Site Admin., – User’s local assets are uploaded to one or more (as replicas) Storage Systems the user is authorized on –Uploads are managed through Java Applets: a direct GSIFTP copy is done from the local file to the chosen Storage Element File already on the Grid can be managed by gLibrary too –a File Catalogue browser is integrated to select existing grid files. 47 Store assets on the Grid

48 Dublin (Ireland), Tutorial for User and Site Admin., – All entries are organized according to their type: –a list of specific attributes to describe each kind of assets to be managed by the system; –hierarchical (child type shares parent’s attributes) –defined by the gLibrary administrators –queried by users Assets can be organized also by category: –Group together related assets of different types; –Useful also to define subset of assets belonging to the same type –Multiple category assignment per asset 48 Organize assets

49 Dublin (Ireland), Tutorial for User and Site Admin., – Assets are browsed selecting a type (or category) and selecting one or more filters: –type attributes chosen from a defined list, used to narrow the result set Filter application is cascading and context-sensitive: the selection of a filter value dynamically influences subsequent filter values (“à la iTunes” browser) Classic search available too 49 Search assets

50 Dublin (Ireland), Tutorial for User and Site Admin., – User is presented with a list of asset replicas Download from the chosen storage element is matter of a mouse click Transfer handled over GridFTP with a Java Applet 50 Retrieve assets from the Grid

51 Dublin (Ireland), Tutorial for User and Site Admin., – Implemented as Web 2.0 application –AJAX and Javascript are strongly used to offer a desktop like user experience –Business logic implemented using PHP 5 OOP support 51 Features

52 Dublin (Ireland), Tutorial for User and Site Admin., – Browsing screenshot

53 Dublin (Ireland), Tutorial for User and Site Admin., – Entry detail screenshot

54 Dublin (Ireland), Tutorial for User and Site Admin., – Upload screenshot

55 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – User Login applet AMGA Metadata Catalogue LFC File Catalogu e SE Upload/Download applet VOMS Server 1. local proxy creation 2. proxy transfer over HTTPS 3. get role 6. direct transfer from SE 5. proxy retrieved over HTTPS 4. find the right asset gLibrary Architecture overview

56 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – gLibrary for a mammograms repository

57 Dublin (Ireland), Tutorial for User and Site Admin., – gLibrary for De Roberto works 57

58 Dublin (Ireland), Tutorial for User and Site Admin., – De Roberto’s manuscripts 58

59 Dublin (Ireland), Tutorial for User and Site Admin., – De Roberto rep: Upload 59

60 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – AMGA – Metadata Service of gLite –Part of gLite 3.1  can be used with other mws  Useful to realize simple Relational Schemas –Integrated on the Grid Environment (Security) Replication/Federation features Importing existing databases and soon native SQL support Tests show good performance/scalability gLibrary: AMGA based DL platform Conclusion

61 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – AMGA Web Site AMGA Manual AMGA API Javadoc AMGA Web Frontend AMGA Basic Tutorial More information on existing DB – – 61 References

62 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – gLibrary References gLibray BETA homepage: – gLibrary paper: – pdfhttps://glibrary.ct.infn.it/glibrary/downloads/gLibrary_paper_v2. pdf

63 Itacuruçá (Brazil), 1 st EELA-2 Grid School (E2GRIS1), – Questions?