Beaucoup d'options et de si peu de temps de toutes les tester... je me demande si quelqu'un a des expériences avec des systèmes de fichiers distribués pour le streaming vidéo et le stockage/l'encodage.
J'ai beaucoup d'énormes fichiers vidéo (50 GO à 250 go) que j'ai besoin de stocker quelque part, être capable d'encoder en mp4 et de les diffuser à partir de plusieurs Adobe FMS serveurs. La seule façon de gérer tout cela est avec un système de fichiers distribué, mais maintenant, la question est lequel??
Mes recherches me dit:
- Lustre: mature solution éprouvée, utilisée par beaucoup de grandes entreprises, meilleur >10G de fichiers est un pilote de noyau.
- Gluster: de nouveaux, moins mature, le FUSIBLE qui signifie facile à installer, mais peut-être plus lent en raison de FUSIBLE de surcharge. Mieux à gérer un grand nombre de petits fichiers ~1 GO
- MogileFS: il semble que pour des petits fichiers ~MO, utilise HTTP pour l'accès?? possible FUSIBLE de liaison à l'avenir.
Jusqu'à présent Lustre semble le gagnant, mais je voudrais entendre les expériences réelles pour l'application particulière que j'ai.
Aussi Hadoop, Redhat GFS, Coda et Windows DFS son comme une des options de toutes les expériences sont les bienvenus. Si quelqu'un a des repères s'il vous plaît partager.
Après une certaine expérience réelle, c'est ce que j'ai appris:
- Éclat:
- Performances: vitesse extraordinaire! Je peux affirmer que le Lustre peut servir à beaucoup de cours d'eau et que la vitesse d'encodage n'est pas affecté par l'accès aux fichiers via le Lustre.
- POXIS compatibilité: Très bon!. Pas besoin de modifier les applications à utiliser le lustre.
- La réplication, l'Équilibrage de la Charge et de basculement: Très mauvais!. Pour la réplication de charge l'équilibrage de nous et ne parviennent pas plus nous devons nous appuyer sur d'autres logiciels comme virtual IPs et DRDB.
- Installation: Le pire!. Impossible à installer, par de simples mortels. Nécessite une très combinaison spécifique de noyau, l'éclat des correctifs et des améliorations de le faire fonctionner. Et actuelle lustre patchs pour habitude de travailler avec les anciens noyaux, qui sont incompatibles avec nouveau matériel/logiciel.
- MogileFS:
- Performance: Bon pour les petits fichiers, mais pas utilisable pour les moyennes et les gros fichiers. C'est principalement en raison de HTTP généraux, puisque tous les fichiers sont à envoyer/recevoir via des requêtes HTTP qui encoder toutes les données de la base64 l'ajout d'un 33% de frais généraux pour chaque fichier.
- POXIX de compatibilité, est inexistante. Toutes les applications nécessitent d'être modifiés pour utiliser la mogilefs qui le rend inutilisable pour streaming/encodage puisque la plupart des serveurs de diffusion en continu et des outils d'encodage ne comprends pas MogileFS protocole.
- La réplication et de basculement et d'équilibrage de charge peut être mis en œuvre dans le application en accédant à plus d'un suiveur à un moment.
- L'Installation est relativement facile et prêt à utiliser des packages existent dans la plupart des distributions.
La seule difficulté que j'ai trouvé était de réglage de la base de données maître-esclave pour éliminer la
point de défaillance unique.
- Gluster:
- Performance: Très mauvais pour le streaming. Je ne peux pas atteindre plus de quelques Mbit / s à 10 gbit / s réseau. Les Clients et le Serveur CPU monte en flèche sur les lourds écrit. Pour l'encodage fonctionne parce que le CPU est saturé avant que le réseau et les I/O.
- POXIS: Presque compatible. Les outils que j'utilise peuvent accéder à gluster monte comme normal dossiers dans disque mais dans certains cas limites, les choses commencent à l'origine des problèmes. Vérifier gluster les listes de diffusion et vous verrez il y a beaucoup de problèmes.
- La réplication, de Basculement et d'équilibrage de la Charge: c'est Le meilleur! si fait, ils ont travaillé. Gluster est tout nouveau et il a beaucoup de bugs et de problèmes de performances.
- L'Installation est trop facile. La gestion de la ligne de commande est incroyable et réglage répliqué, rayée et des volumes distribués entre plusieurs serveurs peuvent pas être plus facile.
Conclusion finale:
Malheureusement, la conclusion est "Pas de solution miracle".
Actuellement, nous avons nos fichiers multimédias dans Gluster3.2 dans un répliquées volume de stockage et de transcodage. Tant que vous n'avez pas beaucoup de serveurs, d'éviter la géo-réplication et de la bande des volumes choses fonctionnent bien.
Quand nous allons diffuser le contenu multimédia de fichiers nous de les copier sur un lustre de volume qui est répliqué sur un deuxième éclat de volume par DR:DB. Le serveur wowza puis de lire les fichiers multimédia à partir de l'éclat des volumes.
Et enfin, nous utilisons MogileFS pour servir les vignettes dans nos serveurs d'applications web.