Accéder aux bases de données avec le VO

publicité
Accéder aux bases de données avec le VO
Plan
1) Les applications concernées + le contexte
2) Les bases de données en astronomie : état des lieux
3) Solutions VO : TAP/ADQL
➔ Interopérabilité + nouvelles possibilités
➔ Une représentation unifiée des descriptions des données
➔ Implantation TAP
4)Un traitement avancé et unifié des requêtes: ADQL
➔ Opérations arithmétiques, agrégations de colonnes
➔ Les fonctions géométriques
➔ Lier des tables
5)Les outils
➔ Clients spécifiques
➔ Clients génériques
1
Accéder aux bases de données avec le VO
Le contexte
Le contexte
CNRS magazine : « la déferlante des octets »
Un défi pour les scientifiques pour le stockage et
l’exploitation des données
« Comment les traiter, les analyser , les visualiser,
leur donner du sens?[...] »
L'article cite le Sloan, le LSST
2
Accéder aux bases de données avec le VO
Le contexte
Le stockage des données et leurs exploitations
➔ Applications et données impactées à l'Observatoire de Strasbourg :
➔ Accès à différentes bases de données par un langage de requêtes
commun
➔
➔
➔
Le contexte international d'interopérabilité pour le partage des
données : le VO
Les bases de données relationnelles constituent un moyen standard,
permettant d'organiser les données sous forme de tables
3
Accéder aux bases de données avec le VO
Le contexte
Interrogation et organisation d'une base de données :
Les données sont stockées dans des tables
➔ Un « objet » peut être réparti dans une ou plusieurs tables
➔ On nomme METAdonnées les tables dédiées à l'organisation des
données pour leur description ou indexation.
➔ Un langage de requêtes permet d’interroger ou mettre à jours les
données : le SQL
➔
SELECT RA_ICRS_, DE_ICRS_, BTmag, VTmag, BTmag­VTmag FROM tyc2
WHERE Btmag­VTmag>0 AND BTmag­VTMag<0.2
(*) exemple de requete SQL sur la table Tycho
SQL
colonne1
colonne2
value
value
value
value
Base de données
colonne1 colonne2
colonne1 colonne2
value colonne2
value
colonne1
value
value
value
value
value
value
value
value
value
value
4
Accéder aux bases de données avec le VO
État des lieux
Différents centre de données liés par une problématique commune
➔
➔
➔
Stockage de données astronomiques contenant souvent des informations de
positions
L'utilisation de bases de données
Le langage SQL des bases de données
Hétérogénéité du contenu des bases de données:
➔
➔
➔
➔
➔
Catalogue issues de publications: VizieR, HEASARC
Grands relevés: CADC, GAVO, VizieR
Dédié à un relevé particulier XCATDB, SDSS
Base de données d'objets célestes : Simbad, NED
Planétologie, comètes,... : IMCCE
Une organisation des données propre à chaque centre:
➔
➔
Hétérogénéité des systèmes utilisés:
systèmes de coordonnées, précision, échelles …
Hétérogénéité des modèles de recherches et de description des données
(description des tables, des colonnes, …) (Les META données)
5
Accéder aux bases de données avec le VO
La solution VO
TAP : un protocole d'accès commun aux bases de données
➔
➔
➔
➔
Un langage commun (ADQL) d'accès aux données
Une représentation unifiée des descriptions des données (incluant la
description des tables et des colonnes)
Des requêtes asynchrones permettant l’exécution de jobs longs
Travailler avec les systèmes de coordonnées référents: FK4, ICRS,
GALACTIC,..
6
Accéder aux bases de données avec le VO
Plus d'interopérabilités
Une représentation standardisée des descriptions des données
Le contenu des bases de données et leur usage sont propres aux données :
La représentation en tables suit un schéma dédié et approprié
➔ L'indexation des données est propre au contenu des valeurs
stockées : position, magnitude, identifiant,...
➔
Caractéristiques :
50 tables dont 7
disponibles avec TAP
Caractéristiques :
40 tables de METAdonnées
22,000 tables
300,000 colonnes
Volumétrie ~ 3,5 Tb
7,000,000 objets
275,000 références
bibliographiques
17Gb
7
Accéder aux bases de données avec le VO
Implantation TAP : une méthode unifiée
Les centres de données accessibles par TAP
TOPCAT
TAPHandle
HEASARC
Point d'entrée unique avec une interface commune
➔ Lier des données issues de centres différents
➔
8
Accéder aux bases de données avec le VO
La solution VO
De nouvelles possibilités apportées par le langage ADQL:
➔
➔
➔
Des fonctions géométriques avancées disponibles pour rechercher des
données:
le POINT, le CERCLE, le POLYGONE, LE BOX, L'INTERSECTION
Une homogénéisation des principales opérations:
➔ opérations sur les colonnes
➔ agrégation : moyennes, minimum, somme, …
➔ fonctions trigonométriques
joindre des tables par objets similaire (par position ou identifiant)
9
Accéder aux bases de données avec le VO
Un traitement avancé et unifié des données : ADQL
Un traitement avancé et
unifié des données :
ADQL
10
Accéder aux bases de données avec le VO
Un traitement avancé et unifié des données : ADQL
Opérations arithmétiques, agrégations de colonnes
➔
Le langage permet les opérations mathématiques usuelles (y compris les
fonctions trigonométriques) entre colonnes
Exemple : catalogue tycho (I/259)
contrainte : min < Bmag-Vmag < max
Requête
ADQL
SELECT RA_ICRS_, DE_ICRS_, BTmag, VTmag, BTmag­VTmag as BV
FROM tyc2
WHERE Btmag­VTmag>0 AND BTmag­VTMag<0.2
contrainte
11
Accéder aux bases de données avec le VO
Un traitement avancé et unifié des données : ADQL
➔
Les fonctions d'agrégations : compter le nombre de lignes, moyenne,
sommes...
Exemple : Établir la répartition des galaxies d'un catalogue selon leur morphologie
Catalogue of galaxies towards the Coma Supercluster (Slezak+ 1988)
(VII/159,table=c7159c )
contrainte : compter le nombre de galaxies par type de morphologie (champ Mtype)
SELECT Mtype, count(Mtype)
FROM c7159c
GROUP BY Mtype
12
Accéder aux bases de données avec le VO
Un traitement avancé et unifié des données : ADQL
Les fonctions géométriques
Plusieurs géométries disponibles :
POINT, CIRCLE, POLYGON, BOX
➔ La manipulation des objets géométriques se fait à l'aide des fonctions
➔ INTERSECTS
➔ CONTAINS
➔
CIRCLE INTERSECTS POLYGON → true
CIRCLE CONTAINS POINT → true
➔
➔
Les fonctions géométriques sont associées à un système de
coordonnée : ICRS, FK4, GALACTIC
Quelques autres fonctions : DISTANCE, AREA,...
13
Accéder aux bases de données avec le VO
Un traitement avancé et unifié des données : ADQL
Exemple : Recherche des images DENIS pour générer un « all-sky » Aladin (Sébastien Derrière)
Catalogue Denis (B/denis,table=denis3 )
Contrainte : afficher les identifiants d'images sans répétition (champ Images)
Le mot clé « DISTINCT »
supprime les doublons
SELECT DISTINCT denis3.Strip, denis3.Image
FROM denis3 WHERE CONTAINS(POINT('ICRS',RAJ2000,DEJ2000), CIRCLE('ICRS',265,­19, 1))
14
Accéder aux bases de données avec le VO
Un traitement avancé et unifié des données : ADQL
Lier des tables :
➔ Par identifiant
➔ Par positions (crossmatch)
Lier des tables (jointure) en utilisant un identifiant.
Table Tycho
Table Hipparcos
TYC1 (integer)
HIP (integer)
TYC2 (integer)
ra_icrs_ (double precision)
TYC3 (integer)
...
Reconnaître un identifiant :
HIP (integer)
...
L'identifiant est reconnaissable par sa description : (ucd)
meta.id;meta.main décrit dans les METAdonnées TAP
➔ Les METAdonnées TAP contiennent les identifiants de tables pouvant
servir de jointures (foreign keys).
Elles peuvent être lues par le logiciel accédant au service (TAPHandle)15
➔
Accéder aux bases de données avec le VO
Exemple d'utilisations
Lier des tables (jointure) en utilisant un identifiant
Exemple : CatalogueHipparcos (I/239, table c1239hip_main)
Catalogue Tycho (I/259, table tyc2)
Contrainte : fusionner les données de Hipparcos et tycho en utilisant
l'identifiant HIP
(champ HIP)
Requête
ADQL
SELECT tyc2.TYC3, tyc2.TYC2, tyc2.TYC1,
c1239hip_main.HIP, c1239hip_main.RA_ICRS_, c1239hip_main.DE_ICRS_
FROM tyc2, c1239hip_main WHERE tyc2.HIP=c1239hip_main.HIP
Données en provenance
du catalogue Tycho
Données en provenance
du catalogue Hipparcos
16
Accéder aux bases de données avec le VO
Un traitement avancé et unifié des données : ADQL
Lier des tables en utilisant les positions (crossmatch).
Le catalogues Hipparcos et Tycho sont
liés par ces positions
Les METAdonnées TAP contiennent les colonnes de coordonnées
principales
➔ Pour VizieR des bons temps d'exécutions (moins cependant que le
service de crossmatch sur les grands catalogues)
➔
Temps d’exécution
CDS crossmatch
crossmatch Tycho-hipparcos
3s
1s
crossmatch 2mass-hipparcos
6.5min
1min
crossmatch 2mass-Tycho
11.5min
3min40s
17
Accéder aux bases de données avec le VO
Exemple d'utilisations
Fusionner des tables sur un critère de position
Exemple : Catalogue Hipparcos (I/239, table c1239hip_main)
Catalogue 2MASS (II/246, table c2mass)
Contrainte : fusionner les données de Hipparcos et 2MASS selon leur position
Requête
ADQL
SELECT c1239hip_main.HIP, c1239hip_main.RA_ICRS_,c1239hip_main.DE_ICRS_, c2mass.RAJ2000, c2mass.DEJ2000, c2mass."_MASS"
FROM c1239hip_main,c2mass
WHERE CONTAINS(POINT('ICRS',RA_ICRS_,DE_ICRS_),
CIRCLE('ICRS',RAJ2000,DEJ2000, 2/3600.)) = 1
Données en provenance
du catalogue Hipparcos
Données en provenance
du catalogue 2MASS
18
Accéder aux bases de données avec le VO
Un traitement avancé et unifié des données : ADQL
Les outils
TAPHandle
TOPCAT
19
Accéder aux bases de données avec le VO
Les outils
Accéder à Simbad avec ADQL
Une interface web dédiée comme alternative aux scripts
Simbad
➔ Possibilité d'exécuter des requêtes en mode asynchrone
➔ Un accès aux données pour des logiciels externes
➔
20
Accéder aux bases de données avec le VO
Les outils
Listes d'exemples
Exécution en mode
asynchrone
Vérification de la
syntaxe ADQL
Affichage du modèle
de données
21
Accéder aux bases de données avec le VO
Les outils
Utiliser une table utilisateur à l'aide de la fonctionnalité d' « upload »
Exemple : recherche des données présente dans Simbad et dans le catalogue II/47 de VizieR
Utilisation du
format VOTable
22
Accéder aux bases de données avec le VO
Les outils
Accéder à VizieR avec ADQL
Une interface web dédiée
➔ Exécution des requêtes en mode asynchrone
➔ Un accès aux données pour des logiciels externes
➔ Utilisation des riches METAdonnées VizieR pour la recherche des tables
➔ Apporte des simplifications pour utiliser les possibilités ADQL.
➔
Interface réalisée par
Anne-Camille Simon
23
Accéder aux bases de données avec le VO
Les outils
Plus d'interopérabilité avec les outils génériques :
➔
➔
Des outils génériques (ex : TAPHandle) exploitent les META données et
permettent d'en afficher le résultat dans une interface simple
Ils permettent de réunir dans une même application des tables issues de
différentes bases de données
24
Accéder aux bases de données avec le VO
Les outils
TOPCAT
➔
Un tableur permettant de faire des jointures entre tables issus de
différentes bases de données
Accéder au menu VO
Données issues de Simbad
Données issues de VizieR
25
Accéder aux bases de données avec le VO
Les outils
TOPCAT
Affichage des
tables Simbad
Liste d'exemples (génériques)
26
Accéder aux bases de données avec le VO
Les outils
TOPCAT
27
Accéder aux bases de données avec le VO
Les outils
TOPCAT
28
Accéder aux bases de données avec le VO
Les outils
TAPHandle
Permet une vue globale de différentes bases de données
➔ Accès unifié et homogène aux données
➔ Des METAdonnées bien exploitées notamment pour les jointures de tables
➔ La connaissance d'ADQL n'est pas requise
➔
Zone de recherche des bases de données
29
Accéder aux bases de données avec le VO
Les outils
TAPHandle
Xcatdb intègre l'extension standard d'ADQL (« Obscore ») décrivant des
composants images, url, ...
30
Accéder aux bases de données avec le VO
annexes
Merci !
31
Téléchargement