Qual é a taxa de transferência máxima teórica de transferência de dados do NTFS?

28

Recentemente, eu estava em uma reunião de grupo de usuários local em que o apresentador observou que a taxa de transferência máxima da pilha de E / S NTFS era de 1 GBps. Ele fundamentou sua alegação copiando simultaneamente dois arquivos grandes do mesmo volume lógico para diferentes volumes lógicos (ou seja, [a] é a fonte, [b] é o destino 1 e [c] é o destino 2) e observando as taxas de transferência em torno de 500 MBps. Ele repetiu esse teste algumas vezes e observou que o subsistema de armazenamento subjacente estava flash (para garantir que não suspeitássemos armazenamento lento).

Eu tenho tentado verificar esta afirmação, mas não consigo encontrar nada documentado. Suspeito que estou procurando os termos de pesquisa incorretos ("1GBps NTFS throughput", "NTFS throughput maximum"). Estou interessado em saber se a pilha de E / S está realmente limitada à taxa de transferência de 1 GBps.

EDITAR

Para esclarecer: não acredito que o apresentador pretenda sugerir que o NTFS tenha sido intencionalmente limitado (e desculpe se eu o impliquei também). Eu acho que estava implícito que era uma função do design do sistema de arquivos.

swasheck
fonte
1 GB / s é bem rápido, mesmo em drives flash
TheFiddlerWins
2
@TheFiddlerWins 1 GB / s! = 1 Gbps
Kermit
1
Eu concordo, mas a pergunta diz: "... o máximo rendimento da pilha NTFS IO foi de 1 Gbps", tanto quanto eu sei B = bytes e B = pedaços
TheFiddlerWins
1
Experiência simples - copiar o arquivo nos discos RAM? Não é difícil obter 16 * 2 = 32 GB de RAM atualmente.
precisa saber é o seguinte
1
JamesRyan - usar o FTP como mecanismo de transferência não altera repentinamente o sistema de arquivos. Não confunda SMB com NTFS.
precisa saber é

Respostas:

36

Mesmo assumindo que você quis dizer GBpse não Gbps...

Não conheço nenhum sistema de arquivos que tenha um real throughput limit. Os sistemas de arquivos são simplesmente estruturas sobre como armazenar e recuperar arquivos. Eles usam metadados, estrutura, convenções de nomenclatura, convenções de segurança, etc., mas as limitações reais da taxa de transferência são definidas pelo próprio hardware subjacente (geralmente uma combinação de muito hardware envolvido).

É possível comparar diferentes sistemas de arquivos e como eles afetam o desempenho do hardware subjacente, mas novamente isso não é uma limitação imposta diretamente pelo sistema de arquivos, mas mais uma "variável" no desempenho geral do sistema.

A escolha de implantar um sistema de arquivos em detrimento de outro geralmente está relacionada ao que é o SO subjacente, ao servidor / aplicativo, ao hardware subjacente e a fatores leves , como as áreas de especialização e familiaridade do administrador.

==================================================== ================================

RECURSOS TÉCNICOS E CITAÇÕES


Otimizando NTFS

Fatores de desempenho do NTFS

Você determina muitos dos fatores que afetam o desempenho de um volume NTFS. Você escolhe elementos importantes, como o tipo de volume NTFS (por exemplo, SCSI ou IDE), velocidade (por exemplo, a velocidade da rpm dos discos) e o número de discos que o volume contém. Além desses componentes importantes, os seguintes fatores influenciam significativamente o desempenho de um volume NTFS:

  • O tamanho da unidade de cluster e alocação
  • O local e o nível de fragmentação dos arquivos acessados ​​com freqüência, como a MFT (Master File Table), diretórios, arquivos especiais que contêm metadados NTFS, o arquivo de paginação e os arquivos de dados do usuário mais usados.
  • Se você criar o volume NTFS do zero ou convertê-lo de um volume FAT existente
  • Se o volume usa compactação NTFS
  • Se você desabilita comportamentos NTFS desnecessários

O uso de discos mais rápidos e mais unidades em volumes multidiscos é uma maneira óbvia de melhorar o desempenho. Os outros métodos de melhoria de desempenho são mais obscuros e estão relacionados aos detalhes da configuração de um volume NTFS.


Escalabilidade e desempenho em sistemas de arquivos modernos

Infelizmente, é impossível fazer comparações diretas de desempenho dos sistemas de arquivos em discussão, pois nem todos estão disponíveis na mesma plataforma. Além disso, como os dados disponíveis são necessariamente de diferentes plataformas de hardware, é difícil distinguir as características de desempenho do sistema de arquivos daquelas da plataforma de hardware em que está sendo executado.


Otimização NTFS

Novo white paper que fornece orientações para o dimensionamento de volumes NTFS

Novidades do NTFS

Configurando o Sistema de Arquivos NTFS para Desempenho

https://superuser.com/questions/411720/how-does-ntfs-compression-affect-performance

Práticas recomendadas para compactação NTFS no Windows

O limpador
fonte
9
Mesmo assim, eu poderia dar um simpósio com apenas o 802.11g conectado em todos os dispositivos e jurar que o limite de taxa de transferência do NTFS era <54Mbps, demonstrando repetidamente uma cópia entre os dispositivos.
TheCleaner
1
Pode ser, mas dizer "O NTFS tem um limite rígido" vs. "O NTFS é mais lento que o ext4 no hardware <x>" é uma grande diferença. Ele pode ter errado, você pode ter interpretado mal, independentemente ... lá está você.
TheCleaner
7
Novamente, o sistema de arquivos NTFS não terá essa limitação, mas um determinado driver NTFS pode ter.
mfinni
1
Não pense nisso como um limite, mas como uma sobrecarga lógica. Isso também inclui o driver, pois um limite "definido" teria que ser um valor de definição definido no código do driver. No entanto, eu entendo que você pensou que o processo <- (@mfinni) ... limites rígidos são definidos na taxa de transferência na capacidade do disco de processar E / S de Leitura / Gravação e também nas limitações técnicas do meio de transporte.
AngryWombat
1
Nice adiciona, @TheCleaner
mfinni
10

Duvido muito que exista um gargalo na transferência de dados relacionado a um sistema de arquivos , porque os sistemas de arquivos não determinam detalhes de implementação que limitariam o desempenho . Um determinado driver para um sistema de arquivos em uma configuração específica de hardware terá gargalos, é claro.

mfinni
fonte
Eu não acho que foi intencionalmente limitada, mas pensou que, talvez, foi uma limitação do projeto
swasheck
Obrigado pelo foco de "sistema de arquivos" para "driver".
swasheck
5
Você não pode aumentar a velocidade de um livro - você pode aumentar a velocidade do leitor e as coisas das quais ele depende.
precisa saber é
Limites e gargalos de garrafa são duas coisas diferentes ... como um sistema de arquivos pode causar sobrecarga, é teoricamente possível criar um gargalo de garrafa, mas não definirá um limite definido que acredito ser a intenção deste post.
AngryWombat
7

Eu ficaria muito surpreso se isso fosse verdade. Vejamos tudo o que pode retardar um sistema de arquivos:

  • A mídia física (disco, ssd)
  • Conexão com esta mídia (sas, sata, fcal)
  • Fragmentação
  • Algoritmos de bloqueio incorretos ou outros problemas de código
  • CPU e velocidade da memória

O fator limitante mais comum é a mídia física. A ferrugem rotativa é LENTA . Tomemos, por exemplo, este disco realmente novo, com velocidade máxima de 6 Gbps (ou seja, Gbps, não GBps!). É claro que o uso de uma configuração de ataque 1 acelerará isso. Claro que você nunca conseguirá isso, pois procura matar seu desempenho. Então, vamos usar um SSD, você diz? Oh, olhe para isso, 6 GB novamente.

Depois, há a conexão: sas (o armazenamento local mais rápido) sobe para 6 Gbps, o FC sobe para 16 Gbps.

Tem certeza de que sua demonstração estava usando hardware de ponta e de ponta?

Se você é: interessante! Você pode ter atingido o caso 3 e seu sistema de arquivos precisa ser otimizado. Ou, mais provavelmente, seus drivers e aplicativos estão consumindo sua CPU (5). Se nenhum desses for o caso, você pode ter encontrado um problema de desempenho real no NTFS, informe-o à microsoft.

E mesmo assim: este não é um limite artificial, criado para tornar sua vida mais infeliz. Os sistemas de arquivos não limitam intencionalmente as velocidades de transferência, mas são limitados pelo que o seu hardware pode oferecer.

Dennis Kaarsemaker
fonte
7

Eu não acho que exista um máximo. Mas eu sei que é mais do que 1 GB / s porque as pessoas na Samsung leram 2121,29 MB / s e 2000.195 MB / s gravam com sua plataforma de 2009 com 24 unidades SSD http://www.youtube.com/watch?v=96dWOEa4Djs

Eles acham que atingiram esse limite porque essa era a largura de banda total combinada de hardware das placas controladoras às quais os SSDs estavam conectados.

Também esta página http://blog.laptopmag.com/faster-than-an-ssd-how-to-turn-extra-memory-into-a-ram-disk mostra um disco RAM formatado com o NTFS com 5 a 7 GB / s. Experimente você mesmo com um dos títulos de RAMdisk listados em http://en.wikipedia.org/wiki/List_of_RAM_drive_software

BeowulfNode42
fonte
3

A única maneira lógica de comparar os limites do sistema de arquivos seria fazê-lo em sistemas em que a constante era o sistema de arquivos e as variáveis ​​fossem os outros fatores, como dispositivos, conexões etc. O uso de um sistema para comparar as velocidades de transferência em várias iterações prova apenas que o sistema particular era limitado, não que o sistema de arquivos fosse limitado.

Richard_G
fonte
3

Não há necessidade de teorizar se existe ou não um limite de 1 GBps para NTFS - os SSDs modernos já superam isso . O banco de testes é uma área de trabalho do Windows.

insira a descrição da imagem aqui

Jason
fonte
1

Não há limite de taxa de transferência interno no NTFS. A única restrição de velocidade são as características de desempenho do hardware subjacente.

pescoço longo
fonte
Não achei que fosse intencionalmente limitado, mas pensei que talvez fosse uma limitação do design.
swasheck
6
@swasheck Não acho possível criar um sistema de arquivos que não transfira dados duas vezes mais rápido se você tiver um processador duas vezes mais rápido e puder ler o disco duas vezes mais rápido e procurar duas vezes mais rápido. Mesmo o design mais ineficiente possível pode ser feito mais rapidamente, tornando tudo o que usa mais rápido.
usar o seguinte comando