rim moussa [email protected] ceria.dauphine.fr/rim/rim.html

63
Contribution à la Conception et à l’Implantation de la Structure de Données Distribuée et Scalable à Haute Disponibilité: LH* RS Rim Moussa Rim Moussa [email protected] [email protected] http://ceria.dauphine.fr/rim/ http://ceria.dauphine.fr/rim/ rim.html rim.html Présentation de Thèse en Informatique Directeur de Thèse: Pr. Witold Litwin Rapporteurs: Pr. Thomas J.E. Schwarz Pr. Toré Risch Suffrageant: Pr. Gérard Lévy Université Paris Dauphine *CERIA Lab. *04 Octobre 2004

Upload: tyson

Post on 23-Jan-2016

72 views

Category:

Documents


0 download

DESCRIPTION

*04 Octobre 200 4. Université Paris Dauphine *CERIA Lab. Contribution à la Conception et à l’Implantation de la Structure de Données Distribuée et Scalable à Haute Disponibilité: LH* RS. Rim Moussa [email protected] http://ceria.dauphine.fr/rim/rim.html. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

Contribution à la Conception et à

l’Implantation de la Structure de Données

Distribuée et Scalable à Haute Disponibilité:

LH*RS

Rim MoussaRim Moussa [email protected] [email protected]

http://ceria.dauphine.fr/rim/rim.htmlhttp://ceria.dauphine.fr/rim/rim.html

Présentation de Thèse en Informatique

Directeur de Thèse: Pr. Witold Litwin

Rapporteurs: Pr. Thomas J.E. Schwarz

Pr. Toré Risch

Suffrageant: Pr. Gérard Lévy

Université Paris Dauphine *CERIA Lab.

*04 Octobre 2004

Page 2: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 2

Plan

1. Problématique

2. Etat de l’Art

3. Fondements Thèoriques de LH*RS

4. Le Gestionnaire LH*RS

5. Expérimentations

6. Création d’un Fichier LH*RS

7. Récupération de Cases

8. Ajout de Cases de Parité

9. Conclusion & Travaux Futurs

Page 3: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 3

Faits …

Volume d’Information de 30% /an

Technologie

Infrastructure Réseau

>> D’après la loi de Gilder, la bande passante triple

tous les ans.

Evolution en Capacités de Stockage & de Calcul des

PCs

>> D’après la loi de Moore, les capacités de stockage &

de calcul des PCs doublent tous les 18 mois.

Différentiel Disques & CPUsBesoin de Systémes de Stockage de Données

Distribués

les SDDS: LH*, RP* … Haut Débit

Page 4: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 4

Faits …

Réseau

Échecs Fréquents et Coûteux

>> Stat. publiées par le Contingency Planning Research en

1996: le coût d’interruption de service/h d’une app. de

courtage est $6,45 million.

Besoin de Systèmes de Stockage Distribués et à Haute

Disponibilité

Multiordinateurs

>>Architecture Modulaire

>>Bon Rapport Prix Performance

Page 5: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 5

Etat de l’Art

Calcul de Parité

(+)(+) Bon Temps de Réponse, les miroirs sont fonctionnels

(-) Coût de Stockage (n si n répliquas)

Réplication des Données

Critères d’évaluation de Codes de Correction d’Effacements (ang. Erasure-resilient codes):

Taux de Codage (volume parité / volume données)

Pénalité de Mise à Jour (des volumes de parité)

Taille du Groupe utilisé pour la Récupération

Complexité du Codage & du Décodage

Capacité de Récupération

Page 6: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 6

Schémas de Parité

Schémas 1-disponibles

Schémas k-diponibles

Codes Linéaires Binaires: [H94]

Tolérent au max. 3 échecs

Array Codes: EVENODD [B94 ], X-code [XB99], RDP [C+04]

Tolèrent au max. 2 échecs

Codes Reed Solomon: IDA [R89], RAID X [W91], FEC [B95],

Tutorial [P97], LH*RS [LS00]

Tolèrent k échecs

Calcul de parité par XOR : Technologie RAID [PGK88],

SDDS LH*g [L96] …

Page 7: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 7

Plan

1. Problématique

2. Etat de l’Art

3. Fondements Thèoriques de LH*RS

LH*RS?

SDDSs?

Codes Reed Solomon?

Optimisations Codage/Décodage

4. Le Gestionnaire LH*RS

5. Expérimentations

….

Page 8: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 8

LH*RS ?

Distribution par Hachage Linéaire (LH*LH [KLR96])

des Données sur les Serveurs.

Gestionnaire LH*LH [B00]

Scalabilité & Haut Débit

Haute Disponibilité

LH*: Structure de Données Distribuée & Scalable

Calcul de Parité par les Codes Reed-Solomon [RS63]

LH*RS [LS00]

Page 9: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 9

Principes des SDDSs

(1) Extension Dynamique du Fichier

Client

Réseau

Client…

Cases de Données

…SURCHARGEE

Eclatement Insertions

Coordinateur

Transfert Enregistrements

Page 10: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 10

PrincipesPrincipes des SDDS (2)

Réseau

(2) Absence de Répertoire d’Accès Centralisé

Cases de Données

……

Client

Requête Renvoi de Requête

Message

Ajustement

Image Client

Image Fichie

r

Page 11: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 11

Codes Reed-Solomon

Intérêt

A partir de m symboles de données calcul de n symboles

de parité

Représentation des Données Corps de Galois

Corps de taille finie: q

Propriété de fermeture sous: Addition, Soustraction,

Multiplication, Division.

Dans un CG(2w)

(1) Addition (XOR)

(2) Multiplication (Tables: gflog et antigflog)

e1 * e2 = antigflog[ gflog[e1] + gflog[e2] ]

Page 12: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 12

1 0 0 0 0 … 0 C1,1 … C1,j … C1,n-m

0 1 0 0 0 … 0 C2,1 … C2,j … C2,n-m

0 0 1 0 0 … 0 C3,1 … C3,j … C3,n-m

0 00 0 0 … 1 Cm,1 … Cm,j … Cm,n-m

Codage RS

S1

S2

S3

Si

Sm

S1

Sm

P1

P2

Pj

Pn-m

=

C1,j

C2,j

C3,j

Cm,j Pj

(S1 C1,j) (S2 C2,j) … (Sm Cm,j)

m-1 XORs CG

m Multiplications CG

S1

S2

S3

Si

SmIm P(m(n-

m))

(1) Codage Systématique: Matrice de la forme (Im|P)

(2) Toutes m colonnes doivent être linéairement

indépendantes

Matrice de Codage

Page 13: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 13

Décodage Optimisé

Multiplier les ‘‘m symboles

OK’’

par seulement

les colonnes de H-1

correspondant aux

symboles perdus

m symboles OK

Hm: m colonnes correspondantes

H-1 = [ S1 S2 S3 S4 ….. Sm ]

Pivot de Gauss

1 0 0 0 0 … 0 C1,1 C1,2 C1,3 … C1,n-m

0 1 0 0 0 … 0 C2,1 C2,2 C2,3 … C2,n-m

0 0 1 0 0 … 0 C3,1 C3,2 C3,3 … C3,n-m

0 0 0 0 0 … 1 Cm,1 Cm,2 Cm,3 … Cm,n-m

Décodage RSS1

S2

S3

S4

Sm

P1

P2

P3

Pn-m

Page 14: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 14

Corps de Galois Matrice de Parité

Optimisations

Pré-calcul du log

(+)

CG(216) vs. CG(28) réduit

de 1/2 le #Symboles

#Opérations dans le CG.

CG(28) 1 symbole = 1 Octet

CG(216) 1 symbole = 2 Octets

(-)

Tailles des Tables de Multiplication

CG(28): 0,768 Ko

CG(216): 393,216 Ko (512 0,768)

Page 15: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 15

Corps de Galois Matrice de Parité

Optimisations (2)

Pré-calcul du log

1ére Colonne de ‘1’s

La 1ére case de parité se code en XOR

gain en codage/décodage

1ére Ligne de ‘1’s

Toute Mise à jour parvenant de la 1ére case de données est traitée en XOR

gain en performance de 4% (Création case de parité, m =4)

0001 0001 0001 …

0001 eb9b 2284 …

0001 2284 9é74 …

0001 9e44 d7f1 …

… … … …

Page 16: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 16

Corps de Galois Matrice de Parité

Optimisations (3)

Pré-calcul du log

CodageCodage

Pré-calcul du log des coef.

de la matrice P

Amélioration de 3,5%0000 0000 0000 …

0000 5ab5 e267 …

0000 e267 0dce …

0000 784d 2b66 …

… … … …

DécodageDécodage

Pré-calcul du log des

coef. de la matrice H-1 et

des symboles OK

Amélioration de 4% à

8% en fonction du

#Cases à récupérer

But: Réduire la complexité de la Multiplication CG

e1 * e2 = antigflog[ gflog[e1] + gflog[e2] ]

Page 17: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 17

Groupe de Parité LH*RS

Cases de Données

Cases de Parité

: Clé; Champs Données

Rang Insertion

r

: Rang; [Liste-clés ]; Champs Parité

Clé r

2

1

0

2

1

0

Un groupe k-disponible permet des survivre à l’échec de k cases

Concept de Groupage

m: #cases de données

k: #cases de parité

Page 18: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 18

Plan

1. Problématique

2. Etat de l’Art

3. Fondements Thèoriques de

LH*RS

4. Le Gestionnaire LH*RS

Communication

Gross Architecture

5. Expérimentations

6. Création d’un Fichier LH*RS

7. Récupération de Case

Page 19: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 19

Communication

TCP/IPTCP/IPUDP ““Multicast”Multicast”

Requêtes Individuelles

(Insertion, MAJ, Suppression, Recherche)

Récupération Enregistrement

Messages de Service

Rapidité

Page 20: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 20

Communication

TCP/IPUDPUDP “Multicast”

Transfert de Gros Volumes de Données

Ajout Case de Parité

Transfert MAJ parité et Enregistrements (Éclatement Serveur)

Récupération Serveurs

Performance & Fiabilité

Page 21: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 21

Communication

TCP/IPUDP “Multicast”

Recherche de Nouveaux Serveurs de Données ou de Parité

Communication Multipoints

Page 22: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 22

Architecture

(1) Gestionnaire de Connexions TCP/IP

Principe de “Crédit d’Envoi & Conservation de

Messages jusqu’à Réception ACK” [J88, GRS97, D01]

Récupération 1 Case (3,125 MO):

SDDS 2000: 6,7 s SDDS2000-TCP: 2,6 s

(Config. Matérielle: CPU 733MhZ machines, Réseau 100Mbps)

Avant

Amélioration de 60%

Les connexions TCP/IP sont ouvertes (ang. passive OPEN),

RFC 793 –[ISI81], TCP/IP sous Win2K Server [MB00]

(2) Contrôle de Flux & Acquittement Messages (CFAM)

Par rapport, à l’Architecture SDDS2000 du Gestionnaire LH*LH [B00],

Page 23: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 23

Architecture (2)

Avant

Ajout de Serveurs (de données ou de parité) par Multicast:

(3) Structure d’Adresses IP dynamique

Table d’allocation de serveurs, pré-

définie et répliquée sur tous les

serveurs

Groupe Multicast de Cases de

Données

Groupe Multicast de Cases de

Parité

Coordinateur

Cases Créées

Page 24: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 24

Architecture (3)

Port Écoute Multicast

Port Envoi UDP

Port TCP/IP

Port Écoute UDP

Thread Écoute UDP

File Messages

Thread Écoute TCP

Thread Écoute Multicast File

Messages

Threads de Travail

Réseau

Thread Gestion Ack

Zones Libres

Messages en attente ACK.

Messages non acquittés

Structure Acquittement

Page 25: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 25

Expérimentations

Evaluation des Performances

* Temps CPU

* Temps de Communication

Environnement Expérimental

* 5 Machines (Pentium IV: 1.8 GHz, RAM: 512 Mb)

* Réseau Ethernet de 1 Gbps

* Système d’exploitation: Win2K Server

* Configuration testée: Un Client,

Un groupe de 4 Cases de Données,

k Cases de Parité (k = 0,1,2,3).

Page 26: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 26

Plan

1. Problématique

2. Etat de l’Art

3. Fondements Thèoriques de LH*RS

4. Le Gestionnaire LH*RS

5. Expérimentations

6. Création d’un Fichier LH*RS

MAJ des Cases de Parité

Performances

7. Récupération de Cases

8. Ajout de Cases de Parité

Page 27: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 27

Création Fichier

Manipulations Client Propagation des Insertions/ Mises à Jour / Suppressions

des enregistrements de données vers les cases de parité.

MAJ: Transmission du –enregistrement.

Suppression: Gestion de Rangs Libres dans les cases de données.

Eclatement d’une Case de données N1: #Enregistrements restants

N2: #Enregistrements partants

Groupe de Parité de la Case en Éclatement

N1+N2 Suppressions + N1 Insertions

Groupe de Parité de la Nouvelle Case de Données

N2 Insertions

Page 28: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 28

Performances

Config.Config. Crédit Envoi Client = Crédit Envoi Client = 11

Crédit Envoi Client = Crédit Envoi Client = 55

Max Taille Case = 10 000 enregistrements

Fichier de 25 000 enregistrements

1 enregistrement = 104 Octets

Peu de différence entre CG(28) et CG(216)

Page 29: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 29

Performances

Config.Config. Crédit Envoi Client = Crédit Envoi Client = 11

Crédit Envoi Client = Crédit Envoi Client = 55

7,896s9,990s

10,963s

0,0002,0004,0006,0008,000

10,00012,000

0 5000 10000 15000 20000 25000

Inserted Keys

File

Cre

atio

n Ti

me

(sec

)

k = 0k = 1k = 2

kk = 0 ** = 0 ** kk = 1 = 1 Dégradation des Perf. de Dégradation des Perf. de 20%20%kk = 1 ** = 1 ** kk = 2 = 2 Dégradation des Perf. de Dégradation des Perf. de 8%8%

Page 30: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 30

Performances

Config.Config. Crédit Envoi Client = Crédit Envoi Client = 11

Crédit Envoi Client = Crédit Envoi Client = 55

kk = 0 ** = 0 ** kk = 1 = 1 Dégradation des Perf. de Dégradation des Perf. de 37%37%kk = 1 ** = 1 ** kk = 2 = 2 Dégradation des Perf. de Dégradation des Perf. de 10%10%

4,349s

6,940s7,720s

0

2

4

6

8

10

0 5000 10000 15000 20000 25000

Number of Inserted Keys

File

Cre

atio

n Ti

me

(sec

)

k = 0k = 1k = 2

Page 31: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 31

Plan

1. Problématique

2. Etat de l’Art

3. Fondements Thèoriques de LH*RS

4. Le Gestionnaire LH*RS

5. Expérimentations

6. Création d’un Fichier LH*RS

7. Récupération de Cases

Scénario

Performances

8. Ajout de Cases de Parité

Page 32: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 32

Détection d’échecs

Êtes-vous OK?

Cases de Données

Cases de Parité

Scénario

Coordinateur

Page 33: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 33

Attente de Réponses …

OK

Cases de Données

Cases de Parité

Scénario (2)

OK OKOK

Coordinateur

Page 34: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 34

Recherche de Serveurs de Secours …

Être Serveur ?

Scénario (3)

Groupe Multicast de Cases de données

Coordinateur

Page 35: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 35

Attente de Réponses …

Lancer Ecoute UDP, Lancer Ecoute TCP, Lancer Threads de

Travail

*Attente Confirmation* Si Time-out expire

Tout annuler

OK

OK

OK

Scénario (4)

Groupe Multicast de Cases de données

Coordinateur

Page 36: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 36

Sélection de Serveurs de Secours

Scénario (5)

Groupe Multicast de Cases de données

Confirmé

Annulé

Confirmé

ConfirmationCoordinateur

Page 37: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 37

Cases de Parité

Récupérer

Scénario (6)

Sélection du Gestionnaire de Récupération

Coordinateur

Page 38: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 38

Cases de Données

Cases de Parité

Gestionnaire de

Récupération

Cases de Secours

Cases participant à la récupération

Recherche Enregs

Scénario (7)

Phase d’Interrogation

Page 39: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 39

Phase de Décodage

Tranches Récupérée

s

Cases de Données

Cases de parité

Cases de Secours

Cases participant à la récupération

Tampons

Scénario (8)

Phase de Reconstruction

Gestionnaire de

Récupération

Phase d’Interrogation en //

Page 40: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 40

2 Cases

1 Case XORConfig. 1 Case RS XOR vs. RS

Performances

Info Fichier

Fichier de 125 000 Enregs

Taille Enreg. = 100 octets

Taille Case = 31250 enregs 3.125 MO

Groupe de 4 Cases de Données (m = 4), k-disponible avec k = 1,2,3

Décodage

* CG(216)

* Décodage RS+ (RS +Pré-calcul du log de H-1 et des Symboles

OK)

Récupération par Tranche (auto-adaptation aux capacités des PCs)

Page 41: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 41

2 Cases

1 Case XORConfig. 1 Case RS XOR vs. RS

Performances

TrancheTemps Total (sec)

Temps Trait. (sec)

Temps Com. (sec)

1250 0,625 0,266 0,348

3125 0,588 0,255 0,323

6250 0,552 0,240 0,312

15625 0,562 0,255 0,302

31250 0,578 0,250 0,328

Tranche (de 4% à 100% du contenu de la case)

Temps Total constant

0,58

Page 42: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 42

2 Cases

1 Case XORConfig. 1 Case RS XOR vs. RS

Performances

Tranche

Temps Total (sec)

Temps de Trait. (sec)

Temps de Com. (sec)

1250 0,734 0,349 0,365

3125 0,688 0,359 0,323

6250 0,656 0,354 0,297

15625 0,667 0,360 0,297

31250 0,688 0,360 0,328

0,67

Tranche (de 4% à 100% du contenu de la case)

Temps Total constant

Page 43: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 43

2 Cases

1 Case XORConfig.

Performances

Temps récupération d’1 case -XOR : 0,58 sec

XOR dans CG(216) réalise un gain de 13% sur le

Temps Tot. (et de 30% sur le Temps CPU)

Temps récupération d’1 case –RS : 0,67 sec

1 Case RS XOR vs. RS

Page 44: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 44

3 Cases

2 Cases

Récapitulatif

XOR vs. RS1 Case RS

Performances

Tranche

Temps Total (sec)

Temps Trait. (sec)

Temps Com. (sec)

1250 0,976 0,577 0,375

3125 0,932 0,589 0,338

6250 0,883 0,562 0,321

15625 0,875 0,562 0,281

31250 0,875 0,562 0,313

0,9

Tranche (de 4% à 100% du contenu de la case)

Temps Total constant

Page 45: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 45

3 Cases

2 Cases

Récapitulatif

XOR vs. RS1 Case RS

Performances

Tranche

Temps Total (sec)

Temps Trait. (sec)

Temps Com. (sec)

1250 1,281 0,828 0,406

3125 1,250 0,828 0,390

6250 1,211 0,852 0,352

15625 1,188 0,823 0,361

31250 1,203 0,828 0,375

1,23

Tranche (de 4% à 100% du contenu de la case)

Temps Total constant

Page 46: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 46

Performances

3 Cases

2 Cases

Récapitulatif

XOR vs. RS1 Case RS

fTaille Case (MO)

Temps Total (sec)

Vitesse de Récup.(MO/se

c)

1 (XOR)1 (RS)

3,1250,67 4,46

0,58 3,65

2 6,250 0,9 5,21

3 9,375 1,23 5,86

Temps récupération de f cases f Temps récupération

d’1 case

Même Phase d’Interrogation Donc, le + est du au temps de décodage et d’envoi de tampons de récupération

Page 47: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 47

Performances

CG(28)

XOR dans CG(28) améliore les temps de 60% p.r. à un

décodage RS dans CG(28)

Un décodage RS/RS+ dans CG(216) réalise un gain en

performance de 50% p.r. à CG(28).

3 Cases

2 Cases

Récapitulatif

XOR vs. RS

Page 48: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 48

Plan

1. Problématique

2. Etat de l’Art

3. Fondements Thèoriques de LH*RS

4. Le Gestionnaire LH*RS

5. Expérimentations

6. Création d’un Fichier LH*RS

7. Récupération de Cases

8. Ajout de Cases de Parité

Scénario

Performances

Page 49: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 49

Scénario

Groupe Multicast de Cases de Parité

Rejoindre groupe g ?

Recherche d’une Nouvelle Case de Parité

Coordinateur

Page 50: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 50

Scénario (2)

Coordinateur

OK

OK

OK

Lancer Ecoute UDP, Lancer Ecoute TCP, Lancer Threads de

Travail

*Attente Confirmation* Si Time-out expire

Tout annuler

Attente de Réponses …

Groupe Multicast de Cases de Parité

Page 51: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 51

Scénario (3)

Vous êtes Sélectionnée

Confirmé

Annulé

Annulé

Sélection

Groupe Multicast de Cases de Parité

Coordinateur

Page 52: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 52

Demande d’enregistrements ! …

Scénario (4)

Groupe de Cases de Données

Nouvelle Case de Parité

Auto-création *Phase interrogation

Page 53: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 53

Tampons…

Scénario (5)

Groupe de Cases de Données

Traitement T

ampon

Auto-création *Phase de Codage

Nouvelle Case de Parité

Page 54: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 54

Performances

Max Taille Case : 5000 .. 50000 enregs

Taux Remplissage Cases: 62,5%

Taille Enreg: 100 octets

Groupe de 4 Cases de Données

Codage

CG(216)

RS++ ( Pré-calcul du log & la ligne de ‘1’s Trait. tampon 1ére

case de données en XOR)

XOR RS XOR vs. RSConfig.

CG(28)

Page 55: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 55

Performances

Taille Case

Temps Total (sec)

Temps Trait (sec)

Temps Com. (sec)

5000 0.190 0.140 0.029

10000 0.429 0.304 0.066

25000 1.007 0.738 0.144

50000 2.062 1.484 0.322Taille Case: T.Trait 74% T.Total

0.659

0.640

0.686

0,608

Vitesse Codage MO/sec

XOR RS XOR vs. RSConfig.

CG(28)

Page 56: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 56

Performances

Taille Case

Temps Total (sec)

Temps Trait (sec)

Temps Com. (sec)

5000 0.193 0.149 0.035

10000 0.446 0.328 0.059

25000 1.053 0.766 0.153

50000 2.103 1.531 0.3220.673

0.674

0.713

0,618

Vitesse Codage MO/sec

Taille Case: T.Trait 74% T.Total

XOR RS XOR vs. RSConfig.

CG(28)

Page 57: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 57

Performances

Vitesse Codage XOR : 0,660 MO/sec

Vitesse Codage RS: 0,673 MO/sec

XOR réalise un gain en performance de trait.

de 5% (seulement 0,02% sur le temps total)

Pour Taille Case = 50000 enregs.

XOR RS XOR vs. RSConfig.

CG(28)

Page 58: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 58

XOR RS XOR vs. RSConfig.

CG(28)

Performances

Idem que CG(216), le Temps Trait. = ¾ Temps Total

XOR dans CG(28) améliore le temps de trait. de 22%

Page 59: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 59

Conclusion

Les expérimentations ont prouvé que:

Les Optimisations apportées

Codage/décodage

Architecture

Impact sur les Performances

Bonnes Performances de Récupération

Page 60: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 60

Travaux Futurs

Propagation des MAJs vers les cases de parité

Fiabilité

Rapidité

Décharger le Coordinateur

« Parity Declustering »

Recherche de codes + optimisés

Page 61: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 61

Références

[PGK88] D. A. Patterson, G. Gibson & R. H. Katz, A Case for Redundant Arrays of Inexpensive Disks, Proc. of ACM SIGMOD Conf, pp.109-106, June 1988.

[ISI81] Information Sciences Institute, RFC 793: Transmission Control Protocol (TCP) – Specification, Sept. 1981, http://www.faqs.org/rfcs/rfc793.html

[MB 00] D. MacDonal, W. Barkley, MS Windows 2000 TCP/IP Implementation Details, http://secinf.net/info/nt/2000ip/tcpipimp.html

[J88] V. Jacobson, M. J. Karels, Congestion Avoidance and Control, Computer Communication Review, Vol. 18, No 4, pp. 314-329.

[XB99] L. Xu & J. Bruck, X-Code: MDS Array Codes with Optimal Encoding, IEEE Trans. on Information Theory, 45(1), p.272-276, 1999.

[CEG+ 04] P. Corbett, B. English, A. Goel, T. Grcanac, S. Kleiman, J. Leong, S. Sankar, Row-Diagonal Parity for Double Disk Failure Correction, Proc. of the 3rd USENIX –Conf. On File and Storage Technologies, Avril 2004.

[R89] M. O. Rabin, Efficient Dispersal of Information for Security, Load Balancing and Fault Tolerance, Journal of ACM, Vol. 26, N° 2, April 1989, pp. 335-348.

[W91] P.E. White, RAID X tackles design problems with existing design RAID schemes, ECC Technologies, ftp://members.aol.com.mnecctek.ctr1991.pdf

[GRS97] J. C. Gomez, V. Redo, V. S. Sunderam, Efficient Multithreaded User-Space Transport for Network Computing, Design & Test of the TRAP protocol, Journal of Parallel & Distributed Computing, 40 (1) 1997.

Page 62: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

04 Oct. 04 * Présentation de Thèse R. Moussa, U. Paris Dauphine 62

Références (2)

[BK+ 95] J. Blomer, M. Kalfane, R. Karp, M. Karpinski, M. Luby & D. Zuckerman, An XOR-Based Erasure-Resilient Coding Scheme, ICSI Tech. Rep. TR-95-048, 1995.

[LS00] W. Litwin & T. Schwarz, LH*RS: A High-Availability Scalable Distributed

Data Structure using Reed Solomon Codes, p.237-248, Proceedings of the ACM SIGMOD 2000.

[KLR96] J. Karlson, W. Litwin & T. Risch, LH*LH: A Scalable high performance data structure for switched multicomputers, EDBT 96, Springer Verlag.

[RS60] I. Reed & G. Solomon, Polynomial codes over certain Finite Fields, Journal of the society for industrial and applied mathematics, 1960. 

[P97] J. S. Plank, A Tutorial on Reed-Solomon Coding for fault-Tolerance in RAID-like Systems, Software– Practise & Experience, 27(9), Sept. 1997, pp 995- 1012,

[D01] A.W. Diène, Contribution à la Gestion de Structures de Données Distribuées et Scalables, PhD Thesis, Nov. 2001, Université Paris Dauphine.

[B00] F. Sahli Bennour, Contribution à la Gestion de Structures de Données Distribuées et Scalables, PhD Thesis, Juin 2000, Université Paris Dauphine.

+ Références: http://ceria.dauphine.fr/rim/theserim.pdf+ Références: http://ceria.dauphine.fr/rim/theserim.pdf

Page 63: Rim Moussa Rim.Moussa@dauphine.fr  ceria.dauphine.fr/rim/rim.html

Merci de votre Merci de votre AttentionAttention

Questions ?Questions ?