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

1 IH* – Hachage Multidimensionnel Distribu é et Scalable BOUKHELEF Djelloul É tudiant en PhD, Institut National d Informatique (INI), Alger. Algérie E-mail:

Présentations similaires


Présentation au sujet: "1 IH* – Hachage Multidimensionnel Distribu é et Scalable BOUKHELEF Djelloul É tudiant en PhD, Institut National d Informatique (INI), Alger. Algérie E-mail:"— Transcription de la présentation:

1 1 IH* – Hachage Multidimensionnel Distribu é et Scalable BOUKHELEF Djelloul É tudiant en PhD, Institut National d Informatique (INI), Alger. Algérie Directeur de thèse : Pr D-E. ZEGOUR

2 2 Partie I: Structures de donn é es Distribu é s et Scalables

3 3 Serveurs Clients Répertoire d'accès Structures de donn é es classiques Schémas de distribution classiques : Partitionnement par intervalle, Partitionnement par hachage, Round-Robin, … Mécanisme de calcul d'adresse unique et centralisé un point d'accumulation Limite sur les performances d'accès Vulnérabilité aux pannes Scalabilité et Disponibilité Duplication du calcul d'adresse MAJ synchrones des clients: Impossible pour un grand nombre de clients distribués et autonomes

4 4 SDDS – Structures de Donn é es Distribu é es et Scalables Conçues spécifiquement pour les multiordinateurs Une collection d'ordinateurs, Stations de travail, faiblement couplés (à partage de rien, shared nothing) interconnectés par un réseau informatique (MAN, LAN, WAN) Une nouvelle classe de structures de données pour des bases de données modernes Dune grande taille (GO – TO) Avec des données complexes: spatiales, géographiques, Image, Son, … Scalables Grandissent rapidement en gardant les mêmes performances Haute disponiblilité et disponibilité incrémentale (scalable availability)

5 5 SDDS – Axiomes g é n é raux (1) Les données sont identifiées par des clés (d1), OID pour les objets Les données sont stockées sur des serveurs et sont accédées par des clients autonomes Il n'y a pas de répertoire central d'accès Image locale par client Mécanisme de vérification et de redirection des requêtes Mécanisme de mise à jour distribué des images des clients Les MAJ de la structure d'une SDDS ne sont pas envoyées aux clients de manière synchrone

6 6 SDDS – Axiomes g é n é raux (2) Un client peut faire des erreurs d'adressage suite à une image inadéquate de la structure de SDDS Chaque serveur vérifie l'adresse de la requête et l'achemine vers un autre serveur si une erreur est détectée Le serveur adéquat envoie un message correctif (Image Adjustment Message, IAM) au client ayant commis l'erreur d'adressage Le client ajuste son image local pour ne plus faire, au moins, la même erreur

7 7 SDDS – Axiomes g é n é raux (3) i = 0 n = Level = 2 Next = 1 Correction dimage Level = 2 Requête h 0 (k) = 1 Réponse Redirection i = 2 n = 0 Ajustement de limage locale

8 8 SDDS – Contraintes (1) Si une SDDS n'évolue plus, alors les IAM font converger toute image d'un client vers l'image actuelle du fichier L'ensemble des renvois à la suite d'une erreur d'adressage ne se fait qu'en quelques messages Performance d'accès d'une SDDS Nombre de messages sur le réseau (indépendante des paramètres du réseau) Nombre de messages par opération Vitesse de convergence de limage dun nouveau client

9 9 SDDS – Contraintes (2) Scalabilité Prendre en charge nimporte quelle quantité de données pas de limite théorique de la taille, pas de réorganisation totale de la structure Maintenir les performances quand le volume de données stockées varie: temps d accès constants Distribution Une grande quantité de données Traitement parallèle et distribué Non vulnérabilité aux pannes Disponibilité Assurer la continuité du fonctionnement 24 heures sur 7 jours

10 10 SDDS – Typologie ArbreHachage Disponibilité LH* m, LH* g Disponibilité LH* m, LH* g Sécurisé LH* s Sécurisé LH* s Classiques SDDS 1- d -Arbre DRT, DRT*, RP* 1- d -Arbre DRT, DRT*, RP* k - d -Arbre Distributed B + k -RP* k - d -Arbre Distributed B + k -RP* d -dimensionnel IH* d -dimensionnel IH* 1-dimensionnel LH*, LH* LH DDH, EH* 1-dimensionnel LH*, LH* LH DDH, EH* k -disponibilité LH* RS, LH* SA k -disponibilité LH* RS, LH* SA Structure de Données

11 11 SDDS – Travaux en cours à l INI IH* Scalable and Distributed Interpolation-Based Hashing D. Boukhelef CTH* Scalable and Distributed Compact-Trie-Hashing D-E. Zegour TH* Scalable and Distributed Trie-Hashing M. Aridj

12 12 Partie II: Structures de donn é es multidimensionnelles

13 13 Donn é es multidimensionnelles Espace de cl é s K : K = D 0D 1...D d-1 Fichier F : F = (r 1,r 2,..., r N ) Enregistrement r : r = (k 0, k 1,..., k d-1, a 0, a 1,..., a m ) K ; k j D j pour 0 j d D1D1 D0D0 Records K

14 14 M é thodes d acc è s multidimensionnelles Propri é t é s

15 15 IH – Hachage par Interpolation Propos é par W.A. Burkhard en 1983 Extension du Hachage Lin é aire (LH) de Litwin Principe : cl é k = k 0, k 1,..., k d-1 Interpolation (shuffle function) Former la signature de k (record signature) Appliquer le LH classique pour d é cider o ù se trouve la cl é k Impl é mentation des requêtes à intervalle : (partial match query & range query).

16 16 Partie III: IH* - Adaptation du Hachage par interpolation aux environnements distribu é s

17 17 IH* – Hachage par Interpolation Distribu é et Scalable Structure de donn é e à base du Hachage (Lin é aire) Adaptation du IH aux environnements distribu é s selon le mod è le SDDS Introduction de l ordre et l aspect multidimensionnel à la SDDS LH* Hachage par Interpolation Distribué et Scalable (IH*) Hachage par Interpolation Distribué et Scalable (IH*) Hachage Linéaire Multidimensionnel (IH) Hachage Linéaire Multidimensionnel (IH) Hachage Linéaire Distribué et Scalable (LH*) Hachage Linéaire Distribué et Scalable (LH*) Hachage Linéaire (LH)

18 18 IH* – Structure d un fichier Serveurs (j) Stockage de donn é es Evaluation des requêtes des clients Clients autonomes (i, n ) Acc è s aux donn é es Interm é diaire entre application et syst è me SDDS Site Coordinateur (i, n) Maintient les param è tres du fichier Gestion d é clatement Allocation de sites Coordinateur i, n Coordinateur i, n Client 1 i, n Client 1 i, n Client n i, n Client n i, n Réseaux dinterconnexion jjj Serveurs

19 19 IH* – É volution du Fichier 0 i = 0, n = 0 0

20 20 IH* – É volution du Fichier i = 1, n =

21 21 IH* – É volution du Fichier i = 1, n =

22 22 IH* – É volution du Fichier i = 2, n =

23 23 É clatement d un serveur Algorithme SplitServer (n) 1- cr é er la case (n+2 j ): niveau j = j+1 2- é clater la case (n) en utilisant h j+1 3- mettre à jour j j+1 4- confier l é clatement au site coordinateur Fin

24 24 IH* – Eclatement É clatement non contrôl é À chaque collision É clatement contrôl é Taux de chargement est sup é rieur / inf é rieur au facteur de chargement du fichier Splitted ServersNewly created Servers Next server to split (n) Splitted ServersNewly created Servers Uniform data distributionNon-uniform data distribution

25 25 IH* - É clatement contrôl é 1 ère solution : Loi de distribution de donn é es 2 ème solution : N é gociation entre Coordinateur et Server (n) Garder l historique des messages de collision Next server to split (n) Splitted ServersNewly created Servers Non-uniform data distribution

26 26 Adressage (1) i = 0 n = Level = 2 Next = 1 IAM Level = 2 Requête h 0 (k) = 1 Réponse Redirection i = 2 n = 0 Ajustement de limage locale

27 27 Adressage (2) i = 2 n = Level = 2 Next = 3 IAM Level = 3 Requête h 2 (k) = 2 Réponse Redirection i = 2 n = 2 Ajustement de limage locale

28 28 Requête à intervalles 1 0 Image du client i = 1, n = 0 1 Image exacte Level = 2, Next =

29 29 Requête à intervalles

30 30 Envoi par Diffusion – Principes i =.. n =.. Client Mécanisme denvoi multicast Requête par intervalle sur F 1 Multiordinateur F1F F2F Serveurs libres

31 31 Envoi par Diffusion – Critiques Simple: un envoi pour tous le monde Multicast n est pas toujours disponibles sur tous les r é seaux Peut ne pas être efficacement implémenté Trop de messages sur le réseaux Problèmes du déterminisme denvoi et de réception dans le cas des

32 32 Envoi cibl é (solution LH*) i = 1 n = 0 Client Multiordinateur Level = 2 Next = 3 F1F Requête à intervalle sur F 1

33 33 Envoi cibl é – Critiques D é terministe Parcours de tous les serveur même pour un petit nombre d enregistrements Pas d ordre dans LH

34 34 Envoi s é lectif (solution IH*) i = 1 n = 0 Client Multiordinateur Level = 2 Next = 3 F1F Requête à intervalle sur F 1

35 35 Envoi s é lectif – Client D é terminer l ensemble A des serveurs couvrant la r é gion de Q (Algo Range Query du IH) : A {0, 1,..., n +2i } D é terminer pour chaque serveur de A la r é gion correspondante en utilisant (n est pas forni par IH) Envoyer à chaque serveur de A la sous-requête correspondante;

36 36 Envoi s é lectif – Serveur D é couper la requête re ç ue en des sous des sous-requêtes plus fines D é terminer l ensemble des serveur fils et envoyer à chaque serveur la sous-requête correspondante Si port é e du serveur port é e de la sous-requête alors Ex é cuter la requête correspondante Retourner(r é ponse + adresse + niveau)

37 37 Envoi par d é composition r é cursive

38 38 D é composition r é cursive – Client Algorithm Generate_Target_Servers Begin Compute the set S of target servers: S={s 0, s 1,..., s m } {0, 1,..., n +2i -1} Decompose the range of Q into relevant sub- queries: P ={ q 0, q 1,..., q m } for each server s i from S do Send (q i, j) towards server (s i ): j i +1 if (s in) and j i otherwise end for End

39 39 D é composition r é cursive – Serveur Algorithm Query_Propagation (Q, j) Begin Compute the set S of children servers: S={s k, s k+1,..., s k+m } {a+2 j+1,..., a+2 j } where k is the level of sk at the moment of its creation by server (a): j

40 40 D é composition r é cursive – Exemple

41 41 Tests de terminaison Probabiliste Expiration du timeout D é terministe Tous les serveurs ont bien r é pondu Hybride : D é terministe avec timeout D é terminer les serveurs manquant Leur retransmettre les messages de requête Retourner à l application les r é ponses re ç ues Signaler au Coordinateur les serveurs n ayant pas r é pondu Lancer la proc é dure de recouvrement

42 42 Architecture – Serveur / Coordinateur

43 43 Architecture – Client

44 44 Architecture – Serveur de noms

45 45 Module de contrôle de flux Worker Thread Window Thread Sender Threads Timer Thread Ack / Error Thread Worker Thread Receiver Thread Answers FIFO Ack / Error FIFO Requests FIFONon Ack FIFO Full Win. Pos. Window Empty Win. Pos. Push Pop Input Socket Output Sockets

46 46 Impl é mentations Environnement Windows (XP, 2000) Windows - Visual C++ (V6) Protocole plus complet Test et validation des r é sultats Java et XML Interop é rabilit é (Langage, SQL Xquery, … ) Portabilité (Windows, Linux, …) Requêtes / Réponses par lot (bulk operations)

47 47 Visual C++ (V6) Programmation 100% objet Interface graphique MFC & API Windows TCP, UDP I/O Completion Port, Asynchronous I/O Multithreading … Environnement de d é veloppement

48 48 Impl é mentation – Client

49 49 Impl é mentation – Serveur

50 50 Impl é mentation – Manager / Agent

51 51 Partie IV: Conclusion & perspectives

52 52 Travaux en cours Compl é ter le prototype IH*, mesurer ses performances R é tr é cissement du fichier Structure de la case (IH* IH ), contrôle d é clatement Terminaison des requêtes à intervalle et r é ception de repenses G é n é raliser le contrôleur de flux, Event-driven : IOCP Am é lioration du sch é ma IH classique Requêtes à intervalle r é cursives D é termination de la port é e d une r é gion quelque soit le niveau actuelle du fichier. Nouveau sch é ma de hachage lin é aire multidimensionnel Gray code, distance de Hamming Pr é servation de la localit é spatiale (proximity preserving) Meilleur d é clustering des donn é es Requête non orthogonales & Recherche au voisinage

53 53 Travaux futurs S é curit é & Haute disponibilit é r é cup é ration sur panne: serveur, coordinateur Sans-coordinateur, coordination distribu é s Sauvegarde & restauration : Signature, … Qualit é, Performances : Architectures ( Even-driven), communication, … Serveur de noms distribu é, Interop é rabilit é (XML) Adaptation du IH* au P2P Fully decentrilzed (data & index), fault tolerent SDDS

54 54 Probl è mes ouverts Plate-forme unifi é e pour le test et la validation des syst è mes SDDS SDDS avec coordination et acc è s compl è tement d é centralis é s Placement des serveurs et é quilibrage de charge (donn é es et travail) Gestion des caches dans les syst è mes SDDS …

55 55 Merci de votre attention BOUKHELEF Djelloul


Télécharger ppt "1 IH* – Hachage Multidimensionnel Distribu é et Scalable BOUKHELEF Djelloul É tudiant en PhD, Institut National d Informatique (INI), Alger. Algérie E-mail:"

Présentations similaires


Annonces Google