Máximo de arquivos (práticos) por pasta em um compartilhamento de arquivos do Windows?

Máximo de arquivos (práticos) por pasta em um compartilhamento de arquivos do Windows?

Ofereço suporte a um aplicativo interno que armazena arquivos em um compartilhamento de arquivos do Windows Server 2003 SP2. Devido à forma como está configurado atualmente para armazenar arquivos, uma pasta contém aproximadamente 116.000 arquivos (outra possui aproximadamente 65.000 e as outras pastas possuem menos, mas ainda vários milhares em cada). O aplicativo ficou muito lento para gravar arquivos.

O layout do arquivo é configurável até o existente, então estou tentando criar um plano melhor. Alguém tem alguma experiência sobre quantos itens por pasta o SMB pode manipular antes de começar a ficar inutilizável? Nesse caso, está lento há um bom tempo, mas não começou a ficar insuportável até que a pasta ultrapassasse 100.000 arquivos.

Responder1

Depende mais da largura de banda e da latência (especialmente a latência) do que do número de arquivos e da escala nos algoritmos usados ​​para enumerar o diretório. Não existe um “número mágico”, eu acho, é o que estou dizendo.

O protocolo SMB éhorrívelpor exigir muitas e muitas viagens de ida e volta. Esse número de arquivos, com o dobro da latência, seriamuitosvezes mais que duas vezes mais lento, por exemplo.

Você fez o benchmarking acidentalmente para sua LAN, a latência da infraestrutura de rede e a latência do subsistema IO do computador servidor. Obviamente você encontrou um “número mágico”. Eu reduziria esse diretório até que o desempenho melhorasse. Não há outra maneira!

Responder2

Evan está certo, não existe um número mágico. Depende do aplicativo e do servidor. Atualizar para o servidor 2008 vai ajudar, e é a primeira coisa que eu faria, desde que o cliente seja Vista ou melhor, pois usa SMBv2. Tenho compartilhamentos com 500.000 arquivos que navegam como uma porcaria, mas, como os usuários usam apenas caminhos diretos fornecidos, funcionam bem. No mesmo servidor, tenho compartilhamentos com 100.000 arquivos com os quais os usuários não têm problemas.

Responder3

Parcialmente relacionado:

Pare a 'última atualização de acesso'

Sempre que você acessa uma pasta em uma unidade NTFS, o Windows XP atualiza essa pasta e todas as subpastas com um carimbo de data/hora com a data do último acesso. Às vezes, isso pode diminuir o desempenho do Windows.

Para alterar isso, abra REGEDIT ( Start -> Run -> 'regedit' ) e navegue até HKEY_LOCAL_MACHINES\System\CurrentControlSet\Control\FileSystem

Crie um novo valor DWORD (clique com o botão direito -> novo -> Valor DDWORD) chamado 'NtfsDisableLastAccessUpdate' e defina o valor como '1'

e

Desative convenção de nomenclatura desnecessária

Para cada arquivo criado, o Windows XP usa um nome adicional para compatibilidade com MSDOS: nome de 8 caracteres seguido por “.” e, em seguida, 3 caracteres para a extensão. Se você não pretende usar software somente DOS, isso é desperdício de memória.

Para alterar isso, abra REGEDIT
Navegue até HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\FileSystem

Altere o valor da chave NtfsDisable8dot3NameCreation para '1'

( Tirado dehttp://basiccoms.blogspot.com/2008/08/windows-xp-performance-tweaking-guide.html)

informação relacionada