Green Patterns : Un librairie d’analyse de données open-source 100x plus rapide que les autres
Les bases de données sont omniprésentes dans notre monde (fichiers, pages web, données scientifiques…). Ces bases sont d’autant plus importantes que le nombre de données qu’elles contiennent explosent. Sans compter la problématique d’espace mémoire : un des principaux défis pour la gestion de ces bases est le temps de traitement. La recherche dans ces bases peut prendre plusieurs secondes jusqu’à plusieurs heures pour des données scientifiques. Les impacts sont alors nombreux : augmentation de la consommation (coté client et côté serveur), demande croissante en matériel…
Une équipe du Lawrence Berkeley National Laboratory (LBNL)a développé un moteur de recherche, pour des bases de données scientifiques, qui tente de répondre à ce problème : Fastbit.
Ce moteur de recherche est open-source et s’inscrit dans le mouvement NoSql. Ce moteur permet l’analyse et la recherche de données et cela sans que la base soit sous le contrôle de Fastbit. Cette base a été utilisée dans plusieurs projet : recherche nucléaire, recherche de médicaments, Yahoo!…
C’est un très bon exemple de recherche autour des green patterns. Parmi ces green patterns, on peut noter :
- Utilisation de l’indexation Bitmap plutôt que Three. La plupart des bases de données sont organisées en arbre (pour résumer). L’indexation en bitmap (Codage des indexes en 0 et 1) est plus efficace pour des recherches de données scientifiques. Explication du bitmap par l’équipe LBNL ici.L’avantage d’une telle technique est d’éviter un gaspillage d’espace par rapport à des indexations type arbre.
- Compression de l’index par une nouvelle méthode. L’équipe s’est inspirée de la méthode BCC (byte-aligned bitmap code). Le désavantage de cette méthode est de demander au PC de travailler sur des octets (8 bits) alors qu’il travaille plutôt sur 32 bits. Le LBNL a donc conçu une nouvelle méthode basée sur l’alignement sur des words (32 bits) : Word-Aligned Hybrid Compression (WAH). L’espace nécessaire est un peu plus grand mais cela permet un traitement jusqu’à 100 fois plus rapide que d’autres méthodes.
Source : Fastbit
Explication détaillée : DOE
Explication par l’équipe de la compression : PPT