Question

Est-ce une bonne idée de stocker des fichiers vidéo dans une base de données sous forme d'objets BLOB ou les stocker sur un disque physique.

Ceci est un site similaire à YouTube, où les utilisateurs peuvent télécharger leur vidéo et de les voir

Base de données Mysql serait

Quelle option est meilleure et pourquoi

Merci

Était-ce utile?

La solution

MySQL Pro: - Le blob peut être soumis à des clés étrangères et gardant ainsi la redondance de base de données, par opposition à la sauvegarde du système de fichiers. Dans ce cas, vous devez programmer la suppression du fichier. -. Autorisations utilisateur à grain fin

Con: - MySQL ne fonctionne pas gratuitement, il est livré avec des frais généraux par opposition à la portion du système de fichiers. - Webservers ne peut servir directement à partir de la base de données BLOB. Cela signifie que PHP devra servir de médiateur du processus. Lorsque le blob se charge de MySQL en PHP, l'utilisation de la mémoire sera atleast aussi grand que le blob. Donc, dans votre cas où les fichiers pourraient être en cours d'exécution dans les centaines de Mo de cela mis à rude épreuve énorme sur le serveur Web.

Dans toute la réalité MySQL est ment pas être utilisé pour enregistrer des fichiers. Blobs sont principalement utilisés pour sauver ammounts de Lare de données sérialisé comme les caches.

Autres conseils

J'utilise NFS pour stocker du contenu multimédia à partir d'environ 5 ans sans problème sur la perspective de stockage. La manipulation, le codage et l'enregistrement sont gérés via ffmpeg, scripts php et tâches cron. métadonnées vidéo sont stockées dans une base de données MySql et diffusion sur le Web est fourni via Nginx (via un montage en lecture seule NFS). Les fichiers vidéo taille jusqu'à 2 Go dans cet environnement. Probablement que je peux aller plus vite sur un autre moteur db mais les déchets en temps réel est en raison du processus de codage et non pas pour l'enregistrement des fichiers.

Quand je sauve des milliers de petites images (comme les avatars) je jamais utiliser MySql juste pour stocker des fichiers de métadonnées (chemin d'image et d'autres propriétés) et de ne pas enregistrer le fichier dans un champ blob qui peut ralentir le db trop sur requêtes lourdes.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top