40
Riad Mokadem Riad.Mokadem@Dauphin e.fr Signatures Algébriques dans les Signatures Algébriques dans les Systèmes de Gestion de Données Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Scalables et Distribuées SDDS-2005 Encadré par : Pr W.Litwin Séminaire de Recherche CERIA 15 Décembre 2005

Riad Mokadem [email protected] Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

Embed Size (px)

Citation preview

Page 1: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

Riad Mokadem

[email protected]

Signatures Algébriques dans Signatures Algébriques dans les Systèmes de Gestion de les Systèmes de Gestion de

Données Scalables et Données Scalables et Distribuées SDDS-2005Distribuées SDDS-2005

Encadré par : Pr W.Litwin Séminaire de Recherche CERIA

15 Décembre 2005

Page 2: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

Les SDDSsLes SDDSsProblématiqueProblématiqueSignatures AlgébriquesSignatures Algébriques Signatures Algébriques Pré Signatures Algébriques Pré Calculées cumulativesCalculées cumulativesEncodage / Décodage de donnéesEncodage / Décodage de donnéesAlgorithmes de Karp-Rabin, Boyer Algorithmes de Karp-Rabin, Boyer Moore.Moore.Recherche de caractèresRecherche de caractères

Recherche complète, par préfixe, par chaîne, Recherche complète, par préfixe, par chaîne, plus grand préfixe commun, plus grande chaîne plus grand préfixe commun, plus grande chaîne

commune.commune.

Protection contre la corruption dans SDDS-2005Protection contre la corruption dans SDDS-2005 Mesures de Performances Mesures de Performances ComparaisonsComparaisonsPerspectives et ConclusionPerspectives et Conclusion

PlanPlan

Page 3: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

3

Multi-ordinateurMulti-ordinateur

Architecture Matérielle: Multi-ordinateur

Ressource Disque local

Ram distant

(Ethernet)

Ram distant

(Giga bit)

Ram locale

Temps d’accès 10msec 100 µsec 1 µsec 100nsec

Page 4: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

4

Architecture SDDS-2005Architecture SDDS-2005

Réseau

Serveur

Cases en RAM

Client

SDDS-CP

Applications

Client

Applications

Client

Applications

Client

Applications

SDDS-CPSDDS-CP SDDS-CP

SDDS-CP

...

Serveur

Cases en RAM

SDDS-CP

...

Serveur

Cases en RAM

SDDS-CP

...

Serveurde

Noms

SDDS-CP

Serveurd'index RP*S

SDDS-CP

...

...

Architecture SDDS 2005Architecture SDDS 2005

Page 5: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

5

Problématique ?Problématique ?

- Données visibles par les utilisateurs.

- Différents types de recherche coûtants

Utilisation des signatures cumulatives pour la recherche et contre les vues accidentelles des données

Encodage\ Décodage des données par le client (Données codées sur les serveurs).

différentes possibilités de recherches

Page 6: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

6

Structure de DonnéesStructure de Données

Key DataKey Data Non Key DataNon Key Data

Structure d’un enregistrementStructure d’un enregistrement

Le codage décodage concerne les données non cléLe codage décodage concerne les données non clé

Le codage décodage est transparent pour le serveur et les signatures Le codage décodage est transparent pour le serveur et les signatures sont calculées au niveau du client.sont calculées au niveau du client.

Limite des 256B pour les donnéesLimite des 256B pour les données

Page 7: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

7

Signatures AlgébriquesSignatures AlgébriquesStructure de corps de Galois fini GF(Structure de corps de Galois fini GF(2f ) ) f f>>1>>1

Chaque symbole du corps de longueur Chaque symbole du corps de longueur ff

Utilisation de Xor pour les opérations + et – .Utilisation de Xor pour les opérations + et – .

Utilsation de tables Antilog et Log pour X et / .Utilsation de tables Antilog et Log pour X et / .

Existence d’un élément primitif Existence d’un élément primitif

Signature algébrique Sign ( P )= pi i i = 1..n

Tels que P=(p1,p2,…,pn) ( = : = : , 2, 3… )Signature sur N symboles:Signature sur N symboles:

Sign (P)= (Sign ( P ), Sign 2( P ),…Sign N ( P ))

Page 8: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

8

Signatures Algébriques dans Signatures Algébriques dans SDDS-2005SDDS-2005

Utilisation des signatures algébriques dans SDDS-2004:Utilisation des signatures algébriques dans SDDS-2004:

* Stockage sur le disque.* Stockage sur le disque.

- Calcul de signatures pour les pages de données - Calcul de signatures pour les pages de données et stockage des pages mises à jour.et stockage des pages mises à jour.

* Gestion de concurrence (Mise à jour).* Gestion de concurrence (Mise à jour).

- Comparaison entre la signature avant et la - Comparaison entre la signature avant et la signature après d’un enregistrement lors d’une signature après d’un enregistrement lors d’une mise à jour.mise à jour.

* Recherche complète de chaîne dans les enregistrements.* Recherche complète de chaîne dans les enregistrements.

Page 9: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

9

Signatures Algébriques:Recherche de Signatures Algébriques:Recherche de Chaînes Chaînes (SDDS-2004):(SDDS-2004): Recherche Complète de Recherche Complète de DonnéeDonnée

Recherche d’une chaîne de signature S

* Le client envoi la signature S de la chaîne à rechercher

* Parcours séquentiel des enregistrements

* Comparaison avec les signatures algébriques stockées au niveau de chaque en-tête d’enregistrement.(Test sur le 1er symbole puis le 2 ème en cas d’égalité)

Lr : Longer of record.

Es: Pointer to next record

K: Key of record.

Lc: Version

Sg: Signature of record.

Lr Es K Lc Sg Data

Record Structure

Comparaison avec la signature stockée au niveau de chaque enregistrement

Page 10: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

10

Signatures AlgébriquesSignatures AlgébriquesCumulativesCumulatives

Encodage de pi :

p’i=pi i = antilog (log pi+i)

p’’i= p’’i-1 + p’i = p’’i-1 XOR p’i

Décodage de Pi :

pi=p’i / i = antilog (log p’i- i)

p’i= p’’i - p’’i-1= p’’i XOR p’’i-1

Page 11: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

11

Signatures Algébriques Signatures Algébriques CumulativesCumulatives

Exemple:

P=« CERIA_SEMINAIRE» Encodage

P’’=(p’’1,p’’2,….p’’15)=( C, p’’1+ 2E,….,p’’14+ 15E)

Sign2(P)= C+ 2E+….+ 15E

Décodage

p’i= p’’i - p’’i-1 p’2= p’’2 - p’’1

pi = p’i / i p2= p’2 / i

Page 12: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

12

Cas SDDS-2005

Signatures algébriques pour la recherche complèteN=2 (N nombre de symboles constituant la signature)

F=16

Signatures cumulatives pour la recherche de chaines

N=2F= 16

Probabilité de collision de 2-Nf.

GF(28) chaînes Code ASCII

GF(216 ) chaînes dans Unicode

Page 13: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

13

Recherche de DonnéesRecherche de Données

Pas d’Envoi de données lors de certaines Pas d’Envoi de données lors de certaines recherches recherches Envoi de signatures. Envoi de signatures.

Données encodées. Signatures pré-calculées.Plusieurs algorithmes disponibles: Boyer Plusieurs algorithmes disponibles: Boyer

Moore, Karp Rabin…Moore, Karp Rabin…

Page 14: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

14

Encodage / DécodageEncodage / DécodageRequête de RechercheRequête de Recherche

Client

Serv1

Serv2

Serv3

Requête de Requête de RechercheRecherche

Comparaison des signatures

Envoi du résultat Envoi du résultat de la recherchede la recherche

DécodageDécodage

Encodage Encodage à à

l’insertionl’insertion

Page 15: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

15

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Recherche du PréfixeRecherche du Préfixe

Recherche de Préfixe

- Le client envoi la signature Sc et la taille du préfixe m.

Au serveur:

- Lecture dans l’enregistrement de la signature Sm.

- Comparaison entre Sc et Sm. Sauvegarde l’enregistrement en cas d’égalité.

- Passage à l’enregistrement suivant.

- Vérification de Collision et envoi des enregistrements sélectionnés au client.

Complexité de la Recherche: O(1)

Page 16: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

16

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Recherche du PréfixeRecherche du Préfixe

Signature cumulative de UNIVERSITE PARIS

= Sign (S)

UNIVERSITE PARIS DAUPHINE

Signature cumulative de UNIVERSITE PARIS DAUPHINE

= Sign (E)

- Sc Sign (U)

- ….Sc= Sign (S) Préfixe trouvé

Page 17: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

17

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Recherche PartielleRecherche Partielle

Recherche de chaîne partielle* Le client envoi la signature Sc et la taille de donnée l.

•Au niveau du serveur:

i=1;

1- Lecture de la signature Ss sur le préfixe de longueur L.

Si Ss=Sc, l’enreg est sélectionné dans la liste des enregistrements envoyés au client.

2- Si i+l = n (taille de l’enregistrement) et Ss Sc passer à l’enreg suivant.

Page 18: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

18

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Recherche PartielleRecherche Partielle

2.1 Ss := Ss XOR p’i XOR p’l + i

2.2 Sc := antilog (log Sc  + 1).

3. Si Ss=Sc Chaine trouvé et l’enreg est sélectionné

Sinon ( Ss Sc) pas de chaîne trouvée

i := i + 1;

Revenir à (2) jusqu’au dernier caractère p’ de l’enreg.

4. passer à l’enregistrement suivant

Page 19: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

19

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Recherche PartielleRecherche Partielle

Exemple:

- Recherche de la chaîne « PARIS »

- Le client envoi la signature cumulative Sc des 5 caractères à rechercher

et la taille L=5. UNIVERSITE PARIS DAUPHINE

….Au niveau du serveur:

- Parcourt séquentiel suivant des chaînes de 5 caractères et compraison de signatures.

Sign(E)!=Sc, Sign(R)!=Sc,….Sign(S)=Sc Chaîne trouvée

- Vérification de Collision sur les enregistrements trouvés.

Complexité de la Recherche: O(n)

Page 20: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

20

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Recherche du Plus Grand PréfixeRecherche du Plus Grand Préfixe

Le client envoi le préfixe encodée de données. S’’=s’’Le client envoi le préfixe encodée de données. S’’=s’’11s’’s’’22…s’’…s’’ll à l’ensemble des serveursà l’ensemble des serveurs

-1. Trouver le 1-1. Trouver le 1erer enreg tels que p’’ enreg tels que p’’11=s’’=s’’11..

u=1;//Test si p’’u=1;//Test si p’’22= s’’= s’’22..

-2. Parcourir l’enreg suivant 22. Parcourir l’enreg suivant 2uu.i=2.i=2u u

-3. tant que p’’3. tant que p’’ii=s’’=s’’ii et 2 et 2uu<n <n u:=u+1; L=u;u:=u+1; L=u;

Soit j=(2Soit j=(2u u + 2+ 2u-1u-1)/2)/2

Si p’’Si p’’jj=s’’=s’’jj Recherche dans [j,p’’ Recherche dans [j,p’’uu] L:=j] L:=j

Sinon recherche dans [p’’Sinon recherche dans [p’’u-1u-1,j],j]

Revenir à (3)Revenir à (3)

Page 21: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

21

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Recherche du Plus Grand PréfixeRecherche du Plus Grand Préfixe

- Rajouter l’enregistrement à la liste. Soit s’’- Rajouter l’enregistrement à la liste. Soit s’’LL sa sign cumulative sa sign cumulative

- Examiner le prochains enregistrement:- Examiner le prochains enregistrement:

- Test Si p’’- Test Si p’’11=s’’=s’’LL u=L revenir à (1). (en multipliant par u=L revenir à (1). (en multipliant par L )

- Déterminer nouveau L- Déterminer nouveau L

Chaque serveur répond au client en envoyant un message comportant la Chaque serveur répond au client en envoyant un message comportant la taille du plus grand préfixe et les différents enregistrements concernés.taille du plus grand préfixe et les différents enregistrements concernés.

Complexité de la Recherche par enregistrement: Entre O(1) et O(Log 2m).

(M taille du préfixe commun)

Page 22: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

22

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Recherche du Plus Grand PréfixeRecherche du Plus Grand Préfixe

UNIVERSITEDAUPHINEEnreg1 P

UNIVERSITEPARIS9 DAUPHINEEnreg2 P’

UNIVERSITEPARIS_ DAUPHINEChaîne S

Enregistrement1: Comparaion entre P et S. Enregistrement1: Comparaion entre P et S. Egalité sur p1, p2, p4, p8.Egalité sur p1, p2, p4, p8.

Inégalité sur p16, p12.Inégalité sur p16, p12.

Egalité ur p10.Egalité ur p10.

Inégalité sur p11 Inégalité sur p11 L=10 L=10

Enregistrement2: Comparaion entre P’ et S.Enregistrement2: Comparaion entre P’ et S. Egalité sur p1, p2, p4, p8.Egalité sur p1, p2, p4, p8.

Inégalité sur p16.Inégalité sur p16.

Egalité ur p12, p14, p15. Egalité ur p12, p14, p15. L=15 L=15

Page 23: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

23

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Plus Grande Chaîne CommunePlus Grande Chaîne Commune

Le client envoi la chaîne encodée de données. S’’=s’’Le client envoi la chaîne encodée de données. S’’=s’’11s’’s’’22…s’’…s’’m m à l’ensemble à l’ensemble des serveurs.des serveurs.

( Appliquer l’algorithme du plus grand préfixe sur chaque caractère )( Appliquer l’algorithme du plus grand préfixe sur chaque caractère )

i:=1;j:=1;i:=1;j:=1;

-1. -1. Si p’’ Si p’’jj=s’’=s’’ii k:=i;k:=i;

appliquer l’Algorithme du plus grand préfixeappliquer l’Algorithme du plus grand préfixe

Déterminer Déterminer LL

i:=k+1; j:=1; revenir à (1)i:=k+1; j:=1; revenir à (1)

sinon j:=j+1, si j < n-L revenir à (1);sinon j:=j+1, si j < n-L revenir à (1);

-2. i:=i+1; si i < m et m-i<L j=1;revenir à (1)-2. i:=i+1; si i < m et m-i<L j=1;revenir à (1)

sinon Enregistrement suivantsinon Enregistrement suivant

n Taille de l’enreg.

m Taille de la chaîne

L Taille de la plus grande chaîne commune

Page 24: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

24

Recherche de Chaînes dans SDDS-2005Recherche de Chaînes dans SDDS-2005Plus Grande Chaîne CommunePlus Grande Chaîne Commune

UNIVERSITEDAUPHINEEnreg1 P

UNIVERSITEPARISDAUPHINE9Enreg2 P’

SEMINAIREPARISDAUPHINEChaîne S

Enregistrement1: L= 8Enregistrement1: L= 8

Enregistrement2: L= 13Enregistrement2: L= 13

Complexité de la Recherche par enregistrement: Entre O(n-L) (m-L)et O(nm).

(n Taille de l’enreg, m taille de la chaîne envoyée par le client, L la taille de chaîne commune la plus longue)

….

Page 25: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

25

Protection contre la collision lors de la Protection contre la collision lors de la Recherche dans SDDS-2005Recherche dans SDDS-2005

A la fin de la recherche, résolution collision donnés.A la fin de la recherche, résolution collision donnés.

Deux possibilités:Deux possibilités:

* Résolution au niveau du client.* Résolution au niveau du client.

- Risque de recherche à nouveau sur l’ensemble des serveurs - Risque de recherche à nouveau sur l’ensemble des serveurs en cas de collision.en cas de collision.

* Résolution au niveau des serveurs (Notre choix).* Résolution au niveau des serveurs (Notre choix).

- comparaisons en parallèle.- comparaisons en parallèle.

Comparaison caractère par caractère entre la chaîne reçue et le contenu de Comparaison caractère par caractère entre la chaîne reçue et le contenu de l’enregistrement sélectionné.l’enregistrement sélectionné.

Relancer la recherche en cas de collision (caractére par caractére)Relancer la recherche en cas de collision (caractére par caractére)

Page 26: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

26

Recherche de CRecherche de Chaînes:haînes:AlgorithmeAlgorithme de Karp-Rabin de Karp-Rabin

Une sous chaîne peut être considérée comme un nombre entier en base d (f=8 est la taille de l'alphabet,

M taille de la chaîne à rechercher)

P’i = pifM-1+pi+1fM-2+ … +pi+M-2f+pi+M-1

La valeur pour la sous chaîne commençant à la position suivante peut être calculée à l'aide de l'expression:

p’i+1 = (p’i-pifM-1)*f+pi+M

Page 27: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

27

Mesures de Performances Mesures de Performances (Codage / Décodage de Données)(Codage / Décodage de Données)

Encodage : 0.045ms/KBEncodage : 0.045ms/KB

Décodage : 0.042ms/KBDécodage : 0.042ms/KB

Insertion : 0.25ms/KBInsertion : 0.25ms/KB

Faible coûtFaible coût

Recherche de données plus rapide Protection contre la vue accidentelle de ces données

Page 28: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

28

Mesures de Performances Mesures de Performances (Signatures Cumulative)(Signatures Cumulative)

Record Record String Offset Time

Position Size Size (msec)

1 20 5 13 0.44

1 100 20 70 0.68

1 100 20 80 0.682

100 100 20 70 72.5 100 100 30 70 71.7 200 100 20 70 165

Record Record Préfix Time

Position Size Size (msec)

1 250 20 0.369

100 250 20 37.8

100 250 35 37.78

200 250 20 71.3

300 250 20 120.53

500 250 20 197.5

Temps de recherche de chaînes

Temps de recherche de Préfixes

L’utilisation de Modulo pour remédier à la limite de taille de données (255) augmente le temps de recherche de 1% à 2%.

Page 29: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

29

Mesures de PerformancesMesures de Performances

(Signatures Cumulative)(Signatures Cumulative)Position enreg Taille donnes

inséréesTaille dernier

enregTaille prefixe à

rechercherTemps de

recherche (ms)

1 50 50 25 0.456

1/100 250 50 25 43

49/100 250 50 25 46.2

99/100 250 50 25 47

Position enreg Taille donnesinsérées

Taille dernier enreg

(préfixe)

Taille de la chaîne à rechercher

Offset chaîne dans

enregistrement

Temps de recherche

(ms)

1 100 100 22 70 0.62

100 100 22 10 10 290

100 100 45 15 10 470

100 120 45 15 10 565

Temps de recherche du plus grand Préfixe

Temps de recherche de la plus grande chaîne commune

Existence de plus grands préfixes intermédiaires

}

Page 30: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

30

ComparaisonsComparaisons

Size of case

Size of records

Size of last record

Size data to search

Offset in last Record

Algebraic Signature Search

Karp Rabin Search

Cumu-latives sign Search

100 250 25 10 5 205 151 147

200 250 25 10 5 368 275 268

500 250 25 10 5 1123 725 702

1000 250 25 10 5 2254 1580 1526

Tableau comparatif pour la recherche de chaîne dans un enregistrement

Page 31: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

31

ComparaisonsComparaisons

Temps de recherche de chaînes réduits:Temps de recherche de chaînes réduits:

--Algorithmes existants (karp-Rabin)Algorithmes existants (karp-Rabin)

Gain de 5% pour les données<32BGain de 5% pour les données<32B

Gain de + de 20% pour les données>32BGain de + de 20% pour les données>32B

-Données non encodées (Gain de 30%). -Données non encodées (Gain de 30%).

Comparaison entre Temps de Recherches

0

500

1000

1500

2000

2500

100 200 500 1000

Taille de la case de données

Tem

ps

de

Rec

her

che

SignAlgébriques

Karp Rabin

SignCumulatives

(Ms)

(MB)

Page 32: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

32

Recherche dans SDDS-2005Recherche dans SDDS-2005

}}

}}Recherche par cléRecherche par clé

Recherche par le contenuRecherche par le contenu

Interface du Client pour différents types de recherche s dans SDDS-2005

Page 33: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

33

Exemple de Recherche de Préfixe dans SDDS-2005Exemple de Recherche de Préfixe dans SDDS-2005

Résultat provenant du serveur au niveau Résultat provenant du serveur au niveau du Client SDDS-2005du Client SDDS-2005

Lancement de la recherche du Préfixe au Lancement de la recherche du Préfixe au niveau de l’applicationniveau de l’application

Page 34: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

34

PerspectivesPerspectives

Autres méthodesAutres méthodes: : (à implémenter)(à implémenter)--Utilisation du schéma de Horner( signatures inverséesUtilisation du schéma de Horner( signatures inversées ))

SigSignn=p=p11ααnn+p+p22ααn-1+….+ppnnαα1 1 =(p=(p1αα+p+p22))αα+p+p33) ) αα ….+ppnnαα

-Utilisation de table de Broder, de multiplication de -Utilisation de table de Broder, de multiplication de polynômes, de table multiplication par polynômes, de table multiplication par αα

Plus rapide

Page 35: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

35

Perspectives: Protection contre la Perspectives: Protection contre la corruption dans SDDS-2005corruption dans SDDS-2005

Au moment de l’insertion de donnéesAu moment de l’insertion de données

Pour chaque 255 caractèresPour chaque 255 caractères

Calcul du 2Calcul du 2èmeème

symbole de la signature s2(élément primitif symbole de la signature s2(élément primitif αα22 ) )

Sauvegarde au niveau du client de s2.Sauvegarde au niveau du client de s2.

Au moment du décodageAu moment du décodage ::

Calcul de la signature s’2 sur l’enregistrement provenant du serveurCalcul de la signature s’2 sur l’enregistrement provenant du serveur

Comparaison avec la signature stockée Comparaison avec la signature stockée

Détection de corruption en cas d’inégalitéDétection de corruption en cas d’inégalité

Probabilité de non détection de corruption de données 1/2Probabilité de non détection de corruption de données 1/2nfnf

Page 36: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

36

Perspectives: Perspectives: Compression delta pour les mise à Compression delta pour les mise à jour distribuées de données dans GF(2jour distribuées de données dans GF(21616):):

A chaque insertionA chaque insertion: :

Calcul de la sign cumulative (2 symboles) chaque 256 car et stockage de Calcul de la sign cumulative (2 symboles) chaque 256 car et stockage de s2 dans la structure de l’enregs2 dans la structure de l’enreg..

A chaque mise à jour (normale))::Recherche->Comparaison entre l’image avant et arrière au niveau du Recherche->Comparaison entre l’image avant et arrière au niveau du dernier car de la signature:dernier car de la signature:

*Egalité*Egalité Pas de mise à jour Pas de mise à jour

*Différence: comparaison au milieu de l’enreg....*Différence: comparaison au milieu de l’enreg....

Déterminer la partie mise à jour Déterminer la partie mise à jour

Même principe pour le Même principe pour le stockagestockage (Déterminer les pages (Déterminer les pages modifiées)modifiées)

Page 37: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

37

Exemple de stockage dans SDDS-2005Exemple de stockage dans SDDS-2005

Listing d’exécution sur Server SDDS-2005 Listing d’exécution sur Server SDDS-2005(Cas de signatures algébriques)(Cas de signatures algébriques)

1ére Requête de stockage : 1ére Requête de stockage : New File New File calcul de Signature s (375 ms) calcul de Signature s (375 ms) sauvegarde sur disque de toutes sauvegarde sur disque de toutes les pages (4922 ms)les pages (4922 ms)

2ème Requête de stockage : 2ème Requête de stockage : Pas de changement (375 ms) Pas de changement (375 ms)

3ème Requête de 3ème Requête de stockage : stockage : 1 page mise à jour 1 page mise à jour

(375 + 16 ms)(375 + 16 ms)

Amélioration de ces temps en utilisant les signatures Pré Calculées Cumulatives

Page 38: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

38

ConclusionConclusion

- Implémentation de nouvelles primitives - Implémentation de nouvelles primitives de recherche, mise à jour et stockage.de recherche, mise à jour et stockage.

( Prototype SDDS-2005 )( Prototype SDDS-2005 )

En téléchargement sur En téléchargement sur http:\ceria.dauphine.fr

Page 39: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

39

RéférencesRéférences- - W Litwin, R.Mokadem & Th.Schwarz Pre-computed Algebraic Signatures for W Litwin, R.Mokadem & Th.Schwarz Pre-computed Algebraic Signatures for faster string search. Protection against incidental viewing and corruption of Data faster string search. Protection against incidental viewing and corruption of Data in an SDDS. Proceeding of third international workshop and co-located with the in an SDDS. Proceeding of third international workshop and co-located with the 3131stst international conference on very large data bases (DBISP2P 2005). international conference on very large data bases (DBISP2P 2005). Trondheim, Norway. August 2005.Trondheim, Norway. August 2005.

- W Litwin, R Mokadem, Thomas Schwarz.: "- W Litwin, R Mokadem, Thomas Schwarz.: "Disk Backup Through Algebraic Disk Backup Through Algebraic Signatures in Scalable and Distributed Data StructuresSignatures in Scalable and Distributed Data Structures", Proceedings of the Fifth ", Proceedings of the Fifth Workshop on Distributed Data and Structures, Thessaloniki, June 2003 (WDAS Workshop on Distributed Data and Structures, Thessaloniki, June 2003 (WDAS 2003). 2003). http://ceria.dauphine.fr/Riad/Article_storage-wdas_wl.pdfhttp://ceria.dauphine.fr/Riad/Article_storage-wdas_wl.pdf

--M. Crochemore andM. Crochemore and T.Lecroq, Pattern Matching and Text Compression T.Lecroq, Pattern Matching and Text Compression AlgorithmAlgorithm, in , in The Computer Science and Engineering HandbookThe Computer Science and Engineering Handbook, A.B. Tucker, , A.B. Tucker, Jr, ed., CRC Press, Boca Raton, 2003, Chapter 8. To appear. Jr, ed., CRC Press, Boca Raton, 2003, Chapter 8. To appear.

Litwin, W., Schwarz, Th. Algebraic Signatures for Scalable Distributed Data Litwin, W., Schwarz, Th. Algebraic Signatures for Scalable Distributed Data Structures. IEE Intl. Conf. On Data Eng., ICDE-04, 2004.Structures. IEE Intl. Conf. On Data Eng., ICDE-04, 2004.

Karp, R. M., Rabin, M. O.Karp, R. M., Rabin, M. O. Efficient randomized pattern-matching algorithms. Efficient randomized pattern-matching algorithms. IBM Journal of Research and Development, Vol. 31, No. 2, March 1987.IBM Journal of Research and Development, Vol. 31, No. 2, March 1987.

Ingold Rolf.2004 Ingold Rolf.2004 Programmation 3A: Algorithmique. Recherche de sous-chaînes. Université of Fribourg.2004

Page 40: Riad Mokadem Riad.Mokadem@Dauphine.fr Signatures Algébriques dans les Systèmes de Gestion de Données Scalables et Distribuées SDDS-2005 Encadré par : Pr

FINFIN

Merci Merci

[email protected]@Dauphine.frne.fr