Forum Linux.débutant La quantité de fichier par dossier est-elle limitée?

Posté par  .
Étiquettes : aucune
0
19
août
2005
Bonjour,

Ds le cadre d'un développement d'une db, je dois créer un dossier où seront stocké des fichiers images de +/- 20ko.

la db est assez grande et pourrait contenir près de 10.000.000 de photos. après les avoir triées par catégories je devrai obtenir plusieurs dossiers de +/- 60.000 photos.

Le système linux peut-il supporter un nombre aussi grand de fichier par dossier?
ce nombre peut-il avoir une influence sur la vitesse des requêtes http?

Merci
  • # Il suffit de tester

    Posté par  . Évalué à 2.

    60000 photos ? Je teste donc sur 80000...
    (Système en reiserfs sur du LVM2)
    Voici mon script python :
    import os
    for i in range(80000): os.system("cp base.png %i.png" % i)

    C'est tout de même assez long à copier.. :) Je donnerai le résultat quand je l'aurai
    • [^] # Re: Il suffit de tester

      Posté par  . Évalué à 2.

      Oui, ça marche
      (désolé pour le lag, j'ai eu un orage donc j'ai préféré couper la machine)
      Et en plus konqueror arrive à survivre à ce dossier !
    • [^] # Re: Il suffit de tester

      Posté par  . Évalué à 4.

      A mon avis ça devrait passer sans trop de problème.

      Attention toutefois à bien choisir son sytème de fichier pour ne pas avoir des performances qui se dégradent (en particulier si on fait un ls dans le répertoire ...) : par exemple reiserfs est certainement plus adapté à ce type d'utilisation que ext2/ext3.
      Pour l'accès à un fichier particulier, dont on connaît ke nom, il ne devrait pas il y avoir de soucis.

      En revanche, je ne sais pas ce que cela pourrait donner si l'on parcourt le répertoire avec un gestionnaire de fichiers graphique (nautilus, konquerror, ...) : là ça rique d'être plus problématique, surtout s'il faut afficher des vignettes !
      • [^] # Re: Il suffit de tester

        Posté par  . Évalué à 1.

        eh eh, non, pas de risque d'exploser konqueror, c'est pour placer sur un serveur web. :)
  • # /etc/security/limits.conf

    Posté par  . Évalué à 3.

    Il n'y a pas de limite pour le nombre de fichier par dossier.

    Il y a des limites pour la taille des fichiers, le nombre de fichiers ouverts, etc.
    On peut changer ces limites dans le fichier /etc/security/limits.conf (en root)
    • [^] # Re: /etc/security/limits.conf

      Posté par  . Évalué à 3.

      Il faut simplement noter qu'il existe sur certains système de fichiers (comme ext2/ext3) une limite au nombre d'inodes (et donc de fichiers). Cette limite est fixée au moment de la création (formatage) du FS et n'est pas modifiable après coup. On peut la voir avec "df -i".

      J'ai déjà rencontré le problème, sous AIX, de partitions sur lesquelles il restait de l'espace disque libre mais sans possibilité de créer de nouveaux fichiers parce qu'il n' y avait plus d'inodes libres (il y avait des répertoires avec beaucoup de petits fichiers).

      Dans la problématique de cv_freex il faut prendre en compte ce paramètre, en particulier s'il y a plusieurs répertoires avec quelques dizaines de miliers de fichiers sur la même partition (chez moi, sur un FS ext3 de 1.5GO, formaté avec les options par défaut, il y a 175872 fichiers possibles)
      • [^] # Re: /etc/security/limits.conf

        Posté par  . Évalué à 1.

        aie, faudra que je vérifie ça alors.

        le problème est que tt doit se trouver sur un serveur web :(
        dans ce cas, j'abandonne d'ore at déjà le hébergement mutualisé.
  • # Sous Linux je sais pas ...

    Posté par  . Évalué à 0.

    mais sous Windows 2000, dès qu'il y a plus de 1000 fichiers dans un répertoire l'explorateur perd les pédales.

    Quand les 1000 fichiers sont des fichiers temporaires de Word, ce dernier perd aussi méchamment les pédales (c'est du vécu).

    BeOS le faisait il y a 20 ans !

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.