Aqui estão alguns conselhos de alguém com um ambiente em que temos pastas contendo dezenas de milhões de arquivos.
- Uma pasta armazena as informações do índice (links para arquivos filho e pasta filho) em um arquivo de índice. Este arquivo ficará muito grande quando você tiver muitos filhos. Observe que ele não faz distinção entre um filho que é uma pasta e um filho que é um arquivo. A única diferença realmente é que o conteúdo desse filho é o índice de pastas do filho ou os dados do arquivo do filho. Nota: Estou simplificando isso um pouco, mas isso explica o ponto.
- O arquivo de índice será fragmentado. Quando estiver muito fragmentado, você não poderá adicionar arquivos a essa pasta. Isso ocorre porque há um limite no número de fragmentos permitido. É por design. Confirmei com a Microsoft em uma chamada de incidente de suporte. Portanto, embora o limite teórico para o número de arquivos que você possa ter em uma pasta seja de vários bilhões, boa sorte quando você começar a atingir dezenas de milhões de arquivos, pois atingirá primeiro a limitação de fragmentação.
- Não é tão ruim assim. Você pode usar a ferramenta: contig.exe para desfragmentar esse índice. Não reduzirá o tamanho do índice (que pode atingir vários Gigs por dezenas de milhões de arquivos), mas você pode reduzir o número de fragmentos. Nota: A ferramenta Desfragmentar disco NÃO desfragmentará o índice da pasta. Irá desfragmentar os dados do arquivo. Somente a ferramenta contig.exe desfragmentará o índice. FYI: Você também pode usá-lo para desfragmentar os dados de um arquivo individual.
- Se você desfragmentar, não espere até atingir o número máximo de limites de fragmentos. Eu tenho uma pasta onde não posso desfragmentar porque esperei até que seja tarde demais. Meu próximo teste é tentar mover alguns arquivos dessa pasta para outra pasta para ver se eu poderia desfragmentá-lo. Se isso falhar, o que eu teria que fazer é 1) criar uma nova pasta. 2) mova um lote de arquivos para a nova pasta. 3) desfragmentar a nova pasta. repita # 2 e # 3 até que isso seja feito e, em seguida, 4) remova a pasta antiga e renomeie a nova pasta para corresponder à antiga.
Para responder sua pergunta mais diretamente: Se você estiver vendo 100 mil entradas, não se preocupe. Vá nocautear. Se você estiver vendo dezenas de milhões de entradas, então:
a) Faça planos para subdividi-los em subpastas (por exemplo, digamos que você tenha arquivos 100M. É melhor armazená-los em 1000 pastas para que você tenha apenas 100.000 arquivos por pasta do que armazená-los em uma pasta grande. criará 1000 índices de pastas em vez de um único grande, com maior probabilidade de atingir o número máximo de fragmentos ou
b) Faça planos para executar contig.exe regularmente para manter o índice da sua grande pasta desfragmentado.
Leia abaixo apenas se você estiver entediado.
O limite real não está no número de fragmento, mas no número de registros do segmento de dados que armazena os ponteiros no fragmento.
Então, o que você tem é um segmento de dados que armazena ponteiros para os fragmentos dos dados do diretório. Os dados do diretório armazenam informações sobre os subdiretórios e subarquivos que o diretório supostamente armazenou. Na verdade, um diretório não "armazena" nada. É apenas um recurso de rastreamento e apresentação que apresenta a ilusão de hierarquia ao usuário, pois o próprio meio de armazenamento é linear.