OVH Cloud OVH Cloud

Limite raisonable du nombre de fichiers dans un repertoire

4 réponses
Avatar
Remi Thomas - MVP
Bonjour,

Pour une partition NTFS qu'elle est la limite raisonable du nombre de
fichier dans un répertoire ?
En effet quand on dépasse environ 12000 fichiers le système semble ralentir
pas mal dès que l'on accède à un dossier avec trop de fichiers.
Existe t-il un chiffre quelque part ? Impossible de le trouver.

Rémi


--
Rémi Thomas - MVP .NET C++
Développeur Windows indépendant
http://www.xtware.com/cv

4 réponses

Avatar
Stéphane [MS]
Bonjour,

En dehors de la racine, la limite théorique est assez élevée pour
correspondre à la plupart des besoins. Les limitations pratiques sont plutôt
relatives à la profondeur d'une arborescence.

Avez-vous pensé à quelques optimisations comme :
Dans HKLMSYSTEMCurrentControlSetControlFileSystem
La clé NtfsDisableLastAccessUpdate peut être rajoutée de manière à ne pas
mettre à jour la date de dernier accès.
La clé NtfsDisable8dot3NameCreation permet de ne pas maintenir une table des
noms à 8 plus 3 caractères

Cdlt
Stéphane

"Remi Thomas - MVP" a écrit dans le message de news:

Bonjour,

Pour une partition NTFS qu'elle est la limite raisonable du nombre de
fichier dans un répertoire ?
En effet quand on dépasse environ 12000 fichiers le système semble
ralentir
pas mal dès que l'on accède à un dossier avec trop de fichiers.
Existe t-il un chiffre quelque part ? Impossible de le trouver.

Rémi


--
Rémi Thomas - MVP .NET C++
Développeur Windows indépendant
http://www.xtware.com/cv




Avatar
Smain
Salut

Un répertoire NTFS n'a pas vraiment une limite de storage. 12.000 fichier
dans un répertoire NTFS n'est pas vraiement grand'chose. Bien sûr, le
storage est proportionnel au volume du disk. Toutefois, si le nombre de
fichiers dans un répertoire dépasse les 300.000, là j'insiste à ce que vous
utilisiez l'utilitaire "fsutil" pour désactiver 8.3 filename à l'aide de
"disable8dot3", comme Stéphane l'a si bien dit, ou aller directement à la
clef suivante:

HKLMSYSTEMCurrentControlSetControlFileSystemNtfsDisable8dot3NameCreation.

Cela dit, ce paramétrage peut être aussi utilisé même si vous êtes à 12.000
fichiers dans un répertoire. Il vous faut également maintenir les noms des
fichiers uniques, particulièrement le début de leurs nom. Par exemple, dans
un répertoire dépassant les 1.000 fichiers, assurez-vous que leurs noms ne
soient pas créés de cette façcon: Fich0001.txt, Fich0002.txt, Fich0003.txt,
Fich0004.txt, etc. La meilleure pratique est de ne pas mettre un nombre
large de fichiers dans un répertoire. S'il est structurellement possible de
séparer les 12.000 fichiers vers quelques répertoires, essayez de le faire
dès maintenant.

Good luck

Smain

"Remi Thomas - MVP" wrote in message
news:
Bonjour,

Pour une partition NTFS qu'elle est la limite raisonable du nombre de
fichier dans un répertoire ?
En effet quand on dépasse environ 12000 fichiers le système semble ralentir
pas mal dès que l'on accède à un dossier avec trop de fichiers.
Existe t-il un chiffre quelque part ? Impossible de le trouver.

Rémi


--
Rémi Thomas - MVP .NET C++
Développeur Windows indépendant
http://www.xtware.com/cv
Avatar
Jacques Barathon [MS]
Il y a quand même une limite à l'usage qui est liée à l'Explorateur Windows
sur le poste client. Celui-ci se met à pédaler furieusement dès que qu'on
atteint la dizaine de milliers d'objets dans un répertoire, quel que soit le
type du système de fichier et que le volume soit local ou distant...

Si le dossier est partagé, ce problème survient sur le poste client, pas sur
le serveur lui-même.

Jacques

"Smain" wrote in message
news:
Salut

Un répertoire NTFS n'a pas vraiment une limite de storage. 12.000 fichier
dans un répertoire NTFS n'est pas vraiement grand'chose. Bien sûr, le
storage est proportionnel au volume du disk. Toutefois, si le nombre de
fichiers dans un répertoire dépasse les 300.000, là j'insiste à ce que
vous
utilisiez l'utilitaire "fsutil" pour désactiver 8.3 filename à l'aide de
"disable8dot3", comme Stéphane l'a si bien dit, ou aller directement à la
clef suivante:

HKLMSYSTEMCurrentControlSetControlFileSystemNtfsDisable8dot3NameCreation.

Cela dit, ce paramétrage peut être aussi utilisé même si vous êtes à
12.000
fichiers dans un répertoire. Il vous faut également maintenir les noms
des
fichiers uniques, particulièrement le début de leurs nom. Par exemple,
dans
un répertoire dépassant les 1.000 fichiers, assurez-vous que leurs noms ne
soient pas créés de cette façcon: Fich0001.txt, Fich0002.txt,
Fich0003.txt,
Fich0004.txt, etc. La meilleure pratique est de ne pas mettre un nombre
large de fichiers dans un répertoire. S'il est structurellement possible
de
séparer les 12.000 fichiers vers quelques répertoires, essayez de le faire
dès maintenant.

Good luck

Smain


Avatar
Smain
Salut Jacques et merci pour votre input.

Tout à fait d'accord que lorqu'un répertoire est bourré de... je dirais même
de quelques milliers de fichiers, la performance se dégrade dramatiquement.
Mais en termes de limite (l'objet de la question de Remi), un répertoire n'a
pas de limite de storage des fichiers. C'est cette différence que,
peut-être, je n'ai pas bien expliqué dans mon posting. Vous l'avez
complété.

J'ai omis aussi, par inadvertance, de préciser que le chiffre de 300.000
fichiers dans un repertoire - mentionné dans mon posting -, est un chiffre
de Microsoft que j'ai lu dans un livre MS "Windows XP - File Systems". Un
autre document MS dit: «dont't place more than 250,000 files in a single
directory (PAS UN RÉPERTOIRE), and if possible reduce that limit to 100,000.
Unless absolutely necessary, disable 8.3 filenames.» Cela peut expliquer
«la limite à l'usage qui est liée à l'Explorateur Windows», comme vous le
dites.

Cordialement

Smain

========
"Jacques Barathon [MS]" wrote in message ...

Il y a quand même une limite à l'usage qui est liée à l'Explorateur Windows
sur le poste client. Celui-ci se met à pédaler furieusement dès que qu'on
atteint la dizaine de milliers d'objets dans un répertoire, quel que soit le
type du système de fichier et que le volume soit local ou distant...

Si le dossier est partagé, ce problème survient sur le poste client, pas sur
le serveur lui-même.

Jacques

"Smain" wrote in message
news:
Salut

Un répertoire NTFS n'a pas vraiment une limite de storage. 12.000 fichier
dans un répertoire NTFS n'est pas vraiement grand'chose. Bien sûr, le
storage est proportionnel au volume du disk. Toutefois, si le nombre de
fichiers dans un répertoire dépasse les 300.000, là j'insiste à ce que
vous
utilisiez l'utilitaire "fsutil" pour désactiver 8.3 filename à l'aide de
"disable8dot3", comme Stéphane l'a si bien dit, ou aller directement à la
clef suivante:

HKLMSYSTEMCurrentControlSetControlFileSystemNtfsDisable8dot3NameCreation.

Cela dit, ce paramétrage peut être aussi utilisé même si vous êtes à
12.000
fichiers dans un répertoire. Il vous faut également maintenir les noms
des
fichiers uniques, particulièrement le début de leurs nom. Par exemple,
dans
un répertoire dépassant les 1.000 fichiers, assurez-vous que leurs noms ne
soient pas créés de cette façcon: Fich0001.txt, Fich0002.txt,
Fich0003.txt,
Fich0004.txt, etc. La meilleure pratique est de ne pas mettre un nombre
large de fichiers dans un répertoire. S'il est structurellement possible
de
séparer les 12.000 fichiers vers quelques répertoires, essayez de le faire
dès maintenant.

Good luck

Smain