The 2008-11-06 at 22:05 by Loïc d'Anterroches filed under Pluf - Framework en PHP5.
Dans une de mes applications, je dois stocker du texte de manière importante tout en n’ayant pas le besoin de faire des recherches SQL dedans. En pratique, ce sont des emails générés automatiquement par le service. En regardant le volume dans ma base, je me suis dit : Pourquoi ne pas stocker l’information de manière compressée dans la base ?
J’ai donc ajouté un nouveau type de champ pour un modèle Pluf_Model, le champ est Pluf_DB_Field_Compressed. L’implémentation est très simple :
Sans compter les tests unitaires, cela représente que 12 lignes de code. Maintenant, vous comprenez pourquoi je dis que Pluf est un framework léger et rapide. Pour l’utiliser dans votre modèle, au lieu d’utiliser un champ Pluf_DB_Field_Text, vous utilisez simplement Pluf_DB_Field_Compressed. Regardez le test unitaire pour voir la simplicité d’utilisation. En pratique, cela divise la taille de l’information par 2 pour des textes genre emails.
Les fonctions PHP utilisées pour faire la compression/décompression des données sont gzdeflate et gzinflate.
Comments from readers