Les solutions Big data orientées stockage sont de plus en plus nombreuses et commencent à être déployées dans les entreprises. Tout le monde doit-il s’y intéresser ? Comment doit-on les intégrer ?
Quelles sont caractéristiques du Big data ?
Comme son nom l’indique, le Big data définit une catégorie de données. Elle est souvent résumée par les 3 « V » :
- Volume : une quantité de données importante liée à la multiplication des données du client. Les données à manipuler sont de l’ordre de la dizaine de tera octets ;
- Variété : différents types de données provenant de diverses sources (internes SI, externes comme les réseaux sociaux… Ces données vont du plus structuré (relationnel) au non structuré (fichiers, vidéo…) ;
- Vélocité : une fréquence rapide à laquelle les données doivent être traitées et partagées, liée à la volonté de tendre vers un SI « temps réel ».
Comment savoir si l’on manipule des données Big data ?
C’est simple, c’est souvent lorsque l’une des couches du SI devient un facteur limitant lors du traitement de gros volume de données, que l’on comprend qu’il s’agit de Big data.
La couche stockage est l’un des premiers facteurs limitant et les problématiques associées sont les suivantes :
- Performance : l’augmentation du volume à traiter entraîne une diminution des performances ;
- Linéarité : l’outillage n’étant pas adapté aux gros volumes de données, le modèle de scalabilité n’est pas linéaire, l’ajout de stockage ne permettant pas d’améliorer les performances ;
- Dynamisme : l’allocation d’espace est fixe avec une faible réactivité pour en ajouter ou en retirer.
Les solutions du marché reposent sur des implémentations propriétaires.
Les solutions Big data reposent sur un stockage basé sur le modèle de fichier distribué : des nœuds de stockage sont répartis physiquement sur le réseau mais vus par les applications comme un seul volume de stockage logique.
Ce modèle répond justement aux enjeux suivants, auparavant problématiques :
- Performance : les données sont réparties sur plusieurs nœuds de stockage (stripping HADOOP HDFS) et ceux-ci se distribuent intelligemment la donnée afin de diminuer le trafic réseau (les données semblables sur un même nœud) et faciliter des traitements distribués (HADOOP map reduce)
- Linéarité : le modèle distribué permet d’ajouter des nœuds de stockage sans limite et permet de retrouver une scalabilité linéaire ;
- Dynamisme : l’ajout et la suppression de nœud de calcul peuvent se faire simplement et apportent une résilience (via la réplication automatique des données). Si un nœud de stockage tombe, le service est assuré sans arrêt et sans perte de données. On s’approche d’une perte de données « RPO » et d’un temps de reprise « RTO » nulle.
Les solutions du marché (IBM, EMC, etc.) répondent aux 3 « v » du Big data mais chacune suit son propre modèle d’implémentation du stockage distribué : Cluster File System, Parallel File System…. Chaque solution n’a donc pas les mêmes performances ou, capacité d’évolutivité suivant le besoin.
La qualification des données est la clé du stockage
C’est pour cela que lors de la mise en œuvre de ces types de solutions, une étude sur le stockage est nécessaire. Quelles sont mes données ? Quelle est la volumétrie (max, écart-type, moyenne) ? Quelle est leur croissance ? Quels types de traitements sont effectués ? Doivent-elles être centralisées ? Quel est le ratio de lecture / écriture ? …
Toutes ces réponses permettront de catégoriser les données, un entrant primordial à la qualification de la solution cible et à son optimisation. Ainsi l’optimisation des services de stockage Big data permettent à l’entreprise de maîtriser la variabilité et les performances. L’indexation devient plus facile, la taille des caches est optimisée et le stripping (fait de couper le fichier en plusieurs morceaux) est facilité afin de garantir un accès plus rapide à la donnée.
La mise en place d’une technologie stockage distribué est idéale dans les configurations de type grille de calcul : les nœuds de calcul échangent un grand nombre de données entre eux. À la place d’une configuration en étoile où tous les nœuds s’échangent directement des fichiers, chaque nœud utilise un même volume logique hébergé sur une infrastructure Big data. Les gains sont doubles : directement sur les temps de lecture / écriture des données partagées et la charge réseau (bien que plus concentrée sur un segment) et indirectement sur les temps de calculs de la grille. Les nœuds de la grille de calcul étant déchargés de leur fonction de distribution de fichiers vers les autres nœuds, les ressources sont exploitées au maximum par le calcul applicatif. L’applicatif est donc plus performant pour le business.
Les solutions de stockage Big data commencent à être adoptées par les entreprises, qui les utilisent sur leurs périmètres stratégiques pour en tirer des gains de performance là où les solutions standards étaient limitantes. L’intégration de ces solutions reste l’étape clé : l’étude des données est nécessaire pour choisir la bonne implémentation Big data, faciliter sa configuration et ainsi profiter pleinement des bénéfices annoncés.