Systeembetrouwbaarheid is zo essentieel, dat er hele industrieën aan zijn gewijd. Raid-systemen zijn een veilige oplossing voor het probleem van schijfstoring. In zo'n geval staat er nog wel data op andere schijven. Mocht er een server- of netwerkstoring optreden, dan treedt er een ander systeem in werking en blijft de opgeslagen data online. Ondanks alle moderne backups en omschakelsystemen zullen echter de bestanden, vanwege de aard van Windows-bestandssystemen, worden gefragmenteerd, Als dit niet wordt beheerst, zal het zeker problemen veroorzaken bij de gebruiker, het netwerk en het hele bedrijf.
Fragmentatie is een ingecalculeerde eigenschap van elk Windows-besturingssysteem, bewust ingebouwd, met als doel de schijfruimte efficiënter te kunnen gebruiken. Het nadeel ervan is echter dat het de gefragmenteerde bestanden over de hele schijf verspreidt en dat elk Windows-geformatteerd schijfstation, waaronder Raid, en ook gespiegelde systemen en backups te maken hebben met de schadelijke effecten.
In de it-wereld geldt het feit dat fragmentatie de prestaties belemmert als ‘dat weet iedereen'. Maar wat niet iedereen weet is dat fragmentatie ook invloed heeft op de systeembetrouwbaarheid. Vanaf het moment van opstarten tot het moment van afsluiten kan een gefragmenteerd schijfstation problemen veroorzaken met bijna elke actie op systeemniveau in Windows. Een goed voorbeeld hiervan is het feit dat het Windows-besturingssysteem continu het schijfgebaseerde pagefile gebruikt. Daarom is een betrouwbare schijfwerking essentieel voor een betrouwbaar systeem. Fragmentatieproblemen met het pagefile kunnen virtuele geheugenfouten veroorzaken. Ook kan een zeer gefragmenteerde Master File Table (de bestandstoewijzingstabel die wordt gebruikt door NTFS, het bestandssysteem van Windows) het al uitgebreide opstartproces van een Windows-computer vertragen.
SAN-opslag en NTFS
Tegenwoordig is het gebruik van san's de norm geworden om aan opslagvereisten te voldoen. San's maken gebruik van een geclusterd/san-bestandssysteem om schijfarrays in een virtueel opslagvolume samen te voegen. Dit is geen NTFS, maar eerder eigen software, geleverd door een san-hardware- of -softwareleverancier. Dit bestandssysteem draait eigenlijk 'onder NTFS', het vervangt het niet. Als we bedenken dat elk bestandssysteem een 'virtuele' schijf vormt, is het stapelen van de ene virtuele component op de andere (dat wil zeggen het ene bestandssysteem bovenop het andere) goed mogelijk en steeds gangbaarder.
Wat de leverancier van een san-bestandssysteem met zijn bestandssysteem doet, is niet relevant voor NTFS. Wellicht hoeft u het 'san-bestandsssysteem' niet eens te defragmenteren. De expert voor dat bestandssysteem en de bron waar u installatietips, 'best practices' en san i/o-optimalisatiemethodologieën kunt krijgen, is de fabrikant.
Voor wat betreft NTFS, dat wordt nog steeds gefragmenteerd en zorgt dat Windows i/o-aanvragen voor bestanden die naar het san worden gestuurd 'splitst', zodat de prestaties minder worden. Gezien het feit dan san's altijd opslag op blokniveau zijn, weten ze niet welke i/o's bij welke bestanden horen. Ze kunnen de fragmenten van een bestand dus niet intelligent over meerdere schijven verspreiden. Een hele massa aparte i/o-schrijf/leesopdrachten voor gefragmenteerde bestanden (die hoogst waarschijnlijk worden afgewisseld met andere gegevens die gelijktijdig zijn geschreven/gelezen), wordt niet-optimaal verspreid over de schijven in de san-opslagpool, ofwel. dat er meer fragmenten van een bepaald bestand op één schijf worden gezet in plaats van dat ze gelijkmatig over alle schijven worden verdeeld.
San-bestandssysteemleveranciers kunnen optimalisatiestrategieën bieden, zodat het systeem leert gegevens binnen de schijven te verplaatsen – de meeste data-aanvragen worden niet goed uitgebalanceerd tussen de san-spoelen. Over het algemeen gesproken geldt het bovenstaande ook voor striping (Raid). San-ontwerpers of -ontwikkelaars zijn het erover eens dat NTFS-fragmentatie een probleem is en dat geavanceerde defragmentatie belangrijk is ('basis'-defragmenteerprogramma's kunnen het probleem nog erger maken).
Bestandsfragmentatie is ook fysiek een grote belasting voor harde schijven. Er is meer beweging van de schijfkoppen nodig om de data uit de gefragmenteerde bestanden te lezen. Hoe meer beweging van de kop, hoe korter de gemiddelde tijd tussen falen (MTBF), zodat de levensduur van de harde schijf korter wordt.
De oude manier van geplande fragmentatie is in de systemen van tegenwoordig niet meer effectief, vanwege de enorme grootte van schijven en opslagmedia. Uitvoeren van de ingebouwde tool is niet uitgebreid genoeg om de nodige voordelen te behalen en de oorspronkelijke prestaties van uw systemen te laten herleven. Betrouwbaarheid is 24/7 nodig, ongeacht het type backup of opslagtechnologie (Raid, san). Beschikbaarheid van systemen is noodzakelijk, en betrouwbaarheid is het sleutelwoord.
Voorkomen is beter dan genezen
Dus wat is de beste oplossing voor het probleem van fragmentatie op NTFS-niveau? Voorkomen is in ieder geval beter dan genezen. Het is veel beter een bestand intelligent in één blok naar een voldoende groot gebied van aaneengesloten vrije schijfruimte te schrijven dan het op te splitsen in fragmenten. Als Windows een bestand in bijvoorbeeld twintig fragmenten schrijft, gebeurt het volgende: Het eerste fragment van het bestand wordt geschreven naar het NTFS-volume. Dit reist dan door de opslagstack naar de san-controller, die het uitschrijft naar de fysieke schijven in de array. Vervolgens gaat het volgende fragment door de opslagstack, en het volgende en het volgende enzovoort, totdat alle twintig fragmenten door de stack naar het san zijn verplaatst.
Als de Windows Write Driver een bestand echter aan één stuk (niet-gefragmenteerd) zou schrijven, hoeft er slechts één i/o door de opslagstack te reizen. Dit biedt niet alleen prestatievoordeel voor de Windows-machine, maar kan ook helpen i/o-wachtrijen op san-niveau voorkomen en laat de fysieke schijven in de san-array minder hard werken, waardoor ze een langere levensduur hebben.
Naveen Loius, it-consultant bij Diskeeper Corporation Europe
Ik ben geen specialist, maar zet vraagtekens bij enkele beweringen in dit artikel: Zo heb ik nog nooit een gefragmenteerd Windows pagefile gezien en komt dat bij mijn weten ook niet voor.
En volgens mij wordt er pas gefragmenteerd als er niet genoeg aaneengesloten ruimte is, dus dat ntfs op voorhand al fragmenteerd klinkt mij helemaal niet logisch in de oren. En wat doet Linux met een bestand, waar niet genoeg aaneengesloten ruimte voor is…….?
wiki : “In Windows’ default configuration the pagefile is allowed to expand beyond its initial allocation when necessary. If this happens gradually, it can become heavily fragmented which can potentially cause performance problems”
NTFS fragmenteert niet op voorhand, maar fragmentatie is inherent aan dit FS. Dit is nl de NTFS oplossing om bestanden op te slaan als er niet genoeg aaneengelosten.
Hele artikel gaat idd over MS windows, Linux ext3 fragmenteert minder dan FAT/NTFS. Is er geen aangesloten ruimte meer, dan worden blokken gekozen om te schrijven die dichter bij de andere blokken van de betreffende file liggen (dan bij FAT/NTFS)
Een pagefile op een SAN raid zetten? Zelfs bij oudere versies van Windows Server is dat niet echt nodig en zeker niet wenselijk ivm performantie. En in de gevallen dat dit wel nodig zou zijn kun je veel betere technische oplossingen gebruiken.
Als het om prestaties en SAN gaat dan zou toch ook eens goed gekeken moeten worden naar een aantal zaken die vaak vergeten worden zoals blocksize, RAID level, I/O paden enzovoort. Natuurlijk zal zelfs de beste prestatie teruglopen door fragmentatie maar
vaak wordt SAN als een ‘one size fits all’ oplossing ingericht.
Databases en andere I/O intensieve applicaties presteren hiermee slechter dan toen ze nog op DAS liepen. Een tool als SQLIO van Microsoft kan helpen bij het bepalen van de meeste optimale inrichting. Want ik denk dat fragmentatie niet je eerste zorg is als uiteindelijk het aantal IOPS er klein is.
Mbt Windows paging file: In Linux dien je daarvoor een partitie aan te maken en dus van te voren de grootte te plannen. Als je dat ook met Windows doet, zal je ook geen gefragmenteerd Paging File krijgen, want automatische expansie is een instelling (die je dus beter kunt laten)! En waar ik idd nog niet bij stil had gestaan, is de opmerking van Peter: een paging file op een san lijkt ook mij zeer ongebruikelijk. Alle reden om vraagtekens bij dit artikel te zetten….
Het artikel komt mij over als een anti-Windows lobby en daar ben ik eerlijk gezegd wel een beetje klaar mee. De laatste anti-Windows man die ik gesproken had, had zelf al zo’n 8 jaar geen Windows besturingssysteem meer gezien! Ik zeg en vind: Windows en Linux zijn beide prima besturingssystemen.
@BK: Een anti-Windows verhaal van een IT consultant die bij een bedrijf werkt dat een Windows-only oplossing biedt? Waarom zou hij zijn eigen ramen ingooien?
Alleen mauwerd heeft het in een reactie over de verschillende bestandssystemen en hun respectievelijke kwaliteiten.