banner op de binnenpagina

Twee schrijfmodi voor de cache

Sep 28, 2023

De RAID-controller heeft twee opties voor het verwerken van schrijf-IO op het hoogste niveau, als volgt:

 

1.WriteBack-modus: wanneer de gegevens vanaf de bovenste laag worden verzonden, informeert de RAID-controller de host onmiddellijk nadat I0 is voltooid nadat deze in de cache is opgeslagen, zodat de host de volgende IO kan uitvoeren zonder te wachten. Op dit moment bevinden de gegevens zich in de cache van de RAID-controllerkaart, maar niet echt naar de schijf geschreven, die een bufferrol speelt.

 

De RAID-controller wacht tot de tijd inactief is en schrijft één voor één naar schijf, of schrijft in bulk naar schijf, of zet de IO in de wachtrij (vergelijkbaar met de wachtrijtechniek op schijf) zodat een optimalisatie-algoritme efficiënt naar schijf kan schrijven. Omdat de schrijfsnelheid van de schijf laag is, misleidt de RAID-controller in dit geval de host, maar krijgt hij een hoge snelheid, namelijk "houd het makkelijke bovenaan, houd de problemen voor jezelf." Dit heeft een fatale tekortkoming, dat wil zeggen dat zodra de stroom onverwachts uitvalt, de gegevens in de cache op de RAID-kaart allemaal verloren zullen gaan, en op dit moment denkt de host dat IO is voltooid, dus de bovenste en onderste lagen zullen inconsistentie veroorzaken , zullen de gevolgen zeer ernstig zijn.

 

Als gevolg hiervan hebben kritische toepassingen zoals databases hun eigen maatstaven voor consistentie. Daarom moet de high-end RAID-kaart de batterij gebruiken om de cache te beschermen, zodat in het geval van een accidentele uitschakeling de batterij de cache van stroom kan blijven voorzien om ervoor te zorgen dat de gegevens niet verloren gaan. Wanneer de RAID-kaart opnieuw wordt ingeschakeld, schrijft deze eerst de openstaande IO van de cache naar schijf.

 

2.WriteThrough-modus: Dit is de writethrough-modus, d.w.z. de bovenste IO. Pas nadat de gegevens daadwerkelijk door de RAID-controller naar schijf zijn geschreven, wordt de host op de hoogte gesteld van de voltooiing van IO, wat een hoge betrouwbaarheid garandeert. In dit geval is de versnelling van de cache niet langer nuttig, maar is de buffering nog steeds effectief.

 

Naast dat het een schrijfcache is, is de leescache ook erg belangrijk. Caching is een complex onderwerp en heeft een complex mechanisme, waarvan er één PreFctch of prefetching wordt genoemd, waarbij gegevens op schijf worden gelezen die "waarschijnlijk" door de host kunnen worden benaderd, vervolgens in de cache voordat de host een lees-IO-verzoek heeft uitgegeven . Hoe berekenen we de mogelijkheid?

 

In feite wordt ervan uitgegaan dat de volgende keer dat de host-IO een groot aantal kinderen de gegevens zal lezen op de schijflocatie naast de gelezen gegevens deze keer. Deze aanname is erg handig voor sequentiële IO-leesbewerkingen, zoals het lezen van gegevens die logisch aaneengesloten zijn, zoals FTP-services voor de overdracht van grote bestanden, video-on-demand-services, enzovoort, wat toepassingen zijn voor het lezen van grote bestanden.

 

Aan de andere kant, als veel kleine bestanden ook aaneengesloten op schijf worden opgeslagen, zal caching de prestaties aanzienlijk verbeteren, omdat het lezen van kleine bestanden een hoge IOPS vereist, en zonder caching zal het lang duren om op het hoofd te vertrouwen om IO te voltooien. elke keer.

 

Er is ook een caching-algoritme, dat niet gebaseerd is op prefetching, maar op de veronderstelling dat de volgende keer dat de host IO doet, deze ook de gegevens van de laatste of meerdere (recente) lezingen kan lezen.

 

Deze aanname is compleet anders dan prefetchen. Nadat de RAID-controller een stukje gegevens in de cache heeft gelezen en de gegevens worden gewijzigd door de schrijf-IO van de host, schrijft de controller deze niet onmiddellijk naar schijf voor opslag. Het blijft in de cache, omdat het ervan uitgaat dat de host de gegevens in de nabije toekomst opnieuw kan lezen. Dan is het niet nodig om naar de schijf te schrijven en de cache te verwijderen, en dan te wachten tot de host het heeft gelezen en vervolgens van de schijf naar de cache te lezen. Het is beter om statisch te remmen, gewoon in de cache te blijven, te wachten tot de host om te "gooien" is de frequentie niet hoog, schrijf dan naar schijf.

 

Tips:Medium en high-end RAID-kaarten hebben over het algemeen meer dan 256 MB RAM als cache.

 

Ontketen de kracht van RAID Ervaar hoogwaardige gegevensopslag met onze geavanceerde RAID-kaarten. Vertrouw op onze ruim 10 jaar expertise.STOR Technologie Limited levert u tevens een groot aantal originele hoogwaardige producten, zoals: lsi9480 8i8e, lsi 9361 4i, lsi 9341 8i enzovoort, drie jaar garantie en een onovertroffen fabrieksprijs om uw zorgen weg te nemen.

Hulp nodig? laat een bericht achter

laat een bericht achter
Als u geïnteresseerd bent in onze producten en meer details wilt weten, laat dan hier een bericht achter, we zullen u zo snel mogelijk antwoorden.
indienen
NEEM CONTACT MET ONS OP #
+86-755-83677183

Onze uren

ma 21/11 - wo 23/11: 09.00 - 20.00 uur
Do 24/11: gesloten - Happy Thanksgiving!
Vr 25/11: 08.00 - 22.00 uur
Za 26/11 - Zo 27/11: 10.00 - 21.00 uur
(alle uren zijn Eastern Time)

Thuis

Producten

whatsApp

contact