La base de données ErosDB

La base de données relationnelle ErosDB est utilisée comme catalogue des données et des fichiers de l'expérience. Les données elles-mêmes ne sont pas enregistrées dans la base de données. Elles sont conservées dans des fichiers sauvés dans différents espaces de stockage. Seules les caractéristiques des données et des fichiers sont enregistrés dans la base de données.

L'accès à la base de données se fait essentiellement au travers des applications mises en place dans le cadre du projet ErosDb. Ces applications sont décrites dans la note {{à préciser}}. Il est également possible d'accéder directement à la base de données via l'application de gestion nommée SQL*Plus. D'autres applications sont utilisables mais supposeraient une configuration qui sort du cadre de cette note. La configuration des applications ErosDb pour accéder à la base de données est décrite dans la note {{à préciser}}. L'accès à la base de données via SQL*Plus implique de fournir explicitement les paramètres d'accès, y compris le mot de passe du compte utilisé. Cette procédure est décrite dans la note {{à préciser}}.

Le projet ErosDb utilisant le langage Java, l'accès à la base de données relationnelle se fait grâce au pont objet relationnelle Hibernate assurant la correspondance automatique entre les tables relationnelles de la base de données ErosDB et les classes Java du projet. Cet aspect du projet est décrit dans la note {{à préciser}}. La présente note ne porte que sur l'aspect strictement relationnel de la base de données.

Aperçu

La base de données ErosDB s'articule autour de 3 ensembles: des tables représentant les données de l'expérience, comme les images, les suivis ou les catalogues d'étoiles; des tables correspondant aux fichiers et aux espaces de stockage où sont conservés ces fichiers; et des tables destinées au traitement des données.

Les différentes tables ErosDB portent des noms rappelant les données qu'elles contiennent et sont toutes préfixées par "ER". Par ailleurs, afin d'éviter des conflits avec les noms réservés SQL (et ils sont nombreux), les différentes colonnes portent le plus souvent des noms français. Par extension, les tables ont également été nommées en français (voir {{Remarques}}).

Le sommaire suivant présente brièvement les différentes tables regroupées par thème. Ces tables sont décrites plus largement dans les sections suivantes. Le détail de chaque table et colonne est présenté dans des notes séparées.

Données de physique

Tables Description
ErImages Images FITS
ErSuivis Mesures photométriques sur les étoiles des images
ErSuivis1Ccd "Suivis" de l'expérience Eros 1 CCD
ErReferences Catalogues binaires des étoiles
ErObjets Programmes scientifiques Eros 2 et Eros 1 CCD
ErChamps Champs d'un programme scientifique Eros 2
ErCatalogues
ErCcds
ErSousCcds
ErSsImgs
ErImageEntetes
ErImagesReferences
ErNuits

Fichiers

Tables Description
ErFichiers Fichiers contenant les images, suivis et références
ErVolumes Cartouches magnétiques et espaces de stockage des fichiers
ErSupports Nature des différents volumes

Productions

Tables Description
ErProductions Ensemble d'opérations liées à un traitement particulier
ErOperations Descriptions d'un traitement individuel
ErArguments Arguments propres à une production
ErJobs Jobs chargés d'assurer un ensemble de traitements
ErParametres
ErPhotometries

Relations entre les données

Les différentes tables présentées dans cet apperçu sont connectées via des clés étrangères permettant de naviguer librement dans les données (voir la note {{à préciser}}).

Les principales relations mises en oeuvre dans ErosDB concernent:

  • l'association entre les fichiers et les images, suivis ou références;
  • l'association entre une image, un suivi ou une référence vers le programme scientifique, et dans le cas des données Eros 2, le champ;
  • l'association entre l'entête d'une image et l'image correspondant;
  • l'association entre un fichier et le volume où il est conservé;
  • l'association entre un volume et le type de support auquel il correspond;
  • l'association entre un traitement et sa production.

Contraintes de validités

La validité des données enregistrée dans la base de données est vérifiée de manière automatique par la définition de contraintes sur les tables et les colonnes. Par exemple, le nom d'un fichier ne doit pas être nul, le fichier doit appartenir à un volume déclaré, ou il doit faire référence à une image, un suivi ou une référence déjà déclarée.

Ces contraintes sont vérifiées par le gestionnaire de la base de données lors des enregistrements ou des modifications. Ces vérifications indépendantes des applications destinées à l'administration des données de l'expérience garantissent l'intégrité de la base de données en toutes circonstances. Mais c'est aussi ces contraintes qui ont compliquées la prise en compte des nouveaux types de données, comme les images Eros 1 CCD ou les images calées astronomiquement (voir la note {{à préciser}}).

Unicité des données

De part la conception de l'expérience, une image est unique et représente une vue du ciel réalisée a un instant particulier dans des conditions bien identifiées. Afin de permettre de reconstituer l'historique des observations sans aucun moyen extérieur, le nom des images regroupe les principaux paramètres de la prise de vue. De ce fait, le nom de chaque image est également unique.

Cette règle de base de l'expérience est matérialisée par une contrainte d'unicité imposée aux noms des images dans la table ErImages. Il n'est donc pas possible d'enregistrer deux images portant le même nom. De la même manière, une telle contrainte d'unicité est imposée aux suivis et aux références.

Mais cette unicité n'est pas applicable aux fichiers. En effet, on peut parfaitement envisager qu'un même fichier soit recopié dans différents espaces de stockage. Pour les fichiers, une contrainte particulière a donc été imposée pour garantir l'unicité du couple nom de fichier et espace de stockae. On peut donc avoir plusieurs références d'un même fichier à condition qu'ils résident dans des espaces distincts.

Ces règles d'unicité ont sérieusement été mises à mal par certains types de fichiers de suivis et de catalogues binaires d'étoiles de l'expérience Eros 1 CCD, où de tels fichiers, créés pour les différentes campagnes et les différents CCD portaient tous le même nom, à l'exception du code du filtre de couleur. Enregistrer de tels objets dans la base de données étant impossible, il a fallu changer les noms de ces suivis et références.

Une difficulté similaire s'est présentées avec les images composées utilisées pour améliorer la détection des étoiles, plusieurs types de composition ayant été utilisées pour les différentes productions réalisées, et pour les images calées astronomiquement. Fort heureusement dans ces deux cas la situation était plus simple et il a suffit de définir le code de traitement de l'image afin de créer des noms distincts.

Les données de physique

Les images

La table ErImages représente les images FITS réalisées grâce aux caméras CCD. Prévue à l'origine pour les seules images Eros 2, la table était associée à des contraintes fortes.

La prise en charge des images Eros 1 CCD a imposer d'adapter des contraintes. Par exemple, les images Eros 2 font références à un programme scientifique, dont le code est constitué de deux caractères, et à un champ, correspondant à une zone du ciel, alors que les images Eros 1 CCD ne font références qu'à un programme scientifique dont le code est sur une seule lettre. En outre, les images Eros 2 font références à l'une des deux caméras, caméra équipée de 8 CCD, alors qu'Eros 1 CCD n'utilisait qu'une seule caméra, mais avec 16 CCD.

Comme l'expérience ne prend plus de données, le risque de voir apparaitre des images incohérentes est réduit et il a été possible d'alléger certaines contraintes. D'autres contraintes, plus fondamentale, comme l'existance du programme scientifique auquel une image fait référence, ont été conservées.

La table ErImages regroupe donc les images des expériences Eros 2 et Eros 1 CCD. Les principales caractéristiques enregistrées sont:

Attributs Description Notes
ImageId clé primaire voir {{clé primaire}}
Nom nom de l'image voir {{noms Eros 2 et Eros 1 CCD}}
Objet code du programme d'étude
Champ code du champ par rapport au programme;
Camera numéro de la caméra (0 ou 1);
Ccd numéro du CCD, par rapport à la caméra (0..15);
SsImg code de sous-image voir la note {{Noms des fichiers Eros}}
Filtre code du filtre de couleur
Traitement type de l'image "b": brute, "r": réduite
Nuit date de la nuit du début de la prise de vue
Ordre numéro de la vue dans la nuit;
Erreur indicateur d'erreur mis en place à posteriori

Les attributs suivants sont des données de physique provenant de l'en-tête FITS de l'image. Ils portent le nom des mots-clés correspondant.

| AirMass | FondCiel", | NbStar | Seeing | SigFond", | SigmaX | SigmaY | GoodCCD ", "VQual", "CoefCal": -- voir la description des mots-clés utilisés par "Peida"; -- -- * "TmExpos" : temps (durée) d'exposition; -- -- * "Date_Obs", "Date_Exp" : date d'observation et d'exposition; -- -- * "Tm_Start", "Tm_End", "Tu_Start", "Tu_End", "Ts_Start", "Ts_End": -- heure de début et de fin d'exposition -- en temps local, temps universel, et temps sidéral; -- -- Les attributs suivants proviennent des catalogues de dates -- établissant une correspondance entre la date d'observation -- estimée par la photométrie avec différentes formes de codage: -- -- * "Ehjd" : date d'observation estimée lors de la photométrie -- de l'image telle qu'elle est enregistrée dans la courbe -- de lumière de l'étoile, exprimée en Eros Heliocentric -- Julian Days, soit un décalage de 2 450 000 jours -- par rapport à la référence du calendrier Julien; -- -- * "Mjd" : la date EHJD convertie en date julienne modifiée, -- ce qui est une convention usuelle en astronomie; -- -- * "Mesure" : la date de la mesure exprimée comme une date -- UTC; -- -- Les attributs suivants représentent les noms des images -- de calibration, flat, ... utilisés lors de la réduction -- de l'image : -- -- * "Deflat", "Deofss", "Deiorg", "RefCal" : voir la description -- des mots-clés utilisés par "Peida"; -- -- Les attributs suivants sont incorrectement définis -- et abandonnés. Ils devront être supprimés. -- Ils sont momentanément maintenus pour conserver -- la compatibilité de la base de données avec d'anciennes -- versions du projet.

Clé primaire

Une clé primaire est un identifiant unique attribué à une entrée. Cet identifiant permet de représenter l'élément dans les relations entre tables de manière plus efficace que par l'utilisation d'une chaîne de caractères, un nom par exemple.

Noms Eros 2 et Eros 1 CCD

Les noms des fichiers de données Eros 2 appliquent la convention usuelle en informatique que l'extension du fichier correspond à la nature des données. Par exemple fits représente une image numérique au format FITS, sv un fichier de suivi, et ref un catalogue binaire d'étoiles (ou références). Le nom simple du fichier, c'est-à-dire le nom sans l'extension, décrit les données contenues dans le fichier.

Avec cette convention, le nom d'une image est donc le nom du fichier FITS sans l'extension .fits. Le fichier lm04205krc6a3150.fits correspond donc à l'image 04205krc6a3150.

Il n'en va pas de même avec Eros 1 CCD où l'extension contient des informations relatives à la prise de vue. Par exemple pour xb2a2624.fitsr00, le code indiquant le traitement appliqué à l'image, ici "r" pour "réduitee, et le code du CCD, ici "00", sont dans l'extension. Dit autrement, pour un même type de données, des images FITS, il existe 2 (brute et réduite) x 16 (le nombre de CCD) extensions différentes. Outre que ce point de vue est assez étrange, il ne simplifie pas vraiment l'organisation des données.

Les suivis

ErSuivis

ErSuivis1Ccd

Les références

ErReferences

Les programmes scientifiques

ErObjets

ErChamps

A préciser

ErCatalogues

ErCcds

ErSousCcds

ErSsImgs

ErImageEntetes

ErImagesReferences

ErNuits

Les fichiers

ErFichiers

ErSupports

ErVolumes

Les productions

ErProductions

ErOperations

ErJobs

ErArguments

ErParametres

ErPhotometries

Contraintes et restrictions

Unicité des définitions

Contraintes de validités

Comptes utilisateurs

Remarques

La base de données ErosDB a été étendue d'une manière assez anarchique sans respect des conventions décrites ici et sans qu'aucune documentation n'ait été laissée. Les tables correspondant sont conservées, mais évidemment il est impossible de les documenter.