Les bases de données temps-réel École Nationale Supérieure des Télécommunications Les bases de données temps-réel Christophe Hermant Mémoire de fin d ’études option CASI 1er juillet 1999
Les bases de données temps-réel Plan SGBD et applications temps-réel Comment intégrer ces deux mondes ? Spécification des caractéristiques temps-réel Suppression des aléas de temps de transaction Contrôle de concurrence Un exemple de SGBD temps-réel : StarBase Conclusion 01/07/99 Les bases de données temps-réel
Les applications temps-réel Gestion de systèmes dont les comportements doivent être prévisibles et opportuns Paramètres évoluant au cours du temps Actions à mener au moment voulu avant une date limite Familles de temps-réel : dur, ferme, mou 01/07/99 Les bases de données temps-réel
Les bases de données temps-réel Les SGBD Format des données indépendant des applications les utilisant Gestion, stockage, interrogation très efficaces de grands volumes de données Garanties d’intégrité, de cohérence et de récupération des données en cas de panne. Les applications temps-réel peuvent en avoir besoin 01/07/99 Les bases de données temps-réel
Exemples d’applications Gestion de salles de marchés Contrôle du trafic aérien Applications militaires (gestion d ’un champ de bataille) Télécom : routeurs, commutateurs Gestion d ’une centrale nucléaire ... 01/07/99 Les bases de données temps-réel
Des objectifs différents SGBD : objectifs de performance globale, sans garantie pour une transaction particulière. Pas de notion de temps. Applications temps-réel : besoin d ’assurance de résultats pour des requêtes individuelles. Aménagements nécessaires pour rendre les SGBD compatibles avec les applications temps-réel. 01/07/99 Les bases de données temps-réel
Les bases de données temps-réel Les aménagements Spécifications des caractéristiques temps-réel pour les données et les transactions Suppression des aléas de temps de transaction : gestion des index, BD résidente en mémoire, relâchement de contraintes de cohérence Nouveaux algorithmes de contrôle de concurrence 01/07/99 Les bases de données temps-réel
Caractéristiques temps-réel Sur les données : estampillage et durée de validité Sur les transactions : date limite, facteur critique, fonction de valeur priorité Autres paramètres utiles : fréquence, ressources et données nécessaires, temps d ’exécution estimé… classification des transactions 01/07/99 Les bases de données temps-réel
Un modèle objet évolué : RTSORAC Reprend les attributs précédents des données et transactions Sur les données : imprécision admise Sur les transactions : fonction de compatibilité pour concurrence entre méthodes du même objet, mesures à prendre en cas d’échec d’une méthode 01/07/99 Les bases de données temps-réel
Les bases de données temps-réel Suppression des aléas Méthodes adaptées de gestion des index Base de données résidente en mémoire Relâchement de contraintes de cohérence 01/07/99 Les bases de données temps-réel
Les bases de données temps-réel Gestion des index Les index permettent un accès plus rapide aux données Idée : limitation du nombre de transactions concurrentes Problème des index : reconstruction utilisation de B+-arbres relâchés, permet un rééquilibrage différé 01/07/99 Les bases de données temps-réel
BD résidente en mémoire Avantage : suppression des accès disque, meilleure prévision des temps de transactions Meilleure utilisation des ressources nouveau contrôle de concurrence : utilisation de verrous à gros grain (niveau relation) Sinon, importance de l’organisation de la hiérarchie mémoire : répartition entre données en mémoire et sur disque 01/07/99 Les bases de données temps-réel
Relâchement de contraintes Propriétés ACID garanties par les SGBD : Atomicité Cohérence Isolation Durabilité Contrôle de concurrence assure la sérialisabilité, parfois trop lourde à mettre en œuvre. 01/07/99 Les bases de données temps-réel
Sérialisabilité et cohérence externe Cohérence externe : toutes les données utilisées sont valides temporellement Critère souvent suffisant pour assurer des transactions cohérentes, permet de différer le rétablissement de la cohérence interne Augmente le degré de concurrence possible Nouveau contrôle de concurrence Christophe Hermant: reflet de l ’environnement physique du moment Christophe Hermant: lecture d’une donnée continue compatible avec sa mise à jour 01/07/99 Les bases de données temps-réel
Ordonnancement et contrôle de concurrence Introduction des priorités pour ordonnancer les transactions et gérer les conflits Deux types d ’algorithmes classiques : Verrouillage à deux phases : algorithmes 2PL-HP et 2PL-WP Contrôle de concurrence optimiste : OCC-FV, WAIT-X… Performances : OCC meilleur que 2PL 01/07/99 Les bases de données temps-réel
Un prototype : StarBase Objectifs : gestion de contraintes temps-réel fermes, BD non répartie, sur disque, modèle relationnel Repose sur un OS temps-réel : RT-Mach Objectif de performance : maximiser le taux de transactions exécutées avant leur date limite Implémentation détaillée du SGBD 01/07/99 Les bases de données temps-réel
StarBase : caractéristiques Limitation du nombre de transactions concurrentes Ordonnancement des transactions natif RT-Mach, fondé sur les priorités Contrôle de concurrence : WAIT-X(S) Détection de conflits plus fine : sérialisation précise 01/07/99 Les bases de données temps-réel
Les bases de données temps-réel Les autres produits Stades d’avancement variés : peu sont aboutis Produits spécialisés et adaptés aux applications temps-réel associées La plupart utilisent des BD réparties Toutes les techniques développées ne sont pas utilisées 01/07/99 Les bases de données temps-réel
Les bases de données temps-réel Conclusion Axes de recherches privilégiés : contrôle de concurrence, relâchement des contraintes Sujets de recherches plus tournés vers le temps-réel que vers l’implémentation d’un SGBD Pas de vrai SGBD temps-réel commercial Sujet ouvert 01/07/99 Les bases de données temps-réel