Sharding
24
Partitionnement des données
Le sharding
• Mécanisme de partitionnement horizontal (par tuple)
• Les fichiers sont segmentés en chunks (64 Mo, 256 Mo...)
• Les chunks sont distribués dans le cluster
• Les données sont placées selon une stratégie de sharding
• 3 types de techniques de sharding : 1. HDFS : Allocation de ressources basée (racks,datacenter)
2. Index clusterisé : Structure arborescente (ordre total)
3. DHT : Structure basée sur le hachage
25
SHARDING AVEC HDFS
Stratégie d'allocation des ressources
* Système de fichiers distribué
* Repose sur l'équilibrage de la charge des serveurs
* Dédié à la tolérance aux pannes
* Allocation et optimisation dynamiques de serveurs
26
SHARDING AVEC HDFS : EXEMPLE
27
SHARDING AVEC INDEX CLUSTERISÉ
Index clusterisé distribué
• Données triées selon une clé
* Clé primaire
* Créer des chunks (256 Mo par défaut)
* Distribuer les chunks
* Répliquer les chunks
28
SHARDING AVEC INDEX CLUSTERISÉ:
EXEMPLE
29
SHARDING AVEC DHT
Table de hachage distribuée (DHT)
• Anneau de serveurs virtuels
• Table de hachage unique : divisée et distribuée
• Routage
• Efficacité
• Auto-gestion (pas de serveur principal)
30
SHARDING AVEC DHT: EXEMPLE
31