Op dinsdag 11 december 2001 11:10 schreef Twarp het volgende:
Stelletje noobs!!!
Omdat je 2 schijven aanspreekt heb je alleen maar de access time van ruwweg 1 schijf!!! Terwijl hij de ene schijf benaderd geeft ie ook meteen de opdracht aan de andere om zijn data klaar te zetten. Dit heeft tot gevolg dat wanneer de ene leest de andere bezig is om alle data klaar te zetten. En zo deze tijd gebruikt om ook zijn access daar in te verwerken!!!
Natuurlijk zijn er schijven waarbij het niet rendabel is om dit te doen, maar in het algemeen heb je er wel profijt van.
Leuk systeem, maar om dan nog noobs te gaan roepen...\
zoals al eerder uitgelegd, als je data wilt benaderen moeten bij raid0 de gedeeltes van alle schijven afkomen. Bestanden zijn opgedeeld in blokken, en van elk bestand staan verschillende blokken op verschillende fysieke harddisks.
Dit houdt dus in dat je een bestand pas kunt lezen als elk blok beschikbaar is, oftewel elke schijf benaderd.
Zoals iemand boven jou al heeft uitgelegd, de ene schijf kan precies klaarstaan terwijl de andere schijf nog 3/4 ronde moet draaien. Ben je mooi de pineut.
Er wordt van alle schijven gelijktijdig gelezen, niet om-en om (ookal zijn het opeenvolgende blokken). De block/stripesize is heus niet groot genoeg om het verschil in accesstijden te compenseren.
In jouw woorden:
laat ik een stripesize van 4MB instellen, dan heeft mn andere harddisk tijd genoeg om een rondje te draaien.
Bovendien, lees eens over de verwerking van ide-commando's in de SCSIFAQ van de een of andere nieuwsgroep!
Daar staat dat alle commando's die de controller en de schijven moeten uitvoeren puur sequentieel gaan, oftewel eerst aan het ene verzoek voldoen voordat een ander verzoek gedaan of uitgevoerd kan worden.
Dientengevolge gaat jouw punt van:
"geef lees hd1 uit en laat hd2 klaar gaan staan."
niet op!, aangezien hd1 eerst zijn opdracht moet hebben uitgevoerd, voordat hd2 uberhaupt iets kan doen.
SCSI daarentegen kan zowel commando's sturen aan verschillende apparaten tegelijk (disconnects), als het in een andere volgorde verwerken van de opdrachten.
Het voorbeeld hierbij is een tapestreamer die een backup maakt.
Als ik bij IDE het commando geef dat de tapestreamer een backup moet gaan maken, en de cdromdrive die aan hetzelfde kanaal hangt ook een opdracht geef, kan ik lang wachten...
Bij SCSI gaat de cdrom dan even tussendoor.
Hoe dan ook, jouw punt klopt niet, tenzij je bedoelt:
accestijd van ruwweg 1 schijf, en altijd in het ergste geval.
De kans dat alle koppen van alle harddisks die opgenomen zijn in de raid0 set goed staan, is vrij klein, en dus moet er altijd wel gewacht worden totdat alle koppen goed zijn, en dus heb je altijd te maken met de meest nadelige toegangstijd van een enkele harddisk.