Table des matières

Les bases de données

Réunion préparatoire (Juin 2011)

Idées générales

L'objectif de cet atelier est d'échanger sur notre utilisation des bases de données: en tant que développeurs d'applications scientifiques, nous avons de plus en plus de données à mettre à disposition des utilisateurs. Avec quels outils, en utilisant quelles méthodes, devons-nous gérer ces masses de données ? Nous échangerons nos points-de-vue, nos pratiques, nos doutes sur ces différentes questions

Principaux thèmes

Les thèmes suivants sont proposés à titre indicatif, nous attendons des participants qu'ils déclarent - ou pas - leur intérêt pour ces thèmes, éventuellement qu'ils en proposent d'autres.

Pour chaque thème, une très courte présentation (5mn, avec ou sans support diapos) par un participant introduira le débat.

Les bonnes questions à se poser avant de développer son application

  1. Sur l'application:
    • Comment l'information est-elle structurée ?
    • Quels sont les droits à poser sur les différentes informations ?
    • Quels algorithmes seront utilisés ?
    • Comment les données seront-elles parcourues ? Le problème de l'accès aux données peut être plus redoutable que celui de la quantité de données à stocker.
  2. Sur le stockage:
    • Base de données relationnelle ou stockage en fichiers ?
    • Fichier ascii ou format normalisé: hdf5, root (cern), Question de la pérennité des données ?
    • Quel type de système de fichiers ? (GPFS, utile pour performance et accès concurrents, est-il toujours nécessaire ?)

Outils et méthodes de conception

  1. Quels outils utilisez-vous ?
  2. Comment faire un modèle relationnel: certains normalisent, puis dénormalisent pour avoir de meilleures performances, est-ce la meilleure solution ?

Langages et API

  1. Quels langages utilisez-vous ? (java ? Php ? C/C++ ?)
  2. SQL est-il un langage adapté à la logique scientifique ?

Les outils libres de B.D. Relationnelles

Interconnexion entre bases de données

Aspects juridiques

Discussion du 30 Septembre 2011

25 personnes environ ont participé à la discussion, qui a presque exclusivement tourné autour de la possibilité (technique) de mutualiser sur un ou des sites les bases de données, en prenant comme exemple l'offre du C.C.I.N.2.P.3

Le logiciel irods, installé au CCIN2P3, a également été présenté dans ce cadre

La présentation de Pascal Calvat: irods_jdev2011.pdf

L'offre du CCIN2P3

Le CC In2p3 gère actuellement 50Po de stockage, essentiellement pour les besoins de la physique des particules. Des moyens très lourds sont mis en place pour cela, de nombreux types de données et formats sont gérés.

Les espaces de stockage du CCIN2P3 sont mis à dispositions des labos de recherche de la région Rhones-Alpes. Par ailleurs, le TGE Adonis a passé un accord avec le CC pour que celui-ci héberge une partie des données de l'INSHS.

Le CC héberge encore un certain nombre de projets nationaux (Plume par exemple). Il pourrait être intéressant (sur un plan technique, les aspects politiques n'ont pas été abordés) de considérer une offre d'hébergement des bases de données, quelque soit d'ailleurs la taille de la base, car cela permettrait de mutualiser l'espace-disque d'une part, les compétences en administration de bases de données d'autre part, qui peuvent être très pointues si on veut avoir de bonnes performances.

irods

L'outil irods (http://informatique.in2p3.fr/?q=node/174 ou https://www.irods.org) de virtualisation de stockage a par ailleurs été présenté. Il est utilisé en production au CC IN2P3 depuis 2006:

irods (Integrated Rule-Oriented Data System) est développé par le groupe DICE bi-localisé à San Diego et à l'université de Caroline du Nord. Il est actuellement utilisé par des communautés de physiciens, de biologistes, d'astrophysique, sciences humaines et sciences du climat. Le logiciel reprend les concepts du logiciel S.R.B. (Storage Resource Broker), et est entièrement open source (licence BSD).

irods permet de virtualiser le stockage et la politique de gestion des données. Ses caractéristiques sont les suivantes:

Ce type de logiciels est essentiel dans le cas de projets mettant en jeu des collaborations internationales ou nationales, et lorsqu'il y a de grosses quantités de données à gérer (9 Po au Sanger Institute)