La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Directeur de Thèse : Pr. Witold Litwin

Présentations similaires


Présentation au sujet: "Directeur de Thèse : Pr. Witold Litwin"— Transcription de la présentation:

1 Directeur de Thèse : Pr. Witold Litwin
SD-SQL Server: Un Système de Gestion de Bases de Données Distribuées et Scalables Soror Sahri Directeur de Thèse : Pr. Witold Litwin

2 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
26/03/2017 Plan Problématique Principes des SDDSs SD-SQL Server Gross Architecture Interface d’Application Expérimentations Conclusion et Perspectives Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

3 Problématique Les SGBDs actuels ne fournissent pas un partitionnement distribué et scalable des données. Si une table monte en échelle, le DBA réorganise ses données manuellement. Solution? Conception d’une architecture de SGBD capable de gérer le Partitionnement Dynamique des données Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

4 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Notre proposition Application de la technologie des SDDSs aux SGBDs. Pourquoi les SDDSs? Les SDDSs proposent plusieurs schémas de partitionnement dynamique. Les SDDSs permettent des distributions sur plusieurs sites. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

5 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Qu’est ce qu’une SDDS? Une SDDS est une nouvelle structure de données spécifique pour les multi-ordinateurs. Les SDDSs assurent : La Scalabilité Le Traitement parallèle et distribué Plusieurs SDDSs ont été proposées. Hash Partitioning (LH*) Range Partitioning (RP) Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

6 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
26/03/2017 Notre Proposition Mariage des principes des SDDSs et des SGBDs Application sur le SGBD SQL Server 2000. SGBD SDDS Tables Structure Scalable Tables Scalables Vue Partionnée et Distribuée Image Image/Vue Scalable Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

7 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
SD-SQL Server SD-SQL Server est un Système de Gestion de Bases de Données Distribuées et Scalables (SD-DBS). Il est basé sur une architecture distribuée et scalable SD-DBS. L’architecture SD-DBS a été proposé par : Pr. Litwin, Pr. Schwartz & Pr. Rich (2002). SD-SQL Server est appliqué au SGBD Microsoft SQL Server 2000. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

8 Architecture de SD-SQL Server
Split User/Application Linked SQL Servers D1 Node DBs D2 Di SD-SQL peer Di+1 _D1_T SD-SQL server SD-SQL client S P C I T(2..i) T(1,2) SD-SQL Server Managers Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

9 Architecture de SD-SQL Server : Les Noeuds SD-SQL Server
SD-SQL Server est composé d’une collection de noeuds distribués. Un noeud SD-SQL Server représente une instance d’un SGBD. Un noeud SD-SQL Server est un serveur lié (linked server) SQL Server 2000. Les noeuds SD-SQL Server détiennent les bases de données scalables (SDBs). Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

10 Architecture de SD-SQL Server : Les SDBs
Une SDB est une collection de bases de noeuds (NDBs). Une NDB est une base de données qui se trouve sur un noeud SD-SQL Server. Dans chaque SDB, il y a une NDB primaire : Il s’agit de la première NDB crée pour la SDB. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

11 Architecture de SD-SQL Server : La MétaBase
Les noeuds SD-SQL Server, les SDBs et les NDBs sont liés à la MétaBase (MDB). MDB est une NDB système. Elle sauvegarde toutes les méta-données sur les composants de l’architecture SD-SQL Server. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

12 Architecture de SD-SQL Server
MDB Noeud1 Noeud2 Noeud3 Noeudi …… DB1 DB2 DB1 DB2 DB3 DB1 DB3 SDB DB2 SDB DB2 SDB DB1 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

13 Architecture de SD-SQL Server : Les SDBs
Une NDB peut jouer le rôle d’un serveur, client ou pair. Une NDB de type serveur gère les tables scalables. Leur éclatement. Une NDB de type client gère l’interface d’application. Gestion des images. Une NDB de type pair joue le rôle d’un serveur et d’un client. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

14 Architecture de SD-SQL Server
Une SDB contient au moins une NDB serveur et une NDB client. Une SDB peut grandir pour contenir plus de NDBs. Une SDB grandit à l’aide du partitionnement dynamique de ses tables scalables. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

15 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Les Tables Scalables Une Table Scalable est une collection de segments distribués. Un segment d’une table scalable correspond à une table dans un SGBD. Un segment est une table de SQL Server. Chaque segment est placé sur une NDB différente de la même SDB. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

16 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Tables Scalables SDB DB1 N1.DB1 N2.DB1 N3.DB1 Ni.DB1 S S Table Scalable T Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

17 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Les Tables Scalables Les méta-données décrivant une table scalable sont stockées dans des méta-tables. La capacité d’un segment. L’état actuel du partitionnement d’une table scalable. Les contraîntes d’intégrité pour chaque segment d’une table scalable. Ces méta-données sont sauvegardées dans les méta-tables. Une Contraînte d’intégrité définit les limites Min et Max sur une table Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

18 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Les Tables Scalable SDB DB1 N1.DB1 N2.DB1 N3.DB1 S Table Scalable T Ni.DB1 S S S S Méta-Tables N1.DB1 Primary N1.DB1 N2.DB1 N3.DB1 RP 1000 Size Ni.DB1 Nodes Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

19 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Les Tables Scalables Si un segment d’une table scalable déborde, son éclatement est déclenché. Le débordement d’un segment est dû au dépacement de sa capacité (sa taille maximale). Le taille maximale est fixe pour chaque segment de la même table scalable. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

20 Tables Scalables : Eclatement
L’éclatement d’un segment est déclenché suite à une insertion. Par un trigger au niveau du segment. Le trigger vérifie la capacité du segment; Et lance le splitter. Un éclatement crée un ou plusieurs nouveaux segments pour une table scalable. Chaque nouveau segment résultant d’un éclatement possède une contraînte d’intégrité. Le partitionnement est horizontale selon le rang de la clé primaire. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

21 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Eclatement Contraîntes d’Intégrité? p b+1-p p=INT(b/2) C( S)=  { c: c  h = c (b+1-p)} C( S1)={c: c > l = c (b+1-p)} b+1 b S S S1 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

22 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Les Images Les segments d’une table scalable sont cachés des user/applications derrière les images. Les images définissent le partitionnement actuel d’une table scalable. Les images sont représentées par des vues partitionnées distribuées de SQL Server. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

23 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Les Images SDB DB1 N1.DB1 N2.DB1 N3.DB1 S Table Scalable T Image CREATE VIEW T AS SELECT * FROM N1.DB1.S UNION ALL SELECT * FROM N2.DB1.S UNION ALL SELECT * FROM N3.DB1.S Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

24 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Les Images Chaque table scalable a une image : Il s’agit de son image primaire. L’image primaire d’une table scalable est crée sur le NDB qui lance la création de la table scalable. Une table scalable peut avoir d’autres images sur d’autres NDBs clients : Il s’agit des images secondaires Les images peuvent être utilisées par d’autres vues appelées vues scalables. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

25 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Les Images Les images sont utilisées dans des requêtes client. Les méta-données sur les images sont stockés dans la méta-table Image. Si une image n’est pas correcte, elle sera alors ajustée. Elle ne contient pas tous les segments de sa table scalable. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

26 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Ajustement des Images Récupérer le nombre de segments dans la méta-table Image, N1. Récupérer le nombre de segments de la méta-table RP, N2. Comparer N1 et N2 : Si N1<N2 alors Ajuster l’image Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

27 Interface d’Application
26/03/2017 Interface d’Application L’interface d’application manipule les tables scalables à travers leurs images. Il s’agit des manipulations SQL. La manipulation des tables scalables comprend : La création L’alteration : schema de la table et ses index La suppression Recherche : select, select into Mise à jour : insert, update, delete Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

28 Interface d’Application
Les manipulations sur les tables scalables sont réalisées à l’aide des commandes scalables. Une commande scalable est une procédure stockée sur SQL Server. INSERT sd_insert CREATE TABLE sd_create_table Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

29 Interface d’Application
Exemple SELECT * FROM T INSERT INTO T SELECT * FROM T1 EXEC sd_select ‘FROM T’, ‘Size’ EXEC sd_select ‘T SELECT * FROM T1’ Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

30 Interface d’Application
Gestion des Nœuds SD-SQL Server Création d’un nœud Modification d’un nœud Suppression d’un nœud Gestion des SDBs Création d’une SDB Modification d’une SDB (Création ou Suppression d’une NDB) Suppression d’une SDB Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

31 Interface d’Application
Exemples Création d’un noeud EXEC sd_create_node ‘Dell1’ Création d’une SDB EXEC sd_create_scalable_database ‘SkyServer, ‘Dell1’ Modification d’une SDB EXEC sd_create_node_database‘SkyServer’,‘Dell2’,’Client’ Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

32 Interface d’Aplication : Traitement des commandes
Image Binding Soit Q une requête utilisant l’image I d’une table scalable Image Binding Trouver les images dans la Requête Q Vérifier si I est ajustée Ajustement de l’image I Exécution de la Requête Q Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

33 Interface d’Aplication : Traitement des commandes
Les commandes scalables peuvent s’éxécuter simultanément. Elles utilisent les mêmes ressources sur SD-SQL Server. Exemple : Une commande de recherche sd_select et un splitter. Gestion de la concurrence entre les commandes scalables est nécessaire. Assurer la sérialisabilité entre les commandes. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

34 Interface d’Aplication : Traitement des commandes
N2.DB1 N1.DB1 N3.DB1 RP S Splitter sd_alter X Verrou Exclusif Verrou Partagé attente X Verrou Exclusif Verrou Exclusif Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

35 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Expérimentations Utilisation de la BD SkyServer : Utilisation de la table PhotoObj de la base SkyServer comme une table scalable. PhotoObj contient 158,426 tuples (environ 260 MB) Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

36 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Expérimentation Temps d’éclatement de la table Scalable PhotoObj en 2 segments Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

37 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Expérimentation (Q1) SELECT TOP 10 objid FROM PhotoObj WHERE Variations des temps d’exécution de la requête (Q1) Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

38 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Expérimentation (Q2) SELECT COUNT (*) FROM T1 Variations des temps d’exécution de la requête (Q2) Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

39 Expérimentation (Q3) SELECT COUNT (*) FROM PhotoObj
Comparaison des temps d’exécution entre SQL Server et SD-SQL Server Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

40 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Conclusion Les tables scalables sont devenues une réalité avec SD-SQL Server. Les mesures de performance montrent l’efficacité de notre conception. Partitionnement dynamique des tables scalables. Temps d’éclatement raisonable. Temps d’ajustement des images négligeable. Le prototype est disponible au Ceria : Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

41 Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche
Perspectives Gestion des pannes. Gestion des fusionnements des tables scalables. Application des principes des tables scalables sur d’autres SGBDs. Soror Sahri, U. Paris Dauphine 12 Déc 05. Séminaire de Recherche

42 Merci de Votre Attention


Télécharger ppt "Directeur de Thèse : Pr. Witold Litwin"

Présentations similaires


Annonces Google