1

Je veux créer un petit système de gestion de documents. Il y a plusieurs utilisateurs qui stockent leurs fichiers. Chaque fichier téléchargé contient des informations sur l'utilisateur qui l'a téléchargé et le contenu du document lui-même. Dans une vue, tous les fichiers d'un utilisateur spécifique seront affichés, classés par date.Question générale: Système de fichiers ou base de données?

Quoi de mieux:

  1. donnant les documents un nom ou métadonnées (XML) qui contiennent la date et l'utilisateur (et itérer eux pour obtenir les métadonnées) ou ...

  2. attribuant aux fichiers un nom aléatoire/unique et stockant des métadonnées dans une base de données? quelque chose comme ceci:

    date | user | filename 
    

Que diriez-vous et pourquoi? Le langage de programmation utilisé est Java et le DB est MySQL.

Répondre

3

Je choisirais le DB. Les bases de données sont plus rapides, plus sûres (vous ne supprimez pas accidentellement les fichiers importants) et plus faciles. Aussi, c'est le but d'une base de données: gérer de grandes quantités de données. Les systèmes de fichiers servent à stocker les fichiers.

Mais le choix est bien sûr pour vous.

Mais je garantis: (DB > XML) == true en performance, et (DB >= XML) == false en taille de fichier!

+0

salut, merci pour votre réponse rapide! vous avez renforcé ma tendance à choisir le DB :) Y at-il un point qui recommande la 1ère solution? – poeschlorn

+0

Eh bien, MySQL nécessite l'installation d'un logiciel. Les bibliothèques XML comme libxml peuvent simplement être liées à votre programme. Je ne suis pas un expert Java, donc je ne sais pas si Java supporte XML par défaut. –

+0

WWWWWWWWWWWWWWWWWWWWWWW, vous savez que vous pouvez modifier votre profil et modifier votre "nom d'affichage" à tout moment (en supprimant éventuellement quelques-uns des W supplémentaires). –

3

Je choisirais la deuxième option pour le stockage des métadonnées. MySQL gère la concurence, et la recherche dans la base de données est beaucoup plus rapide que l'itération d'un fichier XML.

0

Donc, ce qui serait, si la quantité de données est très faible, disons max. 30 fichiers par utilisateur, disons 20 utilisateurs -> 600 fichiers maximum. Comment jugeriez-vous la solution pour créer un dossier séparé pour chaque utilisateur et donner aux fichiers un nom unique dépendant de l'utilisateur? Ainsi, vous pouvez naviguer facilement dans le système de fichiers. dans ce contexte, un DB aurait-il un sens pour cette faible quantité de documents?

Questions connexes