Le prestazioni del sottosistema del disco: un breve programma educativo. Sottosistema del disco

La rapida evoluzione del software ha portato a un aumento sempre maggiore dei requisiti per il sottosistema del disco del computer. Oltre alla velocità di funzionamento e alla quantità di informazioni memorizzate, i produttori si sono concentrati sul miglioramento di parametri quali l'affidabilità degli azionamenti e le loro caratteristiche di consumo (ad esempio, facilità di installazione e livello di rumorosità). L'aumento della popolarità dei computer portatili ha indirizzato il flusso del pensiero ingegneristico nell'area della miniaturizzazione delle unità e dell'aumento della loro affidabilità in condizioni estreme. È teoricamente possibile sviluppare una soluzione che soddisfi contemporaneamente tutti i requisiti citati. Tuttavia, dal punto di vista pratico, una soluzione universale porterà poca gioia, poiché un disco rigido "ideale" costerà molte volte di più di uno "imperfetto". È per questo motivo che stiamo attualmente vedendo una vera varietà di dischi rigidi realizzati con diverse tecnologie, collegati attraverso diverse interfacce e con caratteristiche tecniche diverse. Questo articolo fornisce brevi consigli sulla scelta dei dischi rigidi e discute anche gli attuali problemi che gli utenti e gli amministratori di sistema devono affrontare nella pratica durante l'implementazione di array RAID.

Alcuni requisiti per un disco rigido moderno

Il disco rigido (disco rigido) è considerato il mezzo di memorizzazione delle informazioni più riconosciuto e diffuso. Le informazioni su questa unità non scompaiono allo spegnimento del computer, a differenza, ad esempio, della RAM, e il costo della memorizzazione di un megabyte di informazioni è estremamente ridotto (circa 0,6 centesimi). Un disco rigido moderno ha prestazioni elevate e una capacità impressionante a un basso costo per megabyte di memoria su disco. I moderni dischi rigidi possono essere 47 GB o più grandi. Per "sentire" un tale volume, puoi fare una semplice stima. Su un disco da 47 GB possono essere archiviati circa 7 milioni di pagine di riviste ComputerPress in formato testo, o quasi 57.000 numeri unici di riviste. Per questa edizione di ComputerPress, ci vorrebbero quasi 5mila anni per funzionare senza guasti. I dischi rigidi (di solito diversi, estremamente raramente uno) con un rivestimento magnetico di alta qualità ruotano all'interno dell'involucro sigillato del disco rigido a un'enorme velocità costante (5400, 7200, 10.000, 15.000 giri/min). Sono "infilati" su un albero rotante: un fuso. Le informazioni sul disco si trovano su "tracce" (cerchi concentrici), ognuna delle quali è divisa in pezzi-settori. Ad ogni area del disco viene assegnato un numero corrispondente attraverso un processo di formattazione di basso livello eseguito dal produttore dell'unità. La lettura e la scrittura su entrambi i lati del disco magnetico vengono eseguite utilizzando testine magnetiche. Le teste stesse sono montate su un'apposita leva (adjucator) e vengono portate sulla superficie di un disco rotante ad una velocità indistinguibile dall'occhio umano. Il tempo medio per il quale la testina riesce a stabilizzarsi sull'area desiderata del disco (tempo di accesso medio) riflette essenzialmente le sue prestazioni: minore è il tempo di accesso, più veloce è il disco rigido. Oltre a quanto sopra, il disco rigido include una scheda controller contenente tutta l'elettronica dell'unità.

Un disco rigido moderno, secondo la specifica PC'99, deve supportare la modalità bus mastering, oltre a S.M.A.R.T. Il bus mastering è un meccanismo per lo scambio diretto di informazioni sul bus senza la partecipazione del processore centrale. Oltre a migliorare le prestazioni, questa modalità riduce il carico sul processore centrale (ci sono già molti contendenti per le sue risorse: modem lazy soft, schede audio, applicazioni in esecuzione simultanea, ecc.). Per implementare il protocollo di bus mastering, è necessario che tutti i partecipanti al processo (incluso il controller del disco rigido e il chipset della scheda madre) lo supportino. Tecnologia S.M.A.R.T (Self-Monitoring Analysis and Reporting Technology) è un meccanismo hardware per la previsione dei guasti sul disco rigido, che garantisce agli utenti le "sorprese" del disco rigido. I moderni dischi rigidi con un'interfaccia ATA (IDE) devono supportare la modalità Ultra ATA/33, che fornisce prestazioni esterne di picco del disco rigido fino a 33,3 MB/s. Molte unità sono già prodotte con l'interfaccia Ultra ATA/66 (la velocità di trasferimento massima è di 66,6 MB/s), ma, sfortunatamente, queste cifre sono raramente raggiunte nella realtà, poiché le prestazioni dei dischi rigidi non sono limitate dalla ristrettezza dei dati interfaccia di trasferimento, ma principalmente dalla meccanica.

L'elevata velocità di rotazione dei dischi all'interno del disco rigido provoca vibrazioni, inaccettabili e smorzate da speciali dispositivi di progettazione. Ecco perché la perfezione del design di un disco rigido può spesso essere determinata dall'orecchio: più silenzioso è il disco rigido, migliore è la sua meccanica e meno calore.

Comprare un disco rigido: cosa cercare

Quando si acquista un disco rigido nel listino prezzi di una società commerciale, di solito è possibile trovare la seguente riga: HDD IBM 13,7 GB 5400 rpm IDE ATA/66. Questo è tradotto in russo come segue: un disco rigido prodotto da IBM, con una capacità di 13,7 GB, una velocità del mandrino di 5400 rpm con un'interfaccia Ultra ATA / 66. Sembra incomprensibile solo a prima vista. In effetti, i principi per la scelta di un disco rigido sono universali:

  • un marchio autorevole non è una garanzia di qualità, ma un argomento a favore della scelta di un disco rigido di marca. Prima di tutto, dai un'occhiata più da vicino ai modelli di IBM e Seagate, anche se, come qualsiasi azienda, hanno serie di dischi rigidi di successo ed estremamente infruttuosi;
  • maggiore è la capacità, più redditizio diventa il disco rigido in termini di "prezzo per megabyte". Tuttavia, i dischi rigidi ad alta capacità spesso diventano un dump di file dimenticati e sono più costosi delle loro controparti meno capienti. I dischi rigidi di grandi dimensioni richiedono molto più tempo per la manutenzione (ad esempio, la deframmentazione), quindi per scopi domestici possono essere consigliati dischi rigidi con una capacità di circa 10-20 GB;
  • maggiore è la velocità del mandrino di azionamento, maggiori sono le sue prestazioni (velocità di scrittura e lettura dei dati), ma maggiore è il prezzo e maggiore è il calore. Per l'uso domestico e d'ufficio, si consiglia di dare la preferenza agli hard disk con velocità del mandrino di 5400-7200 giri/min (giri al minuto - giri al minuto);
  • IDE (ATA) è un tipo di interfaccia (meccanismo e protocollo di connessione) di un'unità alla scheda madre di un computer. L'interfaccia IDE è la più economica e la più comune, quindi può essere una raccomandazione universale. Più "professionale" è l'interfaccia SCSI, che permette di collegare fino a otto dispositivi e IEEE-1394 (FireWire). SCSI è diventato notevolmente meno diffuso di IDE a causa del suo prezzo elevato e delle caratteristiche di configurazione. E FireWire dovrebbe presto diventare lo standard per lo scambio di dati digitali tra l'elettronica di consumo digitale e le periferiche dei computer. In una parola, se non sei impegnato nell'editing video, nella digitalizzazione di video e nella modifica di file di grandi dimensioni, la tua scelta è un disco rigido con un'interfaccia IDE;
  • ATA/66 (lo stesso Ultra ATA 66 o Ultra DMA 66) è un'estensione dell'interfaccia IDE (ATA), che permette, in casi eccezionali, di raggiungere una velocità di trasferimento dati di 66 MB/s e spesso di ridurre il carico sul processore centrale. Questo, ovviamente, è estremamente raro e dura poche frazioni di secondo. Le normali prestazioni di un disco rigido sono 4-5 volte inferiori. Affinché il sottosistema del disco possa sviluppare tali prestazioni, è necessario che il controller della scheda madre e il disco rigido supportino questo standard. I moderni dischi rigidi sono già disponibili con supporto ATA-100 e non sono molto più costosi degli analoghi con ATA/33 o ATA/66. Conclusione: se le finanze lo consentono, è preferibile acquistare un disco rigido ATA-100, ma anche ATA/66 è una buona scelta.

Considerazioni sull'ottimizzazione del sottosistema del disco

Un disco rigido ad alta velocità non garantisce ancora le massime prestazioni del sottosistema del disco. Proprio come il seguito fa il re, le prestazioni di un disco rigido dipendono dai dispositivi in ​​cui è costretto a lavorare. Prima di tutto, è necessario bilanciare bisogni e opportunità. In pratica, questo significa che prima di acquistare un disco rigido, devi assolutamente conoscere le capacità della tua scheda madre. L'acquisto di un'unità ATA-100 per una scheda madre ATA-33/66 dovrebbe essere attentamente ponderato e giustificato: questo è necessario prima di tutto per te. Sfortunatamente, non è raro (soprattutto in un ambiente accademico) quando sono state acquistate unità ATA-100 (7200 rpm) per aggiornare unità i486/P60 obsolete da tempo. Non c'è bisogno di parlare della fattibilità finanziaria o pratica di questa decisione. Tuttavia, non ci concentreremo sull'ovvio, ma considereremo fattori poco noti che influenzano la velocità del sottosistema del disco.

Due dispositivi ATA su un cavo: buono o cattivo? Decisamente male! E ciò è causato non solo dal fatto che lo stesso loop fisico funge da mezzo di trasporto per entrambi i dispositivi. Il problema è in qualche modo diverso: nel modo in cui il controller funziona con ciascun dispositivo, in cui il loro funzionamento in parallelo è impossibile. In altre parole: finché il primo dispositivo non ha eseguito il comando, è impossibile accedere al secondo. Ciò significa che se si accede a un dispositivo più lento nel bundle, quello più veloce dovrà attendere il termine dell'operazione precedente, il che può rallentarne notevolmente il funzionamento. Questo è più chiaramente visibile nell'esempio del bundle "unità disco rigido-CD-ROM". Ecco perché si consiglia di distribuire i dispositivi ATA su loop diversi a seconda della loro velocità.

Utilizzo della modalità bus master. Il primo standard ATA adottato prevedeva l'uso di un'unità di elaborazione centrale (CPU) di un computer per organizzare il lavoro con i dispositivi di archiviazione delle informazioni. Questa era la modalità PIO (input/output programmato), che tutti i dispositivi ATA devono ancora supportare. Allo stesso tempo, la miopia di questo metodo, che consumava preziose risorse del processore per lavorare con i dispositivi ATA, era abbastanza evidente. Pertanto, i produttori di apparecchiature hanno proposto un'alternativa: la modalità Bus Mastering (un altro nome è DMA / UDMA). La principale differenza della nuova modalità era il rilascio della CPU dalle operazioni di controllo del trasferimento dati e la delega di queste funzioni al controller ATA. Di conseguenza, la potenza della CPU viene rilasciata per operazioni più importanti, il che consente di aumentare la velocità effettiva del sottosistema del disco. Questa modalità è stata supportata senza problemi da tutte le schede madri per più di cinque anni.

Utilizzo di un controller RAID. Le principali lamentele sui dischi rigidi sono il loro volume ridotto e la velocità costantemente insufficiente. Questo è vero per i dischi rigidi installati sia sui server che sulle workstation. Tuttavia, se la proposta di aggiornare il sottosistema del disco del server ha ancora la possibilità di essere approvata dalla direzione, i reclami per la velocità insufficiente del disco rigido sulla workstation con una probabilità del 99,9% moriranno prima di raggiungere le orecchie dell'amministratore di sistema . Con un computer di casa la situazione è ancora più drammatica, dal momento che i soldi per l'aggiornamento del sottosistema del disco dovranno essere prelevati dal budget familiare. Allo stesso tempo, i dischi rigidi ad alta velocità (ATA-100, 7200 rpm) costano attualmente circa $ 130 per 20 GB. La via d'uscita dall'impasse può essere l'uso di un controller RAID, che consente di combinare diversi dischi fisici in uno logico. In poche parole, il principio dell'utilizzo di RAID è di parallelizzare i flussi di informazioni di lettura/scrittura tra diversi supporti fisici. Di conseguenza, la velocità massima di lettura/scrittura dal supporto "combinato" aumenta tante volte quanto il numero di unità fisiche utilizzate per creare l'array RAID. Quanto sopra è vero solo per gli array RAID a livello zero, che non implicano la duplicazione delle informazioni archiviate. In passato, gli array RAID utilizzavano dischi rigidi SCSI piuttosto costosi. Ma da circa un anno sono disponibili sul mercato controller RAID economici (a partire da $ 36) per dischi rigidi con interfaccia IDE. Inoltre, alcuni produttori di schede madri (Abit, MSI, ecc.) installano controller RAID sulle loro schede madri insieme a interfacce IDE standard. I modelli più comuni di schede controller RAID per dischi rigidi ATA nel nostro mercato sono Promise e Abit Hot Rod. Naturalmente, non sono gli unici. In particolare, American Megatrends, Inc. (AMI), meglio conosciuto come produttore di controller RAID per dischi rigidi SCSI, ha rivolto la sua attenzione a questo segmento di mercato con il rilascio dell'AMI HyperDisk ATA-100 RAID (prezzo stimato di $ 120). Di conseguenza, in qualsiasi momento abbiamo l'opportunità di aumentare la velocità del nostro sottosistema di dischi senza la necessità di grandi spese. Affinché la situazione con RAID non sembri così ottimista, aggiungiamo una mosca nell'unguento a un barile di miele: un certo numero di controller RAID hanno seri problemi, la cui natura è ancora sconosciuta. Si tratta, ad esempio, del problema della compatibilità degli hard disk IBM DTLA - 3070xx e dei controller RAID costruiti sul chipset HighPoint HPT-366/368/370. Questo problema è stato discusso attivamente nei forum di Internet per diverse settimane. La sua essenza sta nel fatto che nel caso di creazione di un array RAID utilizzando un controller RAID basato sul chipset HPT - 366/368/370 basato su dischi rigidi IBM DTLA-3070xx, si verifica uno "spargimento" imprevedibile di dati e un gran numero di blocchi danneggiati compaiono anche sui nuovi dischi rigidi. A giudicare dal feedback degli utenti, questo problema non ha interessato gli utenti dei prodotti Promise, ma i possessori di Abit Hot Rod e schede madri con controller HPT-370 integrato (confermato in modo affidabile sulle schede RAID Abit VP6 e Abit BX-133) lo hanno sentito pienamente. La natura di questo fenomeno non ha ancora ricevuto una spiegazione ufficiale, tuttavia vengono espressi dubbi sul corretto spegnimento degli hard disk inclusi nell'array allo spegnimento del computer. Di conseguenza, i dati dalla cache del disco rigido non vengono salvati sul supporto, il che viola l'integrità dei dati. In questo caso, se il controller RAID viene utilizzato come origine di porte ATA-100 aggiuntive (ovvero, la funzione RAID non viene utilizzata), questo problema non si verifica. La cosa più fastidiosa è che alcuni dei migliori rappresentanti della famiglia di dischi rigidi ATA-100 (serie DTLA - 3070xx) sono soggetti a questo effetto, poiché non ci sono segnalazioni di casi simili con dischi rigidi di altri produttori.

Alcune osservazioni sull'organizzazione degli array RAID dai drive ATA

Questa sezione presenta una serie di osservazioni affidabili degli autori nel processo di creazione di un server di backup, nonché conclusioni preliminari basate su di esse.

Situazione uno: Abit VP6 Dual PIII - 667 viene utilizzato con quattro IBM DTLA-307045 in un array RAID. Il primo mese funziona tutto senza problemi. Approssimativamente a metà della quinta settimana, si verifica uno "spargimento" spontaneo (in un giorno) (l'aspetto di blocchi danneggiati) dell'intero array. L'array è stato smontato e, eseguendo controlli su tutte le unità singolarmente, è stato rilevato un numero enorme di blocchi danneggiati (~ 3%) su ciascun disco rigido. È interessante notare che lo schema della loro posizione è stato ripetuto per ogni coppia di unità. Conclusione: il problema dell'interazione congiunta di HPT-370 con IBM DTLA-3070xx non è risolto dalle ultime versioni di firmware e driver.

Situazione due: tutto è uguale, al posto del controller RAID integrato viene utilizzato solo AMI HyperDisk 100. Inoltre, i dischi IBM guasti vengono sostituiti con due dischi rigidi Fujitsu e due dischi rigidi Quantum collegati al primo e al secondo canale del controller, rispettivamente. Doveva organizzare due array RAID basati su ciascuna coppia di dischi rigidi. Tutti i dischi rigidi sono installati in moduli rack collegati al controller RAID tramite cavi ATA-100 (80 pin). Dopo aver creato manualmente due array, abbiamo notato la comparsa di due nuovi dischi della dimensione prevista (sistema operativo MS Windows 2000). Successivamente, durante la formattazione con un tentativo di scrittura dei dati, il sistema operativo si è bloccato. Ricordando che nel modulo rack la connessione dei dischi rigidi passa attraverso il cavo ATA-33 (in questo caso il controller ha indicato la modalità di funzionamento con dischi rigidi UDMA-5), abbiamo sostituito i cavi di collegamento con ATA-33. Dopo tale sostituzione, il controller ad ogni avvio ha iniziato a visualizzare un avviso sull'inevitabile aumento di velocità che ci attende quando si sostituiscono i loop. Ignorando questo invito con profondo rammarico, abbiamo notato l'inizio del normale funzionamento di una coppia di azionamenti. Tuttavia, la connessione della seconda coppia ha portato una sorpresa: l'unità creata si è rivelata impossibile da formattare utilizzando Windows 2000, perché alla fine della formattazione il sistema operativo ha segnalato che la formattazione non poteva essere continuata. Dopo aver sperimentato un momento di debolezza, abbiamo studiato da vicino la documentazione su HyperDisk, in particolare la sezione sulla creazione automatica degli array. Di conseguenza, il primo set di array è stato distrutto e il secondo è stato creato automaticamente. E poi sono iniziate le sorprese. Prima di tutto, il controller ha combinato dischi rigidi di diversi produttori in un array, ovvero, invece dei tandem dei produttori, abbiamo ottenuto tandem misti. Sembrava strano sullo sfondo delle chiamate utilizzare gli stessi dischi rigidi durante la creazione di array. Anche il motivo per cui coppie di unità sono state combinate in un array di stripe, e non tutte e quattro contemporaneamente, è rimasto poco chiaro. Uno studio della configurazione attuale ne ha stabilito la piena performance. Tuttavia, poiché i volumi dei dischi rigidi Fujitsu e Quantum differivano (a causa della fusione asimmetrica, sono stati persi circa 200 MB per array), abbiamo continuato a provare a combinare simmetricamente i dischi rigidi. Dopo un breve ma attento studio della configurazione dell'array, è stato notato che ogni coppia di dischi rigidi inclusa nella sua composizione è fisicamente collegata a diversi canali del controller RAID. Ricordando il fatto che il controller ATA non è in grado di lavorare in parallelo con i dispositivi collegati ad uno dei suoi canali, e che l'uso di un array comporta la registrazione simultanea su ogni dispositivo incluso nella sua composizione, abbiamo tratto una preliminare conclusione sulla problematica operazione dell'array quando si collegano le unità che lo compongono un canale ATA. Questa ipotesi ha fornito una spiegazione ragionevole per il fatto che quattro dischi rigidi sono stati combinati in due array (e non in uno), che è stato eseguito automaticamente dal controller AMI HyperDisk. La conclusione logica di questo presupposto è stata quella di modificare la configurazione del disco in modo tale che i bundle Primary Master - Secondary Slave e Secondary Master - Primary Slave fossero formati da dischi rigidi dello stesso produttore. Dopo aver ricollegato le unità, gli array sono stati riconfigurati automaticamente, il che ha portato al risultato atteso: due array costituiti da unità dello stesso produttore. Di conseguenza, abbiamo recuperato più di 200 megabyte "ridotti" dell'array. Tuttavia, la nostra gioia è svanita quando il sistema operativo ha trovato solo un array (più piccolo). Al momento della firma del problema, tutti i tentativi di forzare il sistema operativo a "vedere" l'array non hanno avuto successo, il che può servire come ulteriore prova della necessità di utilizzare esattamente gli stessi dischi nel processo di creazione degli array.

ComputerPress 4 "2001

Il sottosistema del disco di un computer come strumento importante per l'elaborazione della grafica raster. Quale opzione è più veloce?

Nei flussi di lavoro di imaging di prestampa, le prestazioni del computer svolgono un ruolo importante. Innanzitutto, ci sono alcuni requisiti minimi di sistema per il lavoro di grafica professionale. Quindi, ad esempio, è quasi impossibile preparare un layout a colori di alta qualità di una pubblicazione stampata utilizzando un monitor da 14 pollici e una scheda video che non è in grado di visualizzare il colore a 24 bit. In secondo luogo, solo perché la tua piattaforma di lavoro soddisfa questi requisiti minimi non significa che ti sentirai a tuo agio a lavorare con file grafici di grandi dimensioni. Per aumentare l'efficienza di lavoro con un computer, deve avere un margine di prestazioni. Ciò consente di eseguire anche operazioni ad alta intensità di risorse (ridimensionamento, applicazione di filtri a un'immagine, ecc.) abbastanza rapidamente e, idealmente, in tempo reale. Un notevole contributo alle prestazioni complessive della stazione grafica è dato dal suo sottosistema di dischi. Diventa un "collo di bottiglia" del sistema durante l'elaborazione di file, il cui volume è paragonabile alla quantità di RAM sul computer.

La situazione con i dischi rigidi per la piattaforma Wintel è sempre stata così: c'erano dischi rigidi SCSI destinati al settore Hi-End del mercato e, parallelamente, venivano offerte opzioni IDE meno costose per l'installazione in altri sistemi. Negli ultimi due anni c'è stata una vera svolta tecnologica nel campo dei drive IDE - basti pensare che se alla fine del 1998 un hard disk da 4,3 GB era considerato a tutti gli effetti nella media, con una velocità del mandrino di 5400 rpm e densità di registrazione 2 GB per piatto, alla fine del 2000, 40-45 GB / 7200 rpm / 15-20 GB per piatto rientra nella categoria media. In questo caso diventa la norma l'utilizzo dello standard ATA-100 e la riduzione del rumore di un disco funzionante a valori dell'ordine di 30 dB.

Nel campo dei dischi rigidi SCSI, un tale salto di prestazioni non è stato osservato: fino ad ora, la capacità media per i dischi di questo standard è al livello di 18 GB con una densità di registrazione di circa 6 GB per piatto. La superiorità in termini di prestazioni rispetto alle unità IDE è mantenuta grazie ad altri parametri importanti: un'elevata velocità del mandrino (10.000 rpm sono la norma), una grande quantità di buffer integrato (da 4 a 8 MB contro 0,5-2 MB per i modelli IDE) , e anche in gran parte per le peculiarità delle tecnologie SCSI in generale.

Tuttavia, i moderni dischi rigidi IDE stanno letteralmente camminando sulla scia delle loro costose controparti SCSI. Gli argomenti più pesanti a favore della versione IDE del sottosistema del disco del tuo computer sono il prezzo estremamente basso (2-4 volte inferiore a quello di SCSI) con alta capacità, bassa dissipazione del calore e livello di rumore.

La situazione è ulteriormente aggravata dal fatto che gli array RAID standard IDE sono diventati popolari di recente. In precedenza, le tecnologie RAID venivano utilizzate principalmente per i sottosistemi di dischi SCSI. La comparsa sul mercato di controller IDE RAID relativamente economici ha consentito ai dischi rigidi IDE di espandere ulteriormente la propria nicchia di mercato. Lo standard RAID 1 (Mirror) consente di aumentare l'affidabilità del sottosistema del disco in proporzione al numero di dischi rigidi ridondanti. Quindi, costruendo un array RAID in modalità Mirror da due dischi rigidi identici, raddoppiamo l'affidabilità della memorizzazione delle nostre informazioni (sono duplicate) e allo stesso tempo otteniamo un bel bonus sotto forma di una velocità di lettura leggermente aumentata dal disco array (questo è possibile grazie alla lettura sequenziale di blocchi di informazioni da due dischi rigidi e all'organizzazione in un unico flusso; ciò avviene a livello hardware dal controller RAID). Nel caso di utilizzo di RAID 0 (modalità STRIPE), otteniamo un aumento della velocità del nostro sottosistema di dischi in proporzione al numero di dischi che compongono l'array: le informazioni vengono suddivise in piccoli blocchi e "sparpagliate" sui dischi . Pertanto, in via puramente teorica, sarebbe possibile aumentare la velocità del sottosistema del disco di un fattore pari al numero di dischi rigidi nell'array. Purtroppo, in pratica, l'aumento di velocità non è così significativo, ma potete leggerlo di seguito valutando i risultati del test. È impossibile non notare lo svantaggio principale della modalità RAID 0 (Stripe): l'affidabilità dell'archiviazione delle informazioni diminuisce esattamente nel numero di volte che è uguale al numero di dischi rigidi utilizzati. La modalità RAID 0 + 1 è progettata specificamente per eliminare questo spiacevole effetto, una sorta di "miscela" delle modalità Mirror e Stripe. Un array RAID 0+1 richiede almeno 4 dischi rigidi. Il risultato è l'affidabilità dell'unità singola più il doppio della capacità e prestazioni migliorate.

Le prestazioni di vari tipi di dischi rigidi sono spesso fonte di confusione per molti utenti. La maggior parte delle persone sa solo che "SCSI è terribilmente interessante, molto più veloce dell'IDE", alcuni degli "avanzati" credono sinceramente che un array RAID di due dischi in modalità Stripe sia esattamente due volte più veloce di un singolo disco rigido. In questo ambito, infatti, si sono sviluppati molti miti, spesso del tutto errati. Questo articolo è un tentativo di chiarire le cose misurando accuratamente le prestazioni di diversi tipi di sottosistemi di dischi. Vorrei prestare particolare attenzione al fatto che non sono state utilizzate suite di test sintetiche (che, di norma, sono di scarsa utilità) per valutare le prestazioni, ma i compiti più pratici dell'arsenale di persone professionalmente coinvolte nella grafica su PC .

Pertanto, sono state testate le seguenti varianti di sottosistemi di dischi:

IDE- hard disk obsoleto (5400 rpm, 512 kb cache, 4 GB per piatto) con interfaccia ATA-33 - Fujitsu MPD3130AT; scheda madre - i440BX con controller ATA-33 integrato.
IDE- hard disk di nuova serie (7200 rpm, 2048 KB di cache, 20 GB per piatto) con interfaccia ATA-33 - Western Digital WD200; i440BX, ATA-33 (incorporato).
IDE- hard disk di nuova serie (7200 rpm, 2048 KB di cache, 20 GB per piatto) con interfaccia ATA-100 - Western Digital WD200; Controller RAID FastTrak100 (SPAN) promesso.
RAID-un array di due moderne unità IDE in modalità Stripe - 2xWestern Digital WD200; Highpoint Technologies HPT370 UDMA/ATA 100 Raid Controller (STRIPE).
SCSI- hard disk di fascia alta (10.000 rpm, 4096 KB di cache, 6 GB per piatto) con interfaccia SCSI Ultra160 - Fujitsu MAJ 3182 MP; Controller SCSI - Adaptec 29160N.

Per la purezza dell'esperimento, ogni versione del sottosistema del disco è stata installata nel sistema assolutamente "da zero". Il disco (o disk array) è stato diviso dal programma FDISK in tre logici. In questo caso, la dimensione della partizione di avvio (unità logica C:\) è stata sempre impostata su 3 GB. Il resto dello spazio è stato diviso equamente tra le unità D:\ ed E:\. Il sistema operativo è stato installato sull'unità C:\, il file di paging di Photoshop si trovava sull'unità D:\; c'erano anche file di prova. Il file system è FAT32.

Per dare un buon carico al sottosistema del disco e quindi valutarne le prestazioni, la quantità di RAM è stata limitata a 128 MB (nonostante nei sistemi di questa classe progettati per funzionare con grafica raster, 256 MB siano l'entry level) . La quantità di memoria disponibile per Photoshop 5.5 è stata impostata al 50% della memoria libera totale. Questo volume era di circa 57 MB. Tutti i test sono stati eseguiti con due file di dimensioni diverse: la dimensione del primo era 1/5 della quantità di memoria disponibile per Photoshop, la dimensione del secondo era 1,5 volte più grande (). Ciò ha consentito di ottenere dati sulla velocità di esecuzione di una determinata operazione in due casi: quando il file in elaborazione si inserisce nella RAM con un margine e quando è garantito che non vi rientri nella sua interezza. Devo dire che per un file di dimensioni inferiori, i risultati ottenuti su diversi sottosistemi di disco sono quasi identici, il che non sorprende affatto: l'elaborazione principale è avvenuta nella RAM. Le differenze in questo caso si notano solo nelle operazioni di lettura/scrittura, durante l'apertura e il salvataggio di un file. Durante l'elaborazione di un file di grandi dimensioni è stata osservata un'immagine completamente diversa. Poiché il file non si adattava completamente alla RAM, Photoshop ha utilizzato attivamente il sottosistema del disco del computer. I risultati di questi test, come i più rivelatori, sono presentati sotto forma di diagrammi. I risultati completi, inclusi i test con file di dimensioni inferiori e con un processore più potente, possono essere visualizzati nella tabella riepilogativa n. 2.

Chi è interessato può ripetere tutti i test di questo articolo su altri sistemi, poiché tutte le impostazioni utilizzate sono elencate nella tabella. I file di prova sono stati creati come segue: CMYK balloons.tif è stato preso dalla directory ... \Adobe\Photoshop5.5\Goodies\Samples\. Dopo la conversione in RGB, è stato ridimensionato fino a 2240x1680 e 6400x4800 pixel, ottenendo due file TIFF RGB rispettivamente di 10,7 e 89,7 MB. Tutte le operazioni sono state eseguite sui file ricevuti. Dopo ogni operazione, il risultato è stato annullato dal comando Annulla. L'ultima operazione (Salva) è stata eseguita in formato CMYK. Ogni test è stato eseguito tre volte e i risultati sono stati mediati. Dopo ogni test, il sistema si è riavviato.

Sistema n. 1: Fujitsu MPD3130AT; i440BX, ATA-33

Il disco rigido della serie Fujitsu MPD è un meritato veterano. Un anno e mezzo fa, i dischi rigidi di una classe come Fujitsu MPD, Quantum CR e altri analoghi erano i più veloci nel settore dei dischi rigidi standard IDE. Questo disco rigido ha tre piatti da 4,32 GB, 6 testine di lettura/scrittura e un buffer integrato da 512 KB. Tempo di ricerca medio - 9,5 / 10,5 ms (lettura/scrittura), velocità del mandrino - 5400 giri/min, livello di rumore - 36 dB. Lo standard ATA-66 è supportato, ma questo non è altro che uno stratagemma di marketing, poiché la velocità di trasferimento dei dati è nell'intervallo 14,5-26,1 MB / s, che si adatta perfettamente alle capacità dello standard ATA-33 (33,3 MB / s) .

Il Fujitsu MPD3130AT si è rivelato un disco rigido affidabile e silenzioso. Durante il funzionamento, il rumore di un mandrino rotante è quasi impercettibile, ma il suono delle teste di posizionamento è chiaramente distinguibile. Il disco si riscalda molto poco - anche con un uso prolungato, il case rimane freddo o appena caldo.

Nei test, l'MPD3130AT perde in modo significativo rispetto a tutti gli altri partecipanti, il che non sorprende affatto, data la differenza di caratteristiche con il concorrente più vicino WD200 (velocità di rotazione - rispettivamente 5400 e 7200 rpm, densità di registrazione - 4,3 GB per piatto contro 20 GB ).

I test su due diversi sistemi operativi hanno prodotto risultati alquanto contrastanti: Windows 98 è molto più veloce delle operazioni di apertura e salvataggio dei file, mentre Windows 2000 è molto più veloce di tutto il resto. In caso contrario, nessuna sorpresa.

Sistema n. 2: Western Digital WD200; i440BX, ATA-33.

WD200 è un rappresentante di una nuova generazione di dischi rigidi. I parametri principali sono 7200 rpm, la cache interna aumentata a 2048 KB, la densità di registrazione è di 20 GB per piatto. Il disco ha un piatto e due testine. Il tempo di ricerca medio è dichiarato dal produttore di 8,9/10,9 ms, che non è molto diverso dalle caratteristiche del Fujitsu MPD3130AT. Tuttavia, il WD200 è notevolmente più veloce. Innanzitutto, influisce sul volume maggiore del buffer integrato. In secondo luogo, il tasso di cambio nella sezione "buffer-to-surface" raggiunge un impressionante 30,5-50 MB/s - dopotutto, 20 GB per piatto è una densità di registrazione seria.

Durante il funzionamento, il disco si è rivelato molto positivo - nonostante la maggiore velocità del mandrino, si è rivelato più silenzioso del Fujitsu MPD (livello di rumore dichiarato - 30 dB). I movimenti della testa sono quasi impercettibili.

Con la dissipazione del calore, le cose vanno peggio, ma abbastanza accettabili. Dopo un'ora di lavoro intenso, il disco rigido si è riscaldato fino a 45 gradi, ovvero era caldo al tatto, ma non caldo.

In generale, questa configurazione ha lasciato un'impressione molto favorevole ed è il campione indiscusso in termini di rapporto qualità-prezzo. Giudicate voi stessi: al prezzo di circa $ 130 questo disco rigido costituisce una soluzione completa con un controller ATA-33 integrato del chipset 440VX. E nessun problema con Windows 98, come si osserva nel caso dell'utilizzo dell'ATA-100.

Sistema n. 3: Western Digital WD200; ATA-100 Promessa FastTrak100 (SPAN).

I test hanno rivelato un punto molto interessante: quando si utilizzava l'interfaccia ATA-100 in Windows 98, le prestazioni del sottosistema del disco erano nella maggior parte dei casi inferiori rispetto a quando si utilizzava l'ATA-33. E in alcuni casi, c'è stato solo un calo delle prestazioni catastrofico (5-10 volte)! Poiché i risultati in Windows 2000 erano assolutamente prevedibili (ovvero, l'ATA-100 si è rivelato più veloce dell'ATA-33, come previsto), ciò dà motivo di sospettare che la combinazione Windows 98 + ATA-100 non funzioni correttamente . Forse il motivo risiede nel modello specifico del controller: Promise FastTrak100. Inoltre, la maggior parte dei test è stata eseguita più velocemente su Windows 2000.

Da tutto ciò possiamo trarre una conclusione logica: Windows 98 non è adatto per un lavoro serio con la grafica. Se si vogliono utilizzare gli ultimi sviluppi nel campo degli IDE, ovvero l'interfaccia ATA-100 o un array RAID in modalità STRIPE, è meglio lavorare con i sistemi operativi della famiglia NT (Windows NT 4.0 o Windows 2000), che si comportano maggiormente correttamente in tali modalità.

Quando si utilizza Windows 2000, c'è un guadagno dal passaggio da ATA-33 a ATA-100, ma non è grande.

Sistema n. 4: due unità Western Digital WD200 + HPT370 UDMA/ATA 100 Raid Controller (STRIPE).

Infine, un array RAID di due dischi rigidi identici è stato testato in modalità striped data block (STRIPE). Una dimensione del blocco di 64 KB è stata utilizzata come la più ottimale (secondo altri test indipendenti). In teoria, la velocità di un tale sottosistema di dischi può essere 2 volte superiore a quella di un singolo disco. Ma i risultati del test non lasciano motivi di ottimismo. Nella stragrande maggioranza delle attività, il miglioramento delle prestazioni è del 5-15% rispetto a una singola unità con un'interfaccia ATA-100.

In una parola, i risultati sono deludenti. La costruzione di un array RAID 0 può essere consigliata solo a coloro che vogliono ottenere le massime prestazioni dalla tecnologia IDE, nonostante tutti gli svantaggi sopra descritti. Ma questo potrebbe essere necessario solo per coloro che sono impegnati nell'immissione di video non compressi su un PC.

Sistema n. 5: Fujitsu MAJ 3182 MP + controller SCSI Adaptec 29160N.

L'ultimo partecipante alla "competizione" è un disco rigido SCSI di altissima classe. Devo dire che il MAJ 3182 è stato scelto come "barra superiore" di questo test. Ebbene, questo disco rigido è riuscito a dimostrare chiaramente la sua superiorità: in quasi tutti i test va "testa a testa" con il suo principale rivale: un array RAID in modalità STRIPE.

Un'idea delle potenzialità del Fujitsu MAJ 3182 MP può essere data anche dalle sue caratteristiche. Velocità del mandrino - 10.025 giri/min, numero di dischi - 3, testine - 5, tempo di ricerca medio - 4,7 / 5,2 ms, dimensione del buffer integrato - 4096 KB. Viene utilizzata l'interfaccia SCSI Ultra160, che fornisce una velocità di trasferimento dati sincrono nella sezione "buffer-controller" di 160 MB/s.

Tutti questi parametri impressionanti hanno influenzato il consumo energetico e il rumore del disco rigido. Il Fujitsu MAJ 3182 MP si riscalda terribilmente - la temperatura del case sale a 60°C dopo un lungo periodo di funzionamento, se non di più - il case brucia chiaramente le dita. Anche il livello di rumore durante il funzionamento non è piccolo - 40 dB. E il più grande svantaggio è il prezzo. Al momento in cui scrivo, un set di un disco rigido e un controller SCSI-160 costava circa $ 500 a Mosca.

Risultati

Quindi, sulla base dei risultati dei test, vorrei trarre alcune conclusioni che saranno utili a coloro che aggiorneranno il sottosistema del disco della propria stazione grafica.

  1. I dischi delle generazioni precedenti con una bassa densità di registrazione e un piccolo buffer integrato perdono significativamente rispetto ai modelli moderni in tutti i parametri principali: velocità, capacità e silenziosità. Sentiti libero di sostituire un vecchio disco rigido di classe Fujitsu MPD con un nuovo disco rigido ad alta velocità con densità di registrazione maggiore (15-20 GB per piatto) e una cache di grandi dimensioni (2 MB). I guadagni in termini di prestazioni possono essere del 100 percento o più. Inoltre, tutto quanto sopra rimane valido anche quando si utilizza l'interfaccia ATA-33.
  2. Il passaggio da ATA-33 a ATA-100 non fornisce molto guadagno in termini di prestazioni. L'acquisto di un controller ATA-100 separato, anche se economico (circa $ 30), secondo me non ne vale la pena. Un'opzione adatta è la presenza sulla scheda madre di un controller integrato "gratuito" di questo standard.
  3. L'array RAID in modalità STRIPE ha mostrato prestazioni molto buone, a livello di diecimila SCSI, e spesso anche superiori. Allo stesso tempo, bisogna tenere conto del costo molto interessante di tale configurazione, perché due dischi rigidi che compongono un array, insieme a un controller RAID economico di Highpoint, costano meno di un disco rigido SCSI senza controller! (130+130+30 = $ 290). E per di più, otteniamo un'enorme capacità, rispetto alla versione SCSI, di 40 GB. L'unico, ma molto grande svantaggio è una diminuzione dell'affidabilità dell'archiviazione dei dati di 2 volte. Tuttavia, se un array di dischi di questo tipo verrà utilizzato come strumento per il lavoro operativo e non come archiviazione a lungo termine di informazioni preziose, la sua acquisizione è più che giustificata.
  4. I dischi rigidi SCSI di alto livello, come ci si aspetterebbe, hanno le prestazioni più elevate.

Tuttavia, dato il prezzo elevato, l'elevata dissipazione del calore e il livello di rumorosità di tali dispositivi, il loro acquisto è giustificato solo quando sono necessarie prestazioni (e affidabilità del sottosistema del disco) senza compromessi, perché i dischi rigidi SCSI sono sempre stati famosi per la loro affidabilità e l'elevato MTBF ).

In conclusione, vorrei attirare l'attenzione dei lettori su due righe nell'ultima tabella: i risultati delle misurazioni durante la sostituzione del processore Pentium-III-650E (bus di sistema a 100 MHz) con il Pentium-III-866EB (FSB a 133 MHz). Come puoi vedere, la sostituzione del processore con uno significativamente più potente non dà un'ampia diffusione di risultati. Ciò mostra che il metodo di test scelto era corretto (bassa "dipendenza dal processore", il carico principale ricade sul sottosistema del disco).

CON Andrey Nikulin può essere contattato via e-mail: [email protetta] .

I redattori desiderano ringraziare Elko Moscow, SMS, Pirit e Russian Style per il loro aiuto, che ha fornito l'attrezzatura per i test.

Tabella 1. Composizione della piattaforma di test:
Scheda madre ASUS P3B-F
processore Intel Pentium III-650E (FSB 100 MHz)
RAM 128 MB, PC-133 M.tec (2-2-2-8-Veloce)
Adattatore video Creative 3DBlaster TNT2 Ultra
Controller RAID Controller Raid HPT370 UDMA/ATA 100 di Highpoint Technologies
Controllore ATA-100 Promessa FastTrak100
Controller SCSI Adaptec 29160N (adattatore host SCSI PCI-to-Ultra160 a canale singolo da 32 bit (OEM))
Dischi fissi IDE Fujitsu MPD3130AT
IDE - Western Digital WD200 - 2 pz.
SCSI - Fujitsu MAJ 3182 MP
Sistema operativo Windows 98 4.10.1998 + DirectX 7.0a
Windows 2000 Professional 5.00.2195 Service Pack 1
Programma di test (impostazioni delle opzioni) Adobe Photoshop 5.5: Impostazioni cache: livelli cache - 4
L'opzione Usa cache per istogrammi è abilitata Utilizzo memoria fisica: RAM disponibile - 113.961 KB; Usato da Photoshop - 50%; RAM di Photoshop: 56.980 KB.
Scratch Disk: Primo: D:\; il resto è disabilitato.
File di prova 0.2 RAM di Photoshop; 2240x1680 pixel; colore a 24 bit; TIFF RGB, 10,7 MB;
1.5 RAM di Photoshop; 6400x4800x24; TIFF RGB; 87,9 MB.

Riviste di pubblico dominio.

16.01.1997 Patrick Corrigan, Topolino Applebaum

Le opzioni di configurazione per i sottosistemi del disco del server sono diverse e, di conseguenza, la confusione è inevitabile. Per aiutarvi a comprendere questa difficile questione, abbiamo deciso di considerare le principali tecnologie e la fattibilità economica del loro utilizzo. DISCO

Le opzioni di configurazione per i sottosistemi del disco del server sono diverse e, di conseguenza, la confusione è inevitabile. Per aiutarvi a comprendere questa difficile questione, abbiamo deciso di considerare le principali tecnologie e la fattibilità economica del loro utilizzo.

Nel caso dei sottosistemi del disco del server, hai molte opzioni tra cui scegliere, ma la pletora rende difficile trovare il sistema che funziona meglio per te. La situazione è complicata dal fatto che nel processo di selezione dovrai fare i conti con una notevole quantità di informazioni false e pubblicità di marketing.

La revisione delle principali tecnologie dei sottosistemi dei dischi dei server e la discussione sull'opportunità del loro utilizzo in termini di costi, prestazioni, affidabilità e tolleranza ai guasti dovrebbero aiutare a comprendere l'essenza di questo problema.

INTERFACCE DEL DISCO

Sia che tu stia specificando un nuovo server o aggiornando uno esistente, l'interfaccia del disco è un problema critico. La maggior parte delle unità oggi utilizza interfacce SCSI o IDE. Esamineremo entrambe le tecnologie, descriveremo le loro implementazioni e discuteremo come funzionano.

SCSI è un'interfaccia ANSI standardizzata che presenta diverse varianti. La specifica SCSI originale, ora denominata SCSI-I, utilizza un canale dati a 8 bit a una velocità dati massima di 5 Mbps. SCSI-2 consente diverse varianti, tra cui Fast SCSI con un canale dati a 8 bit e velocità di trasferimento fino a 10 Mbps; Ampio SCSI con canale dati a 16 bit e velocità di trasferimento fino a 10 Mbps; e Fast/Wide SCSI con collegamento dati a 16 bit e velocità di trasferimento fino a 10 Mbps (vedere Tabella 1).

TABELLA 1 - OPZIONI SCSI

SCSI-1 Massima performance Larghezza del canale Frequenza Numero di dispositivi*
5 Mbps 8 cifre 5 MHz 8
SCSI-2
SCSI veloce 10 Mbps 8 cifre 10 MHz 8
SCSI veloce/ampio 20 Mbps 16 cifre 10 MHz 8; 16**
* i dispositivi supportati includono HBA ** con segnale di uscita sbilanciato; differenziale

Con l'avvento di Fast/Wide SCSI a 16 bit "wide", le versioni a 8 bit sono state talvolta denominate "narrow" - Narrow SCSI. Di recente sono emerse diverse altre implementazioni SCSI: Ultra SCSI, Wide Ultra SCSI e SCSI-3. Rispetto alle opzioni più comuni, queste interfacce presentano qualche vantaggio in termini di prestazioni, ma poiché non sono ancora molto diffuse (il numero di dispositivi che utilizzano queste interfacce è molto limitato), non le discuteremo in questo articolo.

Il sistema di cavi SCSI-I è un bus di linea in grado di collegare fino a otto dispositivi, incluso un adattatore bus host (HBA). Questo design del bus è chiamato SCSI SCSI single-ended e la lunghezza del cavo può arrivare fino a nove metri. SCSI-2 (che sostituisce virtualmente SCSI-I) supporta sia SCSI single-ended che SCSI differenziale. Lo SCSI differenziale utilizza un metodo di segnalazione diverso rispetto allo SCSI single-ended e supporta fino a 16 dispositivi su un circuito lungo fino a 25 metri. Fornisce una migliore soppressione del rumore, il che significa prestazioni migliori in molti casi.

Un problema con SCSI differenziale è la compatibilità del dispositivo. Ad esempio, oggi esistono varietà limitate di unità nastro e unità CD-ROM compatibili SCSI differenziali. I dispositivi differenziali e gli HBA sono in genere leggermente più costosi dei dispositivi single-ended, ma hanno il vantaggio di supportare più dispositivi per canale, loop più lunghi e, in alcuni casi, prestazioni migliori.

Quando si scelgono i dispositivi SCSI, è necessario essere consapevoli dei problemi di compatibilità. SCSI single-ended e SCSI differenziale possono utilizzare lo stesso cablaggio, ma non è possibile combinare dispositivi single-ended e dispositivi differenziali. Wide SCSI utilizza un sistema di cablaggio diverso da Narrow SCSI, quindi non è possibile utilizzare dispositivi Wide SCSI e Narrow SCSI sullo stesso canale.

COME FUNZIONA SCSI

In SCSI, il controller del dispositivo (ad esempio, un controller del disco) e l'interfaccia con il computer sono dispositivi diversi. Computer Interface, HBA, aggiunge un bus di interfaccia aggiuntivo al computer per il collegamento di più controller di dispositivo: fino a sette controller di dispositivo su un collegamento SCSI single-ended e fino a 15 su un collegamento differenziale. Tecnicamente, ogni controller può supportare fino a quattro dispositivi. Tuttavia, alle elevate velocità di trasferimento delle odierne unità ad alta capacità, il controller del dispositivo è in genere integrato nell'unità per ridurre il rumore e il rumore elettrico. Ciò significa che è possibile avere fino a sette unità su un collegamento SCSI single-ended e fino a 15 su un collegamento SCSI differenziale.

Uno dei vantaggi di SCSI è l'elaborazione di più comandi sovrapposti. Questo supporto I/O sovrapposto offre alle unità SCSI la capacità di combinare completamente le letture e le scritture con altre unità nel sistema, in modo che unità diverse possano elaborare comandi in parallelo anziché uno alla volta.

Poiché tutta l'intelligenza dell'interfaccia del disco SCSI risiede nell'HBA, l'HBA controlla l'accesso del sistema operativo ai dischi. Di conseguenza, l'HBA, non il computer, risolve i conflitti di traduzione e di accesso al dispositivo. In generale, ciò significa che, a condizione che vengano utilizzati driver scritti e installati correttamente, il computer e il sistema operativo non vedono alcuna differenza tra i dispositivi.

Inoltre, poiché l'HBA controlla l'accesso tra il bus di espansione interno del computer e il bus SCSI, può risolvere i conflitti di accesso a entrambi fornendo funzionalità avanzate come un servizio di interruzione/ripristino del collegamento. Break/Recovery consente al sistema operativo di inviare un comando di ricerca, lettura o scrittura a un dispositivo specifico, dopodiché l'unità viene lasciata a se stessa per eseguire il comando, in modo che un'altra unità sullo stesso canale possa ricevere il comando nel frattempo. Questo processo migliora notevolmente la velocità effettiva dei canali del disco con più di due dischi, soprattutto quando i dati sono sottoposti a striping o sparsi sui dischi. Un'altra caratteristica migliorata è lo scambio di dati sincrono, per cui il throughput complessivo del canale del disco e l'integrità dei dati vengono aumentati.

IDE

IDE è lo standard de facto ampiamente utilizzato nei PC basati su x86. Questa è solo una raccomandazione generale per i produttori, quindi tutti erano liberi di sviluppare un IDE specifico per i propri dispositivi e adattatori. Di conseguenza, i prodotti di diversi produttori e persino diversi modelli dello stesso produttore si sono rivelati incompatibili tra loro. Una volta risolte le specifiche, questo problema è quasi scomparso, ma l'incompatibilità è ancora possibile.

A differenza di SCSI, IDE mette l'intelligenza sul disco anziché sull'HBA. L'HBA per l'IDE ha poca o nessuna intelligenza e semplicemente invia direttamente il bus del computer ai dischi. Senza un'interfaccia intermedia, il numero di dispositivi su un canale IDE è limitato a due e la lunghezza del cavo è limitata a tre metri.

Poiché tutta l'intelligenza dei dispositivi IDE risiede sui dispositivi stessi, uno dei dispositivi sul canale viene assegnato come channel master e il controller integrato sul secondo viene disabilitato e diventa uno slave (chanell slave). Il dispositivo master controlla l'accesso tramite il canale IDE a entrambi i dispositivi ed esegue tutte le operazioni di I/O per essi. Questa è una possibilità di conflitto tra i dispositivi a causa delle diverse implementazioni del fornitore dell'interfaccia IDE. Ad esempio, un'unità può essere progettata per funzionare con un particolare schema di controller, ma l'host a cui è connessa può utilizzare un tipo di controller diverso. Inoltre, le unità Enhanced IDE (EIDE) più recenti utilizzano un set esteso di comandi e tabelle di traduzione per supportare unità di capacità maggiore e prestazioni più elevate. Se sono collegati a un vecchio standard, l'unità master IDE, non solo perdono le loro funzionalità avanzate, ma potrebbero non darti tutta la capacità disponibile. Peggio ancora, possono segnalare la loro piena capacità al sistema operativo senza poterlo utilizzare, danneggiando potenzialmente le informazioni sul disco.

La possibilità di danneggiamento dei dati è dovuta al fatto che ogni sistema operativo percepisce le informazioni di configurazione del disco a modo suo. Ad esempio, DOS e il BIOS di sistema consentono solo una capacità massima del disco di 528 MB. NetWare e altri sistemi a 32 bit non hanno queste limitazioni e sono in grado di leggere un'intera unità IDE direttamente attraverso la sua elettronica. Quando crei più partizioni di diversi sistemi operativi sullo stesso disco, ciascuna di esse vede la capacità e la configurazione in modo diverso e ciò può portare a tabelle delle partizioni sovrapposte, che, a loro volta, aumentano notevolmente il rischio di perdita di dati sul disco.

L'architettura IDE originale non riconosce unità di dimensioni superiori a 528 MB e può supportare solo due dispositivi per canale con una velocità di trasferimento massima di 3 Mbps. Per superare alcuni dei limiti dell'IDE, l'architettura EIDE è stata introdotta nel 1994. EIDE supporta capacità e prestazioni più elevate, ma le sue velocità di trasferimento da 9 a 16 Mbps sono ancora più lente di quelle di SCSI. Inoltre, a differenza di 15 dispositivi per canale per SCSI, può supportarne un massimo di quattro per canale. Si noti inoltre che né l'IDE né l'EIDE forniscono funzionalità multitasking. Pertanto, non possono fornire lo stesso livello di prestazioni delle interfacce SCSI in un tipico ambiente server.

Sebbene originariamente progettato per i dischi, lo standard IDE ora supporta unità nastro e CD-ROM. Tuttavia, la divisione di un canale con un'unità CD-ROM o nastro può influire negativamente sulle prestazioni del disco. Nel complesso, i vantaggi in termini di prestazioni e scalabilità di SCSI lo rendono una scelta migliore rispetto a IDE o EIDE per la maggior parte delle applicazioni server di fascia alta che richiedono prestazioni elevate. Tuttavia, per le applicazioni entry-level in cui le prestazioni o l'estendibilità non sono un grosso problema, sarà sufficiente un IDE o un EIDE. Allo stesso tempo, se è necessaria la ridondanza del disco, l'IDE non è l'opzione migliore a causa dei potenziali problemi associati all'approccio master-slave. Inoltre, dovresti prestare attenzione alla possibile sovrapposizione della tabella delle partizioni e ai problemi di incompatibilità del dispositivo master-slave.

Tuttavia, ci sono alcuni casi in cui le interfacce IDE ed EIDE possono essere utilizzate in server di fascia alta. È pratica comune, ad esempio, utilizzare una piccola unità IDE per la partizione DOS sui server NetWare. È anche ampiamente praticato utilizzare unità CD-ROM con un'interfaccia IDE per il download di software.

SISTEMI A DISCHI RIDONDANTI

Un'altra questione importante da discutere quando si definisce una specifica del server è la ridondanza. Esistono diversi metodi per migliorare l'affidabilità di un sistema di dischi multidisco. La maggior parte di questi schemi di ridondanza sono varianti di RAID (acronimo di "Redundant Array of Inexpensive or Independent Disks"). La specifica RAID originale è stata progettata per sostituire grandi e costosi dischi mainframe e minicomputer con array di dischi piccoli ed economici progettati per minicomputer, da cui la parola "economico". Sfortunatamente, raramente vedi qualcosa di poco costoso nei sistemi RAID.

RAID è una serie di implementazioni di array di dischi ridondanti per fornire diversi livelli di protezione e velocità di trasferimento dati. Poiché RAID prevede l'uso di array di dischi, SCSI è l'interfaccia migliore da utilizzare poiché può supportare fino a 15 dispositivi. Ci sono 6 livelli RAID: da zero al quinto. Sebbene alcuni produttori pubblicizzino i propri schemi di ridondanza che chiamano RAID-6, RAID-7 o versioni successive. (RAID-2 e RAID-4 non sono su server di rete, quindi non ne parleremo.)

Di tutti i livelli RAID, zero ha le prestazioni più elevate e la minima sicurezza. Si presuppone che tu abbia almeno due dispositivi e che scrivi i dati su entrambi i dischi sincronizzati, mentre i dischi sembrano un dispositivo fisico. Il processo di scrittura dei dati su più dischi è chiamato drive spanning e il metodo effettivo di scrittura di questi dati è chiamato data striping. Con lo striping, i dati vengono scritti su tutti i dischi blocco per blocco; questo processo è chiamato interleaving di blocchi. La dimensione del blocco è determinata dal sistema operativo, ma in genere varia da 2 KB a 64 KB. A seconda della progettazione del controller del disco e dell'HBA, queste scritture sequenziali potrebbero sovrapporsi, con conseguente aumento delle prestazioni. Ad esempio, RAID-0 da solo può migliorare le prestazioni, ma non fornisce protezione contro i guasti. Se un'unità si guasta, l'intero sottosistema si guasta, provocando solitamente una perdita completa di dati.

Una variante dell'interleaving dei dati è la dispersione dei dati. Come per lo striping, i dati vengono scritti in sequenza su più dischi che si riempiono. Tuttavia, a differenza dello striping, non è necessario scrivere su tutti i dischi; se il disco è occupato o pieno, i dati possono essere scritti sul successivo disco disponibile: ciò consente di aggiungere dischi a un volume esistente. Come lo standard RAID-0, la combinazione della popolazione del disco con lo striping dei dati migliora le prestazioni e aumenta le dimensioni del volume, ma non fornisce protezione contro i guasti.

RAID-1, noto come mirroring del disco, prevede l'installazione di coppie di dischi identici, in cui ogni disco della coppia è un'immagine speculare dell'altro. In RAID-1, i dati vengono scritti su due coppie di dischi identiche o quasi identiche: quando, ad esempio, un disco si guasta, il sistema continua a funzionare con un disco con mirroring. Se i dischi con mirroring condividono un HBA comune, le prestazioni di questa configurazione, rispetto a un singolo disco, saranno inferiori, poiché i dati devono essere scritti in sequenza su ciascun disco.

Novell ha ristretto la definizione di mirroring e ha aggiunto il concetto di duplexing. Secondo la terminologia Novell, il mirroring si riferisce a coppie di dischi quando sono connesse a un server o computer tramite un singolo HBA, mentre la duplicazione si riferisce a coppie di dischi con mirroring collegate tramite HBA separati. La ridondanza fornisce ridondanza per l'intero canale del disco, inclusi HBA, cavi e dischi, e fornisce alcuni miglioramenti delle prestazioni.

RAID-3 richiede almeno tre unità identiche. Questa viene spesso definita tecnologia "n meno 1" (n-1) perché la capacità massima del sistema è data dal numero totale di unità nell'array (n) meno un'unità per parità. RAID-3 utilizza un metodo di scrittura chiamato bit interleaving, in cui i dati vengono scritti bit per bit su tutti i dischi. Per ogni byte scritto sugli n-dischi, viene scritto un bit di parità nel "disco di parità". Questo è un processo estremamente lento perché prima che le informazioni sulla parità possano essere generate e scritte sul "disco di parità", i dati devono essere scritti su ciascuno degli n dischi dell'array. È possibile aumentare le prestazioni di RAID-3 sincronizzando i meccanismi di rotazione del disco in modo che funzionino rigorosamente al passo. Tuttavia, a causa dei limiti delle prestazioni, l'uso di RAID-3 è diminuito drasticamente e oggi vengono venduti pochissimi prodotti server basati su RAID-3.

RAID-5 è l'implementazione più popolare di RAID nel mercato dei server di rete. Come RAID-3, richiede almeno tre dischi identici. Tuttavia, a differenza di RAID-3, RAID-5 esegue lo striping dei blocchi di dati senza utilizzare un disco dedicato per la parità. Sia i dati che il checksum vengono scritti sull'intero array. Questo metodo consente letture e scritture indipendenti sul disco e consente al sistema operativo o al controller RAID di eseguire più I/O simultanei.

Nelle configurazioni RAID-5, si accede al disco solo quando le informazioni oi dati sulla parità vengono letti/scritti da esso. Di conseguenza, RAID-5 ha prestazioni migliori rispetto a RAID-3. In pratica, le prestazioni di RAID-5 a volte possono eguagliare o addirittura superare le prestazioni dei sistemi a disco singolo. Questo miglioramento delle prestazioni, ovviamente, dipende da molti fattori, incluso il modo in cui viene implementato l'array RAID e le capacità native del sistema operativo del server. RAID-5 fornisce anche il più alto livello di integrità dei dati di qualsiasi implementazione RAID standard perché sia ​​i dati che la parità sono scritti in forma a strisce. Poiché RAID-5 utilizza lo striping di blocchi anziché lo striping di bit, non vi è alcun vantaggio in termini di prestazioni per la sincronizzazione degli spin.

Alcuni produttori hanno aggiunto estensioni ai loro sistemi RAID-5. Una di queste estensioni è la presenza di un disco "hot spare" integrato nell'array. Se un'unità si guasta, l'hot spare sostituisce immediatamente l'unità di arresto anomalo e copia i dati su se stessa con il ripristino della parità in background. Tuttavia, tieni presente che la ricostruzione di un disco RAID-5 comporta un grave calo delle prestazioni del server. (Per ulteriori informazioni sulle unità hot-swap e hot-spare, vedere le funzionalità dell'unità "Hot" della barra laterale.)

I sistemi RAID possono essere organizzati sia con l'aiuto del software caricato sul server e utilizzando il suo processore per il funzionamento, sia con l'aiuto di un controller RAID specializzato.

I sistemi RAID implementati dal software occupano una quantità significativa di risorse del processore di sistema, nonché la memoria di sistema, il che riduce notevolmente le prestazioni del server. I sistemi RAID software sono talvolta inclusi come funzionalità del sistema operativo (come avviene con Microsoft Windows NT Server) o come componente aggiuntivo di terze parti (come avviene con NetWare e il sistema operativo Macintosh).

I sistemi RAID basati su hardware utilizzano un controller di array RAID dedicato; di solito ha un proprio processore, cache e software ROM per l'I/O del disco e la parità. Avere un controller dedicato per eseguire queste operazioni libera il processore del server per eseguire altre funzioni. Inoltre, poiché il software del processore e dell'adattatore è specificamente ottimizzato per la funzionalità RAID, forniscono prestazioni I/O del disco e integrità dei dati migliori rispetto ai sistemi RAID basati su software. Sfortunatamente, i controller RAID basati su hardware tendono ad essere più costosi dei loro concorrenti basati su software.

SPECCHIATURA, DUPLICAZIONE E RIEMPIMENTO

Alcuni sistemi operativi, inclusi NetWare e Windows NT Server, consentono il mirroring del disco su più canali del disco, fornendo così un ulteriore livello di ridondanza. Come accennato in precedenza, Novell chiama quest'ultimo approccio alla duplicazione del disco. Se combinata con il riempimento del disco, la duplicazione può fornire prestazioni migliori rispetto ai sistemi a disco singolo e generalmente può superare le implementazioni hardware RAID-5. Poiché ciascuna metà di una coppia di dischi con mirroring utilizza un canale del disco separato, le scritture sui dischi, a differenza del caso in cui i dischi si trovano sullo stesso HBA, possono essere scritte contemporaneamente. Anche la duplicazione consente la ricerca divisa, il processo di divisione delle richieste di lettura tra i canali del disco per un'esecuzione più rapida. Questa funzione raddoppia le prestazioni di lettura del disco poiché entrambi i canali ricercano blocchi diversi in parallelo dallo stesso set di dati. Riduce inoltre l'impatto sulle prestazioni durante la scrittura su disco, poiché un canale può leggere i dati mentre l'altro scrive.

NetWare supporta fino a otto canali del disco (alcuni adattatori SCSI forniscono più canali), il che significa che è possibile avere più canali per ogni coppia duplicata. Puoi anche scegliere di organizzare fino a otto canali mirror separati. Windows NT Server fornisce anche il mirroring e la duplicazione basati sul software, ma non supporta ancora le scritture parallele e le ricerche separate.

Ci sono quattro fattori principali da considerare quando si sceglie un sistema a disco ridondante: prestazioni, costi, affidabilità e protezione dai guasti.

In termini di prestazioni, le capacità integrate del sistema operativo del server sono un fattore importante, soprattutto quando entra in gioco la ridondanza del disco. Come affermato in precedenza, la duplicazione del disco NetWare combinata con il riempimento del disco offre prestazioni migliori rispetto al RAID hardware o software. Tuttavia, le prestazioni del RAID hardware sono generalmente superiori a quelle dei servizi di disco incorporati di Windows NT Server. In generale, nel corso degli anni, la tecnologia e le prestazioni dei sistemi RAID sono costantemente migliorate.

Un altro potenziale problema di prestazioni con i sistemi RAID è il ripristino dei dati in caso di disastro. Fino a poco tempo, se un'unità si guastava, era necessario spegnere l'array RAID per ripristinarlo. Inoltre, se si desidera modificare le dimensioni dell'array (aumentare o diminuire la sua capacità), è necessario eseguire un backup completo del sistema, quindi riconfigurare e reinizializzare l'array, cancellando tutti i dati durante questo processo. In entrambi i casi, il sistema non è disponibile per un po' di tempo.

Per risolvere questo problema, Compaq ha sviluppato il controller Smart Array-II, che consente di espandere la capacità di un array senza reinizializzare la configurazione dell'array esistente. Altri produttori, tra cui Distributed Processing Technology (DPT), hanno annunciato che i loro controller svolgeranno funzioni simili in un futuro non troppo lontano. Molti dei nuovi array dispongono di utilità per vari sistemi operativi che possono essere utilizzati per ripristinare l'array dopo aver sostituito un dispositivo danneggiato senza spegnere il server. Tuttavia, tieni presente che queste utilità consumano molte risorse del server e quindi influiscono negativamente sulle prestazioni del sistema. Per evitare questo tipo di difficoltà, il ripristino dell'impianto deve essere effettuato durante le ore non lavorative.

Ci sono state numerose discussioni nelle pubblicazioni del settore e dei fornitori di RAID sulla differenza di costo tra mirroring, duplicazione e implementazioni RAID. Il mirroring e la duplicazione offrono il raddoppio del 100% di dischi e (se duplicati) HBA, mentre le implementazioni RAID hanno un controller HBA e/o RAID più un disco in più rispetto alla capacità che si desidera ottenere. Secondo questi argomenti, RAID è più economico perché il numero di dischi necessari è inferiore. Questo può essere vero se le limitazioni delle prestazioni delle implementazioni RAID software incluse con il sistema operativo, come quelle che si trovano in Windows NT, sono tollerabili per l'utente. Nella maggior parte dei casi, tuttavia, è necessario un controller RAID dedicato per ottenere prestazioni adeguate.

Le unità e gli adattatori SCSI standard sono relativamente economici, mentre un controller RAID di alta qualità può costare fino a $ 4.500. Per determinare il costo del tuo sistema, devi considerare le configurazioni ottimali per tutti i componenti. Ad esempio, se sono necessari circa 16 GB di spazio su disco indirizzabile, è possibile implementare una configurazione con mirroring con due dischi da 9 GB per canale e ottenere una capacità in eccesso. Nel caso del RAID-5, per motivi di prestazioni e affidabilità, è meglio utilizzare cinque unità da 4 GB per aumentare il numero di perni di striping dei dati e quindi le prestazioni complessive dell'array.

Con un sottosistema del disco esterno, una configurazione mirror avrà un costo di circa $ 10.500 per 18 GB di spazio disponibile. Questa cifra si basa sui prezzi al dettaglio effettivi: $ 2000 per un'unità, $ 250 per un HBA e $ 300 per ogni sottosistema di dischi esterni, inclusi i cavi. Un sistema RAID-5 configurato con 16 GB di spazio indirizzabile utilizzando cinque dischi da 4 GB costerà circa $ 12.800. Questa cifra si basa sui prezzi al dettaglio effettivi per un array DPT RAID-5.

Molti sistemi RAID includono componenti "proprietari" progettati dal produttore. Come minimo, i "branded" sono il case e il pannello posteriore. Anche gli HBA e i controller RAID sono spesso proprietari. Alcuni produttori utilizzano anche supporti e pneumatici non standard per i dischi. Qualcuno li fornisce separatamente a un prezzo ragionevole, qualcuno - solo insieme al disco e, di regola, a un prezzo elevato. Quest'ultimo approccio può essere costoso quando è necessario riparare o espandere il sistema. Un altro modo in cui il fornitore ti porta in un angolo è fornire l'amministrazione del disco e il software di monitoraggio che funziona solo con componenti specifici. Evitando componenti non standard quando possibile, i costi possono essere generalmente contenuti.

Quando si confronta l'affidabilità dei sistemi di dischi ridondanti, ci sono due fattori da considerare: la possibilità di un guasto del sistema o del guasto di uno qualsiasi dei suoi componenti e la possibilità di perdita di dati a causa di un guasto del componente. (Sfortunatamente, RAID o mirroring non possono salvarti dalla causa principale della perdita di dati: l'errore dell'utente!)

P = t / Tc,

dove t è il tempo di funzionamento e Tc è il tempo combinato tra i guasti dei componenti.

In caso di funzionamento senza guasti per un anno (8760 ore) e un Tc di un ipotetico disco di 300.000 ore, la probabilità di guasto diventa del 3%, ovvero poco meno di uno su 34. All'aumentare del numero di componenti, la probabilità di il guasto di qualsiasi componente aumenta. Sia il RAID che il mirroring aumentano la possibilità di errore ma riducono la possibilità di perdita di dati.

La tabella 2, tratta dal bollettino Storage Dimensions intitolato "Fault-tolerant Storage Systems for Continuous Networking", mostra la probabilità di guasto calcolata utilizzando la formula precedente rispetto alla probabilità di perdita di dati per quattro dischi imbottiti, un array RAID a cinque dischi e otto dischi con mirroring. (Supponendo che tutte le unità abbiano le stesse dimensioni e che tutti e tre i sistemi forniscano la stessa capacità utilizzabile. Per un bollettino, visitare la pagina Dimensioni di archiviazione: http://www.storagedimensions.com/raidwin/wp-ovrvw.html.)

TABELLA 2 - STIME DI PROBABILITA' DI FALLIMENTO

Sebbene il mirroring combinato con il riempimento dell'unità abbia una probabilità statistica più elevata di guasto del disco, ha anche una probabilità molto inferiore di perdita di dati in caso di guasto di un disco. Inoltre, con un sistema ridondante opportunamente progettato, il tempo di ripristino può essere notevolmente più breve.

Questo esempio non tiene conto di molti fattori. Per ottenere una cifra statisticamente corretta, è necessario calcolare il tempo medio tra i guasti di tutti i componenti del sistema del disco, inclusi HBA, cavi a nastro, cavi di alimentazione, ventole e alimentatori. Naturalmente, questi calcoli dicono solo cosa può accadere data l'affidabilità dei componenti proposti, ma non è affatto necessario che ciò avvenga.

Quando si sceglie un sistema a disco, è necessario sapere chiaramente quali componenti non sono duplicati. Nei sistemi RAID, questo può includere HBA, controller RAID, alimentatori, cavi di alimentazione e cavi a nastro. Uno dei vantaggi della duplicazione con sottosistemi di dischi separati su ciascun canale è l'eliminazione della maggior parte dei singoli punti in cui possono verificarsi guasti.

CONCLUSIONE

In generale, i dispositivi SCSI sono una scelta migliore per un sottosistema di dischi del server rispetto alle unità IDE o EIDE. È facile ottenere unità SCSI fino a 9 GB per unità, mentre le unità EIDE di oggi hanno una capacità massima di circa 2,5 GB. Con più HBA dual-link, la capacità SCSI totale può facilmente superare i 100 GB, mentre il limite EIDE è di 10 GB. SCSI ha anche prestazioni migliori; inoltre, SCSI non soffre dei problemi che comporta l'approccio master-slave in IDE/EIDE.

Se è necessaria la ridondanza del disco, sono disponibili diverse opzioni. La ridondanza Novell NetWare combinata con il riempimento del disco offre prestazioni eccellenti e protezione dai guasti. Anche il RAID basato su hardware è una buona scelta, ma in genere ha prestazioni inferiori e costi più elevati. Se stai usando Windows NT e le prestazioni sono importanti per te, allora il RAID hardware potrebbe essere la soluzione migliore.

Patrick Corrigan è Presidente e Senior Consultant/Analyst presso The Corrigan Group, una società di consulenza e formazione. Può essere contattato a: [email protetta] o tramite Compuserve: 75170.146. Mickey Applebaum è Senior Network Consultant presso GSE Erudite Software. Può essere contattato a: [email protetta]

INTRODUZIONE ALLE FUNZIONI DEL SOTTOSISTEMA DEL DISCO

Funzioni "calde" dei sottosistemi del disco

I termini hot-swap, hot spare e hot-rebuild, ampiamente utilizzati per descrivere le funzioni specifiche dei sottosistemi del disco, sono spesso fraintesi.

"Hot Swap" è una funzione che consente di rimuovere un disco guasto dal sottosistema del disco senza arrestare il sistema. Il supporto hot swap è una funzionalità hardware del sottosistema del disco, non RAID.

Nei sistemi hot-swap, i dischi rigidi sono generalmente montati su slitte che consentono ai pin di messa a terra tra l'unità e lo chassis di rimanere collegati più a lungo rispetto alle linee di alimentazione e del controller. Ciò protegge l'azionamento da danni causati da scariche elettrostatiche o archi elettrici tra i contatti. I dischi sostituibili a caldo possono essere utilizzati sia negli array RAID che nei sistemi di dischi con mirroring.

"Ripristino a caldo" si riferisce alla capacità del sistema di ripristinare automaticamente la configurazione del disco originale dopo la sostituzione di un disco guasto.

Gli hot spare sono integrati in un array RAID e in genere vengono lasciati inattivi finché non sono necessari. A un certo punto, dopo che l'hot spare ha sostituito l'unità guasta, è necessario sostituire l'unità guasta e riconfigurare l'array.

Un sistema di dischi sostituibili a caldo con dischi di riserva a caldo non ha necessariamente la capacità di essere ripristinati a caldo. "Hot Swap" consente semplicemente di rimuovere/installare un'unità in modo rapido, sicuro e semplice. Un "hot spare" sembrerebbe fornire una "ricostruzione a caldo" in quanto consente di sostituire immediatamente un'unità guasta in un array RAID, ma l'unità guasta deve ancora essere sostituita prima di dover dare un comando di ricostruzione. Oggi, tutti i sistemi RAID disponibili sulla piattaforma PC richiedono un certo livello di intervento da parte dell'utente per iniziare il ripristino dei dati, almeno a livello di caricamento del modulo NLM sul server NetWare o premendo il pulsante di avvio nel menu dell'applicazione NT Server.



Quando si parla di risorse del sottosistema del disco, ce ne sono tre: la quantità di spazio, la velocità di lettura e scrittura in MB/s e la velocità di lettura-scrittura nel numero di operazioni di input/output al secondo (Input/Output per secondo, IOPS o semplicemente I/O).

Parliamo prima del volume. Darò considerazioni che dovrebbero essere guidate da e un esempio del calcolo.

Le considerazioni sono le seguenti:

Lo spazio su disco è occupato dai file del disco della macchina virtuale stessi. Pertanto, è necessario capire di quanto spazio hanno bisogno;

Se prevediamo di utilizzare i dischi sottili per tutta o parte della VM, allora dovremmo pianificare il loro volume iniziale e la crescita successiva (di seguito, per dischi sottili si intende il tipo corrispondente di file vmdk, ovvero la funzione di thin provisioning nell'ESX (i ) implementazione) Il fatto è che la funzionalità di thin provisioning può essere implementata su un sistema di storage indipendentemente da ESX(i), e non intendo la funzionalità dei sistemi di storage);

Per impostazione predefinita, per ogni macchina virtuale, l'hypervisor crea un file di paging di dimensioni uguali alla sua RAM. Questo file di paging si trova nella cartella VM (predefinita) o su un LUN separato;

Se prevedi di utilizzare le istantanee, dovresti anche pianificare un posto per loro. Si possono prendere come punto di partenza le seguenti considerazioni:

Se gli snapshot esisteranno per un breve periodo dopo la creazione, ad esempio solo per il backup, riserviamo loro il dieci percento della dimensione del disco della VM;

Se le istantanee verranno utilizzate con un'intensità media o imprevedibile, allora ha senso che depongano circa il 30% della dimensione del disco della macchina virtuale;

Se gli snapshot per le macchine virtuali vengono usati attivamente (che è rilevante negli scenari in cui le macchine virtuali vengono utilizzate per il test e lo sviluppo), la quantità da esse occupata può essere diverse volte maggiore della dimensione nominale dei dischi virtuali. In questo caso, è difficile dare consigli esatti, ma il raddoppio delle dimensioni di ciascuna VM può essere preso come punto di partenza. (Di seguito, uno snapshot si riferisce alla funzionalità corrispondente di ESX(i). Il fatto è che gli snapshot possono essere implementati su un sistema di storage indipendentemente da ESX(i), e non intendo la funzionalità dei sistemi di storage.)

Una formula di esempio è simile a questa:

Quantità di spazio per un gruppo di VM = Numero di VM x (dimensione del disco x T +

Dimensione disco x S + Dimensione memoria - Dimensione memoria x R).

T - coefficiente di dischi sottili. Se tali dischi non vengono utilizzati, è uguale a 1. Se lo sono, è difficile fornire una stima astratta, a seconda della natura dell'applicazione nella VM. In sostanza, i dischi sottili occupano meno spazio di archiviazione rispetto alla dimensione nominale del disco. Quindi - questo coefficiente mostra quale proporzione della dimensione nominale è occupata dai dischi delle macchine virtuali;

S è la dimensione delle istantanee. 10/30/200 per cento, a seconda della durata dell'uso continuo;

R è la percentuale di memoria riservata. La memoria riservata non si adatta al file di scambio, il file di scambio viene creato in una dimensione inferiore. La sua dimensione è uguale a: la quantità di memoria VM meno la quantità di memoria riservata.

Dati di input stimati, ad esempio, vedere la tabella. 1.3.

Tabella 1.3. Dati per la pianificazione del volume del sottosistema del disco

Otteniamo una stima del volume richiesto:

Gruppo infrastruttura - 15 x (20 + 20 x 10% + 2 - 2 x 0) = 360 GB;

Server delle applicazioni - 20 x (40 + 40 x 10% + 2 - 2 x 0) = 920 GB;

Server critici - 10 x (100 + 100 x 10% + 6 - 6 x 0,5) = 1130 GB;

Test e temporaneo - 20 x (20 x 30% + (20 x 30%) x 200% + 2 - 2 x 0) = = 400 GB.

Pertanto, possiamo creare due LUN da 1,4 TB ciascuna e distribuire tra loro macchine virtuali approssimativamente in modo uguale. Oppure crea 4-5 LUN da 600800 GB ciascuna e posiziona macchine di gruppi diversi su LUN differenti. Entrambe le opzioni (e quelle intermedie) sono accettabili. La scelta tra di loro viene effettuata in base ad altre preferenze (ad esempio organizzative).

Un'altra risorsa del sottosistema del disco è la prestazione. Nel caso delle macchine virtuali, la velocità MB/s non è un criterio affidabile, perché quando un numero elevato di VM accede agli stessi dischi, gli accessi sono incoerenti. Per un'infrastruttura virtuale, una caratteristica più importante è il numero di operazioni di input/output (IOPS, Input/Output al secondo). Il sottosistema del disco della nostra infrastruttura deve consentire più di queste operazioni rispetto a quelle richieste dalle macchine virtuali.

Qual è il percorso dell'accesso del sistema operativo guest ai dischi fisici nel caso generale:

1. Il sistema operativo guest trasmette la richiesta al driver del controller SAS/SCSI (che emula l'hypervisor).

2. Il driver lo passa al controller virtuale SAS/SCSI stesso.

3. L'hypervisor lo intercetta, lo combina con le richieste di altre VM e passa la coda comune al driver del controller fisico (HBA in caso di FC e hardware iSCSI o controller Ethernet in caso di NFS e software iSCSI).

4. Il driver invia la richiesta al controller.

5. Il titolare lo trasferisce al sistema di archiviazione, tramite una rete dati.

6. Il controller di archiviazione accetta la richiesta. Questa richiesta è un'operazione di lettura o scrittura da alcuni volumi LUN o NFS.

7. Una LUN è una "partizione virtuale" su un array RAID composto da dischi fisici. In altre parole, la richiesta viene passata dal controller di archiviazione alle unità in quell'array RAID.

Dove può essere il collo di bottiglia del sottosistema del disco:

Molto probabilmente, a livello di dischi fisici. Il numero di dischi fisici nell'array RAID è importante. Più sono, meglio è possibile parallelizzare le operazioni di lettura-scrittura. Inoltre, più veloci (in termini di I/O) sono i dischi stessi, meglio è;

Diversi livelli di array RAID hanno prestazioni diverse. È difficile fornire consigli completi, perché, oltre alla velocità, i tipi di RAID differiscono anche in termini di costi e affidabilità. Tuttavia, le considerazioni di base sono:

RAID-10 è l'uso dello spazio su disco più veloce, ma meno efficiente, con una riduzione del 50% per il supporto della tolleranza agli errori;

RAID-6 è il più affidabile, ma soffre di basse prestazioni di scrittura (30-40% di RAID-10 al 100% di scrittura), sebbene la lettura sia veloce come RAID-10;

RAID-5 è un compromesso. Le prestazioni in scrittura sono migliori di RAID-6 (ma peggiori di RAID-10), l'efficienza di archiviazione è maggiore (la capacità di un solo disco viene presa per la tolleranza agli errori). Ma RAID-5 soffre di seri problemi associati a un lungo ripristino dei dati dopo un guasto del disco nel caso dei moderni dischi ad alta capacità e dei gruppi RAID di grandi dimensioni, durante i quali rimane non protetto da un altro guasto (trasformandosi in RAID-0) e perde drammaticamente in prestazione;

RAID-0, o "RAID with Zero Fault Tolerance", non può essere utilizzato per memorizzare dati significativi;

Impostazioni del sistema di archiviazione, in particolare la cache del controller di archiviazione. Lo studio della documentazione del sistema di accumulo è importante per la sua corretta configurazione e funzionamento;

Rete dati. Soprattutto se prevedi di utilizzare l'archiviazione IP, iSCSI o NFS. In nessun modo voglio dire che non è necessario usarli: tali sistemi sono stati sfruttati a lungo e da molti. Quello che sto dicendo è che dovresti cercare di assicurarti che il carico trasferito all'ambiente virtuale abbia una larghezza di banda di rete sufficiente con la larghezza di banda pianificata.

La velocità risultante del sottosistema del disco deriva dalla velocità dei dischi e dall'algoritmo per parallelizzare gli accessi al disco da parte del controller (ovvero il tipo di RAID e funzioni simili). Anche il rapporto tra il numero di operazioni di lettura e il numero di operazioni di scrittura è importante: prendiamo questo rapporto dalle statistiche o dalla documentazione per le applicazioni nelle nostre macchine virtuali.

Facciamo un esempio. Supponiamo che le nostre VM creeranno un carico fino a 1000 IOps, il 67% dei quali sarà in lettura e il 33% in scrittura. Di quanti e quali dischi avremo bisogno in caso di utilizzo di RAID-10 e RAID-5?

In un array RAID-10, tutti i dischi sono coinvolti nelle operazioni di lettura contemporaneamente e solo la metà è coinvolta nelle operazioni di scrittura (perché ogni blocco di dati viene scritto su due dischi contemporaneamente). In un array RAID-5, tutti i dischi partecipano alla lettura, ma ogni blocco viene scritto con un sovraccarico associato al calcolo e alla modifica del checksum. Si può pensare che una singola scrittura su un array RAID-5 causi quattro scritture direttamente sui dischi.

Scrittura - 1000 x 0,33% = 330 x 2 (poiché solo la metà dei dischi è coinvolta nella scrittura) = 660 IOps.

In totale, abbiamo bisogno di 1330 IOps dai dischi. Se dividiamo 1330 per il numero di IOps dichiarato nelle caratteristiche prestazionali di un disco, otteniamo il numero richiesto di dischi in un array RAID-10 per il carico specificato.

Lettura - 1000 x 0,67% = 670 IOps;

Scrittura - 1000 x 0,33% = 330 x 4 = 1320 IOps.

In totale, abbiamo bisogno di 1990 IOps dai dischi.

Secondo la documentazione del produttore, un disco rigido SAS 15k gestisce 150-180 IOps. Un'unità SATA 7.2k - 70-100 IOps. Tuttavia, c'è un'opinione secondo cui è meglio concentrarsi su numeri leggermente diversi: 50-60 per SATA e 100-120 per SAS.

Concludiamo l'esempio.

Quando si utilizza RAID-10 e SATA, sono necessari 22-26 dischi.

Quando si utilizza RAID-5 e SAS, sono necessari 16-19 dischi.

È ovvio che i calcoli che ho fatto sono abbastanza approssimativi. I sistemi di archiviazione utilizzano vari tipi di meccanismi, principalmente la memorizzazione nella cache, per ottimizzare il funzionamento del sistema di archiviazione. Ma come punto di partenza per comprendere il processo di dimensionamento del sottosistema del disco, queste informazioni sono utili.

Dietro le quinte ci sono i metodi per ottenere il numero di IOPS necessari per la macchina virtuale e il rapporto di lettura-scrittura. Per un'infrastruttura esistente (durante lo spostamento su macchine virtuali), questi dati possono essere ottenuti utilizzando speciali strumenti di raccolta delle informazioni, come VMware Capacity Planner. Per l'infrastruttura pianificata - dalla documentazione per le applicazioni e dalla tua esperienza.

I sottosistemi di dischi e file di un computer di solito non sono oggetto di particolare attenzione da parte degli utenti. Il Winchester è una cosa abbastanza affidabile e funziona come se fosse da solo, senza attirare l'attenzione di un utente normale.

Padroneggiando le tecniche di base per lavorare con file e cartelle, un tale utente le porta al pieno automatismo, senza pensare all'esistenza di strumenti aggiuntivi per la manutenzione di un disco rigido. La gestione del disco è completamente spostata sul sistema operativo.

Le difficoltà iniziano quando il file system mostra un chiaro degrado delle prestazioni o quando inizia a non funzionare. Un altro motivo per approfondire questo argomento: installare più "viti" su un PC contemporaneamente.

Come ogni dispositivo complesso, un disco rigido necessita di una manutenzione regolare. Windows 7, sebbene si occupi di alcuni di questi problemi, non è in grado di risolvere tutti i problemi da solo. In caso contrario, i "freni" sono garantiti nel tempo. Come minimo, devi essere in grado di fare le seguenti cose:

  • Pulisci il file system dalla spazzatura. Il concetto di spazzatura include file temporanei, cookie del browser che si sono diffusi, informazioni duplicate, ecc.
  • Deframmenta il tuo disco rigido. Il file system di Windows è costruito in modo tale che ciò che l'utente vede nel suo insieme sono in realtà frammenti separati di file sparsi sulla superficie magnetica del disco rigido, uniti in una catena: ogni frammento precedente conosce il successivo. Per leggere il file nel suo insieme, è necessario mettere insieme queste parti, per le quali è necessario eseguire un gran numero di cicli di lettura da diversi punti della superficie. La stessa cosa accade durante la registrazione. La deframmentazione ti consente di raccogliere tutti questi pezzi in un unico posto.
  • Visualizza e correggi le informazioni sulla sezione.
  • Essere in grado di aprire l'accesso a file e cartelle nascosti e di sistema.
  • Se necessario, essere in grado di lavorare con più "viti" contemporaneamente.

Ed eseguire anche altre azioni utili. Nella nostra nota, non discuteremo l'intera gamma di questi problemi, ma ci soffermeremo solo su alcuni.

Come leggere le informazioni sulla partizione?

Per chi non lo sapesse, diamo una spiegazione: in Windows esiste uno "scatto".

È un eseguibile .msc che funziona come un normale exe. Tutti gli snap-in hanno un'interfaccia uniforme e sono basati sulla tecnologia COM, la base della struttura interna di questo sistema operativo.

Anche la finestra Gestione disco è un gioco da ragazzi. Puoi eseguirlo digitando nella finestra "Esegui" il suo nome diskmgmt.msc come mostrato nella figura seguente:

Di conseguenza, avremo una finestra dello snap-in stesso con l'intestazione "Gestione disco". Ecco come appare questa app:

Questa interfaccia è intuitiva e semplice. Nel pannello superiore della finestra, vediamo un elenco di tutti i volumi (o partizioni) sulla "vite" con relative informazioni su di essi, come ad esempio:

  • Nome della sezione.
  • Tipo di sezione.
  • La sua piena capacità.
  • Il suo stato (diverse sezioni possono avere uno stato diverso).
  • Spazio libero residuo espresso in gigabyte e percentuale sul totale.

E altre informazioni. Il pannello inferiore contiene un elenco di unità e partizioni. È da qui che puoi eseguire operazioni con volumi e unità. Per fare ciò, fai clic con il pulsante destro del mouse sul nome del volume e seleziona un'operazione specifica dal sottomenu "Azioni".

Il vantaggio principale dell'interfaccia è che tutto è raccolto qui in un mucchio: non è necessario vagare attraverso diversi menu e finestre per portare a termine i nostri piani.

Operazioni a volume

Analizziamo alcune operazioni non ovvie con le partizioni. Per prima cosa, discutiamo della transizione dal formato MBR al formato GPT. Entrambi questi formati corrispondono a diversi tipi di bootloader. MBR è un formato di bootloader classico ma ormai obsoleto.

Ha limitazioni esplicite sia nel volume del volume (non più di 2 TB) che nel numero di volumi: non sono supportati più di quattro. Non confondere volume e sezione: questi sono concetti in qualche modo diversi l'uno dall'altro. Leggi le loro differenze su Internet. Il formato GPT si basa sulla tecnologia GUID e non ha queste limitazioni.

Quindi, se hai un disco di grandi dimensioni, sentiti libero di convertire MBR in GPT. È vero, in questo caso, tutti i dati sul disco verranno distrutti: dovranno essere copiati in un'altra posizione.

La tecnologia di virtualizzazione è permeata ovunque. Non ha nemmeno bypassato il file system. Se lo desideri, puoi creare e montare i cosiddetti "dischi virtuali".

Tale "dispositivo" è un normale file .vhd e può essere utilizzato come un normale dispositivo fisico, sia per la lettura che per la scrittura.

Ciò apre ulteriori opportunità per la catalogazione delle informazioni. Questo conclude la nostra storia. La gestione del disco in Windows 7 è un argomento abbastanza ampio e puoi scoprire molte nuove cose immergendoti in esso.

Condividere