Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Grid Relational Catalog Project

Similar presentations


Presentation on theme: "The Grid Relational Catalog Project"— Presentation transcript:

1 The Grid Relational Catalog Project
Tutorial Sandro Fiore, Ph.D. Salvatore Vadacca SPACI Consortium & University of Salento, Lecce

2 What we will see during the tutorial
Authorization Select Queries grelc-das-query-memory grelc-das-query-dime grelc-das-query-stream GRelC Portal

3 Authorization framework
Before starting be sure you have a valid proxy with the correct GRelC DAS Role To create a valid proxy, run the following command voms-proxy-init --voms gilda:/gilda/grelc/das/grid009.ct.infn.it/sakila/Role=grelc-db-select voms-proxy-init --voms gilda:/gilda/grelc/das/grelc02.unile.it/sakila/Role=grelc-db-select With this proxy you will be able to access the sakila database on grid009.ct.infn.it or grelc02.unile.it (only select statements)

4 Select Queries To carry out SELECT queries you can use the following commands grelc-das-query-memory grelc-das-query-dime grelc-das-query-stream These kinds of query were designed to address high performance

5 Single Query Memory Display help > grelc-das-query-memory -h
USAGE: query-das-memory [options] -s, --server VAL Sets GRelC DAS IP or hostname (default: localhost) -p, --port NUM Sets GRelC DAS port (default: 18500) -D, --database VAL Sets grid database name -Q, --query VAL Sets query value -c, --chunk NUM Sets chunk dimension (default:0 no chunk) -t, --table Prints result in table format (default) -x, --xml Prints result in xml format -H, --html Prints result in html format -h, --help Shows usage EXAMPLES: query submission without chunking grelc-das-query-memory -s hostname -p D database -Q 'select * from table' query submission with chunking grelc-das-query-memory -s hostname -p D database -Q 'select * from table' -c 50

6 Single Query Memory Submits a query and displays its result in tabular format. The result is transferred one-shot. > grelc-das-query-memory -s grelc02.unile.it -p D sakila -Q "select * from actor" -t Submits a query and displays its result in XML format. The result is transferred one-shot. > grelc-das-query-memory -s grelc02.unile.it -p D sakila -Q "select * from actor" -x Submits a query and displays its result in XML format. The result is transferred in chunks of 50 tuples. The result shown is exactly the same of example no. 3 > grelc-das-query-memory -s grelc02.unile.it -p D sakila -Q "select * from actor" -x -c 50

7 Single Query File Display help > grelc-das-query-dime -h
USAGE: query-das-dime [options] -s, --server VAL Sets GRelC DAS IP or hostname (default: localhost) -p, --port NUM Sets GRelC DAS port (default: 18500) -D, --database VAL Sets grid database name -Q, --query VAL Sets query value -c, --chunk NUM Sets chunk dimension (default:0 no chunk) -z, --gzip Compresses result file -t, --table Prints result in table format (default) -x, --xml Prints result in xml format -h, --help Shows usage EXAMPLES: query submission with compression grelc-das-query-dime -s hostname -p D database -Q 'select * from table' -z query submission with chunking grelc-das-query-dime -s hostname -p D database -Q 'select * from table' -c 50

8 Single Query File Submits a query and displays its result in tabular format. The result is transferred one-shot. > grelc-das-query-dime -s grelc02.unile.it -p D sakila -t -Q "select * from actor" Submits a query and displays its result in XML format. The result is transferred one-shot. > grelc-das-query-dime -s grelc02.unile.it -p D sakila -x -Q "select * from actor" Submits a query and displays its result in XML format. The result is transferred in chunks of 50 tuples. > grelc-das-query-dime -s grelc02.unile.it -p D sakila -x -Q "select * from actor" -c 50 Now, let's look at the files in your current folder. Each file is a resultset stored client-side. > ls -lrta

9 Single Query File Let's see what's inside one of the resultsets stored client-side. > more .grelc02.unile.it_18500_171-singlequery.xml Submits a query and displays its result in XML format. The result is compressed (using -z option) and transferred in chunks of 50 tuples. > grelc-das-query-dime -s grelc02.unile.it -p D sakila -x -Q "select * from actor" -z Now, let's look at the files in your current folder again. You can find a compressed and an uncompressed file for each resultset stored client-side. > ls -lrta

10 Single Query Stream Submits a query and displays its result in tabular format. The result is transferred by using data streaming. > grelc-das-query-stream -s grelc02.unile.it -p D sakila -t -Q "select * from actor" Submits a query and displays its result in XML format. The result is transferred one-shot. > grelc-das-query-stream -s grelc02.unile.it -p D sakila -x -Q "select * from actor"

11 GRelC Portal Authorization
Before starting be sure you have a valid proxy with the correct GRelC DAS Role To create a valid proxy, run one of the following commands voms-proxy-init --voms gilda:/gilda/grelc/das/grelc02.unile.it/sakila/Role=grelc-db-select --voms gilda:/gilda/grelc/das/grelc02.unile.it/Role=grelc-sys-host --voms gilda:/gilda/grelc/das/grelc02.unile.it/Role=grelc-sys-vspace voms-proxy-init --voms gilda:/gilda/grelc/das/grid009.ct.infn.it/sakila/Role=grelc-db-select --voms gilda:/gilda/grelc/das/grid009.ct.infn.it/Role=grelc-sys-host --voms gilda:/gilda/grelc/das/grid009.ct.infn.it/Role=grelc-sys-vspace With this proxy you will be able to access the sakila database on grid009.ct.infn.it or grelc02.unile.it and to administer Grid Databases and Hosts

12 Select your proxy

13 Adding one entry to the GRelC DAS List

14 Grid Databases Management

15 Tables Management

16 View Schema

17 View Data

18 Query Submission

19 Query Submission Let’s start with a simple select query...
select * from film This query retrieves all of the films available in the “sakila” database

20 Query Submission Let’s now retrieve a list of films whose length is longer than 90 minutes... select * from film where length > 90 Pretty cool! The GRelC Portal gives us a list of films

21 Query Submission Why do not we search a list of actors involved in the films listed before? select first_name, last_name, title, length from (film join film_actor on film.film_id=film_actor.film_id) join actor on actor.actor_id=film_actor.actor_id where length > 90 3 tables are now involved in our select query

22 Query Submission What if we want to know the film category of the films listed before? select category.name as category_name, first_name, last_name, title, length from (((film join film_actor on film.film_id=film_actor.film_id) join actor on actor.actor_id=film_actor.actor_id) join film_category on film.film_id = film_category.film_id) join category on category.category_id=film_category.category_id where length > 90 5 tables are now involved in our select query

23 Query Submission Let us now know who sells the films listed before, together with the category and the actors. select category.name as category_name, first_name, last_name, title, length from (((film join film_actor on film.film_id=film_actor.film_id) join actor on actor.actor_id=film_actor.actor_id) join film_category on film.film_id = film_category.film_id) join category on category.category_id=film_category.category_id where length > 90 8 tables are now involved in our select query You can enrich the query as you want, no matter how many tables are involved. If the DBMS understands your query, the GRelC DAS understands it too!


Download ppt "The Grid Relational Catalog Project"

Similar presentations


Ads by Google