20070405_RGMA_vardi
Download
Report
Transcript 20070405_RGMA_vardi
Trinacria Grid Virtual Laboratory
Relational Grid Monitoring
Architecture (R-GMA)
Valeria Ardizzone
INFN Catania
Tutorial per Insegnanti di Istituto Tecnico Industriale
Acireale, 04-14.05.2007
FESR
www.trigrid.it
Grid Monitoring Architecture(GMA)
• The Producer stores its
location (URL) in the
Registry.
PRODUCER
Store location
• The Consumer looks up
producer URLs in the
Registry.
• The Consumer contacts
the Producer to get all
the data or the Consumer
can listen to the
Producer for new data.
REGISTRY
Transfer Data
CONSUMER
Lookup location
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
R-GMA within Testbed
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
R-GMA: Schema-Registry-Mediator
R-GMA Server
VIRTUAL DATABASE
SCHEMA : it holds the
names and definitions of all
of the tables in the virtual
database,
and
their
authorization rules.
TABLE 1,Producer P1 details
TABLE 1, Colum defs
TABLE 2, Colum defs
TABLE 3, Colum defs
TABLE 4, Colum defs
SCHEMA
TABLE 2,Producer P1 details
TABLE 2,Producer P2 details
TABLE 2,Producer P3 details
TABLE 3,Producer P2 details
TABLE 3,Producer P1 details
TABLE 3,Producer P3 details
MEDIATOR
REGISTRY
REGISTRY: It holds the
details of all producers that
are publishing to tables in
the virtual database and it
also holds the details of
“continuous” consumers.
MEDIATOR: a set of rules for
deciding
which
data
providers to contact for any
given query.
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
R-GMA: Producer-Consumer
Producers: are the data providers for the virtual database. Writing data into the
virtual database is known as publishing, and data is always published in complete
rows, known as tuples. There are three types of producer: Primary, Secondary and
On-demand.
R-GMA Server
VIRTUAL DATABASE
P1
SQL “INSERT”
P2
TABLE 1, Colum defs
TABLE 2,Producer P1 details
TABLE 2, Colum defs
TABLE 2,Producer P2 details
TABLE 3, Colum defs
TABLE 2,Producer P3 details
TABLE 4, Colum defs
TABLE 3,Producer P2 details
SCHEMA
TABLE 3,Producer P1 details
MEDIATOR
P3
TABLE 1,Producer P1 details
C1
SQL “SELECT”
TABLE 3,Producer P3 details
REGISTRY
C2
Consumer: represents a single SQL SELECT query on the virtual database. The
query is matched against the list of available producers in the Registry. The
consumer service then selects the best set of producers to contact and sends the
query directly to each of them, to obtain the answer tuples.
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
Producer Types
• Primary Producer
Queries
User
Code
Producer
API
Producer
Service
Control
and
inserted
tuples
Tuples
C
Tuple
Storage
• Secondary Producer
P
SELECT *
Tuples
Queries
User
Code
Producer
API
Control only
Producer
Service
Tuples
C
Tuple
Storage
• On-Demand Producer
User
Code
Queries
Tuples
Queries
User
Code
Producer
API
Control only
Producer
Service
Tuples
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
C
Query and Storage Types
•
Continuous: as soon as new data becomes
available it is broadcast to all interested parties.
•
Latest: correspond to intuitive idea of current
information.
TABLE 1,Producer P1 details
History: return time sequenced data.
TABLE 2,Producer P2 details
•
P1
TABLE 2,Producer P1 details
TABLE 2,Producer P3 details
TABLE 3,Producer P2 details
Tuple-store can be in Memory or Database
TABLE 3,Producer P1 details
TABLE 3,Producer P3 details
REGISTRY
P1
LATEST RETENTION PERIOD (LRP) and
HISTORY RETENTION PERIOD (RTP)
Latest-store
allow producers to periodically purge old tuples,
and to give a precise meaning to the “current
state”.
Continuous&History-store
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
Continuous
Producer API
Insert
SQL “CREATE TABLE”
SQL “INSERT”
Producer Servlet
Schema
TableName
Value 1
TableName
Column
Value 2
TableName
Value 1
Value 2
Registry
Continuous
TableName
Consumer API
SQL “SELECT”
TableName
Value 1
Query
Result Set
URL
Predicate
Consumer Servlet
TableName
TableName
Value 1
Value 2
UK
RAL
Alice
Value 2
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
History or Latest
Producer API
Insert
SQL “CREATE TABLE”
SQL “INSERT”
Producer Servlet
Schema
TableName
Value 1
TableName
Column
Value 2
TableName
Value 1
Value 2
Registry
Query
TableName
Consumer API
SQL “SELECT”
TableName
Value 1
Query
Result Set
URL
Predicate
Consumer Servlet
TableName
TableName
Value 1
Value 2
UK
RAL
Alice
Value 2
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
R-GMA APIs
• APIs exist in Java, C, C++.
– For clients (servlets contacted behind the scenes)
• They include methods for…
– Creating consumers
– Creating primary and secondary producers
– Setting type of queries, type of produces, retention
periods, time outs…
– Retrieving tuples, inserting data
– …
• You can create your own Producer or Consumer.
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
The R-GMA Browser
• The easiest way to try out R-GMA.
– It is installed on the machine running the Registry and
Schema:
https://rgmasrv.ct.infn.it:8443/R-GMA
• Using the Browser you can do the following.
– Browse the tables in the schema.
– Look at the table definitions.
– See all the available producers for a table.
– Query a table.
– Query only selected producers.
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
https://rgmasrv.ct.infn.it:8443/R-GMA
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
References
• RGMA exercises on PI2S2 Wiki:
https://grid.ct.infn.it/twiki/bin/view/PI2S2/InformationSystemsGLUE Schema
• gLite 3.0 User Guide
– https://edms.cern.ch/file/722398/1.1/gLite-3-UserGuide.pdf
• R-GMA home page
– http://www.r-gma.org/
• R-GMA in EGEE
– http://hepunx.rl.ac.uk/egee/jra1-uk/
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
DPM references
• gLite 3.0 User Guide
– https://edms.cern.ch/file/722398//gLite-3-UserGuide.pdf
• GILDA gLite3.0 Wiki
– https://grid.ct.infn.it/twiki/bin/view/GILDA/GliteElementsInstallatio
n
• DPM Administrator Guide
– https://uimon.cern.ch/twiki/bin/view/LCG/DpmAdminGuide
Acireale(CT) , Tutorial per Insegnanti I.T.I. , 04-14.05.2007
14