QFS est disponible en téléchargement gratuit.
Consultez notre référentiel sur GitHub

Pour en savoir plus sur QFS et son historique,
téléchargez notre fiche technique.

Faire bon usage du Big Data est complexe et cher.

Le Big Data demande un espace de stockage important, en données informatiques, en alimentation électrique et en superficie pour faire fonctionner et refroidir les machines, sans compter le personnel et les ressources nécessaires. Toute organisation travaillant avec de grosses infrastructures de données de production vous le confirmera : les coûts associés peuvent vite monter en flèche. Il est donc essentiel d’être efficace.

Présentation de QFS 1.0

Développé par Quantcast et mis aujourd’hui à la disposition de la communauté open source, le Quantcast File System (QFS) est une solution alternative au Hadoop Distributed File System (HDFS) pour le traitement des données à grande échelle. Il s’agit d’un système de fichiers distribué renforcé, 100 % open-source, entièrement intégré avec Hadoop et qui offre des performances nettement supérieures tout en consommant 50 % de moins d’espace disque.

Pourquoi Open Source ?

Les systèmes de fichiers sont des infrastructures cruciales qui se doivent d’être robustes. Nous sommes convaincus que l’attention et la collaboration étroites que peut nous apporter la communauté open-source sont le meilleur moyen de faire avancer QFS, tout en offrant un avantage majeur aux organisations qui l’adoptent.

Nous accueillons avec plaisir vos questions, vos commentaires et vos contributions au projet QFS et nous serons heureux de voir cette collaboration se poursuivre pour que notre système continue d’évoluer. Nous intégrerons toutes modifications dans GitHub et nous diffuserons régulièrement de nouvelles versions.

Plus de puissance de traitement — Moins de matériel

Réduire les besoins d’espace de stockage permet de diminuer le nombre de disques durs à acheter et à alimenter. En augmentant les débits de données, on multiplie aussi la puissance et on obtient de meilleurs résultats. C’est précisément dans cet objectif que nous avons conçu QFS.

Caractéristiques clés de QFS
  • Correction d’erreurs / Reed-Solomon (RS). Sur de larges clusters de machines, les postes inaccessibles et les disques durs en panne sont fréquents. Il est donc essentiel de pouvoir fonctionner même lorsque des données manquent. HDFS utilise une triple réplication, qui multiplie par trois les volumes de données. En exploitant la même technique de correction des erreurs que celle qu’utilisent les CD et les DVD, QFS n’utilise en revanche que la moitié de cet espace disque, ce qui permet d’offrir de meilleures capacités de récupération avec un facteur d’expansion de 1,5 seulement.
  • Un meilleur débit en écriture. Réduire le codage de données ne permet pas seulement d’économiser de l’espace disque. Cela diminue également la quantité de données à écrire. Puisque chaque tâche effectuée sur QFS n’écrit que la moitié des données physiques, elle pèse deux fois moins lourd sur le cluster. Les travaux d’écriture se font plus vite et un plus grand nombre peut être exécuté simultanément.
  • Des lectures plus rapides. Dans un cluster, le composant le plus lent est le disque dur, avec une vitesse de lecture maximale d’environ 50 Mo/s. HDFS lit chaque bloc de données sur un même disque et se trouve donc limité par la vitesse de ce périphérique. QFS lit chaque bloc en parallèle sur six disques, ce qui lui permet d’atteindre une vitesse théorique de 300 Mo/s. Le gain de temps en situation réelle est considérable.
  • Direct I/O. Le moyen le plus rapide pour lire les données d’un disque (ou pour écrire des données dessus), est d’utiliser de larges séquences. Les API normales I/O de fichiers permettent au système d’exploitation de mettre des données en mémoire tampon et d’échanger du temps disque entre différents processus. Or, cela fragmente ces grandes séquences en petits paquets inefficaces, alors que leur efficacité repose justement sur leur taille. QFS utilise plutôt des API de bas niveau qui lui offrent un meilleur contrôle pour pouvoir garantir à tout moment un accès optimal aux disques.
  • Mémoire fixe. QFS est écrit en C++ et gère soigneusement sa propre mémoire en veillant à ne pas dépasser une consommation d’espace fixe. Les opérations sont donc plus rapides, car elles ne sont pas interrompues par la collecte de données corrompues. C’est également un voisin peu encombrant pour les autres processus qui s’exécutent sur la même machine, puisqu’il ne demande jamais davantage de mémoire à l’OS pour ne pas l’obliger à multiplier les échanges de page et intensifier l’activité des disques durs. La gestion de la mémoire par QFS garantit par ailleurs la qualité des performances et la simplicité de l’administration.
  • Une fiabilité qui a fait ses preuves. La fiabilité est une qualité essentielle pour un système de fichiers. On ne l’obtient qu’en y consacrant du temps et des efforts dans un environnement suffisamment exigeant. Les demandes de traitement des données par Quantcast ont connu une croissance régulière, parallèle à celle de l’entreprise. Nous recevons plus de 40 téraoctets chaque jour et notre traitement MapReduce quotidien peut dépasser les 20 pétaoctets.