2010-04-16 3 views
1

Je suis sur le point de créer un site Web basé sur l'utilisateur et devra stocker des photos, des documents et d'autres données pour chaque utilisateur.Structure de répertoire idéale pour l'application web

Si je prends un nombre stupide comme 1 000 000 000 d'utilisateurs, je crois qu'un seul dossier avec 1 000 000 000 ne sera pas le plus rapide au monde! Donc, je pensais à créer quelque chose comme

1er niveau: [az] 2ème niveau: [az] 3ème niveau: [az]

ainsi tous bobby sera/b/o/b/par

Mais cela signifie aussi qu'il ne sera pas réparti equaly, car il y aura très peu utilisateur en commençant par az et beaucoup d'autres avec h, s, l ...

donc je pensais à l'aide d'un utilisateur id tels que "000000000001", "000000000001" etc ...

1er niveau: [000-999] 2ème niveau: [000-999] 3ème niveau: [000-999]

donc les données de l'utilisateur 000000000001 seront stockées dans/data/000/000/000/001 alors je serai sûr d'avoir un maximum de 1000 dossiers dans chaque niveau. Qu'est-ce que vous en pensez, ce que je devrais faire ou ne pas faire?

Le serveur sera en cours d'exécution CentOS 5.4 avec EXT3 sur RAID 1, si l'E/S get est trop mauvais je vais probablement aller pour un raid 10.

Répondre

Questions connexes