Qual è la massima velocità di trasferimento teorica dei dati di NTFS?


28

Recentemente sono stato a una riunione di un gruppo di utenti locali in cui il relatore ha notato che il throughput massimo dello stack IO NTFS era di 1 GBps. Ha confermato la sua richiesta copiando contemporaneamente due file di grandi dimensioni dallo stesso volume logico in diversi volumi logici (ovvero [a] è l'origine, [b] è la destinazione 1 e [c] è la destinazione 2) e rilevando le velocità di trasferimento che si aggirano intorno a 500 MBps. Ha ripetuto questo test alcune volte e ha notato che il sottosistema di archiviazione sottostante era flash (per assicurarsi che non sospettassimo che lo storage fosse lento).

Ho cercato di verificare questa affermazione ma non riesco a trovare nulla documentato. Ho il sospetto che sto cercando i termini di ricerca errati ("throughput NTFS 1GBps", "throughput NTFS massimo"). Sono interessato a sapere se lo stack IO è effettivamente limitato a una velocità effettiva di 1 GBps.

MODIFICARE

Per chiarire: non credo che il presentatore intendesse sottintendere che NTFS fosse intenzionalmente limitato (e mi dispiace se lo ho insinuato anche io). Penso che fosse implicito che fosse una funzione del design del filesystem.


1GB / s è abbastanza veloce anche per le unità flash
TheFiddler vince il

2
@TheFiddlerWins 1 GB / s! = 1 Gbps
Kermit

1
Sono d'accordo, ma la sua domanda dice "... il throughput massimo dello stack IO NTFS era di 1 GBps", per quanto ne so B = byte eb = bit
TheFiddlerWins

1
Semplice esperimento: copiare il file su dischi RAM? Al giorno d'oggi non è difficile ottenere 16 * 2 = 32 GB di RAM.
kizzx2,

1
JamesRyan - l'utilizzo dell'FTP come meccanismo di trasferimento non modifica improvvisamente il filesystem. Non confondere SMB con NTFS.
mfinni,

Risposte:


36

Anche supponendo che volessi dire GBpse non Gbps...

Non sono a conoscenza di alcun filesystem che abbia un reale throughput limit. I filesystem sono semplicemente strutture su come archiviare e recuperare i file. Usano metadati, struttura, convenzioni di denominazione, convenzioni di sicurezza, ecc. Ma le effettive limitazioni della velocità effettiva sono definite dall'hardware sottostante stesso (in genere una combinazione di molti hardware coinvolti).

È possibile confrontare i diversi file system e il modo in cui incidono sulle prestazioni dell'hardware sottostante, ma ancora una volta non si tratta di una limitazione imposta direttamente dal file system ma piuttosto di una "variabile" nelle prestazioni complessive del sistema.

La scelta di distribuire un filesystem su un altro è in genere correlata a ciò che è il sistema operativo sottostante, quale sarà il server / l'applicazione, quale sia l'hardware sottostante e fattori soft come le aree di competenza e familiarità dell'amministratore.

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

RISORSE TECNICHE E CITTA '


Ottimizzazione di NTFS

Fattori di prestazione NTFS

Determinare molti dei fattori che influenzano le prestazioni di un volume NTFS. Scegli elementi importanti come il tipo di un volume NTFS (ad es. SCSI o IDE), la velocità (ad es. La velocità rpm dei dischi) e il numero di dischi contenuti nel volume. Oltre a questi importanti componenti, i seguenti fattori influenzano in modo significativo le prestazioni di un volume NTFS:

  • Il cluster e le dimensioni dell'unità di allocazione
  • Posizione e livello di frammentazione dei file a cui si accede frequentemente, come la tabella dei file master (MFT), le directory, i file speciali contenenti metadati NTFS, il file di paging e i file di dati utente comunemente utilizzati
  • Se si crea il volume NTFS da zero o lo si converte da un volume FAT esistente
  • Se il volume utilizza la compressione NTFS
  • Se si disabilitano comportamenti NTFS non necessari

L'uso di dischi più veloci e più unità nei volumi multidisk è un modo ovvio per migliorare le prestazioni. Gli altri metodi di miglioramento delle prestazioni sono più oscuri e riguardano i dettagli della configurazione di un volume NTFS.


Scalabilità e prestazioni nei moderni file system

Sfortunatamente, è impossibile fare confronti diretti sulle prestazioni dei file system in discussione poiché non sono tutti disponibili sulla stessa piattaforma. Inoltre, poiché i dati disponibili provengono necessariamente da piattaforme hardware diverse, è difficile distinguere le caratteristiche prestazionali del file system da quelle della piattaforma hardware su cui è in esecuzione.


Ottimizzazione NTFS

Nuovo white paper che fornisce indicazioni per il dimensionamento dei volumi NTFS

Novità di NTFS

Configurazione del file system NTFS per le prestazioni

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

Best practice per la compressione NTFS in Windows


9
Tuttavia, potrei tenere un simposio con solo 802.11g connessi su tutti i dispositivi e giuro che il limite di velocità effettiva di NTFS era <54 Mbps dimostrando più volte una copia tra i dispositivi.
TheCleaner,

1
Potrebbe essere, ma dire "NTFS ha un limite rigido" vs. "NTFS è più lento di ext4 su <x> hardware" è una grande differenza. Potrebbe aver sbagliato, potresti aver frainteso, a prescindere ... eccoti.
TheCleaner,

7
Ancora una volta, NTFS il filesystem non avrà tale limitazione, ma un determinato driver NTFS potrebbe.
mfinni,

1
Non pensarlo come un limite ma un sovraccarico logico. Ciò include anche il driver come limite "set" dovrebbe essere un valore di definizione definito nel codice del driver. Comunque capisco che hai pensato al processo <- (@mfinni) ... i limiti rigidi sono definiti nella velocità di trasmissione sulla capacità del disco di elaborare IO di lettura / scrittura e anche i limiti tecnici del mezzo di trasporto.
AngryWombat,

1
Nice aggiunge, @TheCleaner
mfinni

10

Dubito fortemente che ci sia un collo di bottiglia nel trasferimento dei dati relativo a un filesystem , poiché i filesystem non dettano dettagli di implementazione che potrebbero limitare le prestazioni . Naturalmente, un determinato driver per un filesystem su una particolare configurazione hardware avrà colli di bottiglia.


Non pensavo che fosse intenzionalmente limitato, ma pensavo che, forse, fosse una limitazione del design
swasheck

Grazie per l'attenzione da "filesystem" a "driver".
cambio

5
Non puoi aumentare la velocità di un libro, puoi aumentare la velocità del lettore e le cose da cui il lettore dipende.
mfinni,

Limiti e colli di bottiglia sono due cose diverse ... poiché un file system può causare sovraccarico è teoricamente possibile creare un collo di bottiglia ma non definirà un limite prestabilito che credo fosse l'intento inteso in questo post.
AngryWombat,

7

Sarei molto sorpreso se questo fosse vero. Diamo un'occhiata a tutto ciò che può rallentare un filesystem:

  • Il supporto fisico (disco, ssd)
  • Connessione a questo supporto (sas, sata, fcal)
  • La frammentazione
  • Algoritmi di blocco non validi o altri problemi di codice
  • Velocità della CPU e della memoria

Il fattore limitante più comune è il tuo supporto fisico. La ruggine rotante è LENTA . Prendi ad esempio questo disco davvero nuovo che ha una velocità massima di 6 Gbps (ovvero Gbps, non GBps!). Ovviamente l'utilizzo di un'installazione raid 1 lo accelererà. Ovviamente non lo raggiungerai mai, poiché le ricerche uccidono la tua esibizione. Quindi usiamo un SSD che dici? Oh guarda che, 6 GB di nuovo.

Poi c'è la connessione: sas (l'archiviazione locale più veloce) sale a 6 Gbps, mentre FC sale a 16 Gbps.

Sei sicuro che la tua demo stia utilizzando hardware di fascia alta, all'avanguardia?

Se sei: interessante! Potresti aver riscontrato il caso 3 e il tuo filesystem ha bisogno di essere ottimizzato. O più probabilmente i driver e l'applicazione stanno consumando la CPU (5). Se nessuno dei due lo è, potresti aver riscontrato un problema di prestazioni reale in NTFS, segnalalo a Microsoft.

E anche allora: questo non è un limite artificiale, messo in atto per rendere la tua vita più miserabile. I filesystem non limitano intenzionalmente la velocità di trasferimento, ma sono limitati da qualunque cosa il tuo hardware possa darti.


7

Non penso che ci sia un massimo. Ma so che è più di 1 GB / s perché le persone di Samsung hanno letto 2121,29 MB / s in lettura e 2000.195 MB / s in scrittura con il loro rig 2009 con 24 unità SSD http://www.youtube.com/watch?v=96dWOEa4Djs

Pensano di aver raggiunto quel limite perché questa era la larghezza di banda hardware totale combinata delle schede controller a cui erano collegati gli SSD.

Anche questa pagina http://blog.laptopmag.com/faster-than-an-ssd-how-to-turn-extra-memory-into-a-ram-disk mostra un disco RAM formattato con NTFS da 5 a 7 GB /S. Provalo tu stesso con uno dei titoli RAMdisk elencati su http://en.wikipedia.org/wiki/List_of_RAM_drive_software


3

L'unico modo logico per confrontare i limiti del filesystem sarebbe farlo attraverso i sistemi in cui la costante era il filesystem e le variabili erano gli altri fattori come dispositivi, connessioni, ecc. L'uso di un sistema per confrontare le velocità di trasferimento su più iterazioni dimostra solo che il il sistema particolare era limitato, non che il filesystem fosse limitato.



1

Non esiste un limite di velocità effettiva incorporato in NTFS. L'unico vincolo alla velocità sono le caratteristiche prestazionali dell'hardware sottostante.


Non pensavo che fosse intenzionalmente limitato, ma pensavo che, forse, fosse una limitazione del design.
cambio

6
@swasheck Non penso che sia possibile progettare un filesystem che non trasferirà i dati due volte più velocemente se hai un processore due volte più veloce e puoi leggere il disco due volte più veloce e puoi cercare due volte più veloce. Anche il design più inefficiente possibile può essere reso più veloce rendendo tutto ciò che utilizza più velocemente.
Casuale 832
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.