Definition

Cache-Speicher

Mitarbeiter: Abdo Sharif

Bei Cache-Speicher handelt es sich um einen schnellen Puffer-Speicher, auf das der Mikroprozessor eines Computers schneller zugreifen kann als auf den regulären Arbeitsspeicher (RAM). Wenn der Prozessor Daten verarbeitet, dann schaut dieser zuerst in den Cache-Speicher. Falls er die von einem früheren Aufruf stammenden Daten dort findet, kann eine deutlich zeitraubendere Suche nach diesen Daten in größeren Caches oder im RAM entfallen.

Cache-Speicher wird im Hinblick auf Zugriffszeit und Größe sowie Nähe und Zugriff zum Mikroprozessor auch in Hierarchieebenen durchnummeriert. Je niedriger die Nummer ist, desto schneller (und kleiner) ist der jeweilige Cache. Ein Level-1-Cache (L1-Cache) ist beispielsweise der schnellste, aber auch der kleinste Cache-Speicher, der einem Prozessor zur Verfügung steht.

Ergänzend zum Cache-Speicher kann man auch den RAM selbst als einen Cache-Speicher – in diesem Fall aber für Festplatten – betrachten. Denn sämtliche Inhalte des RAMs stammen zunächst von der Festplatte, wenn Sie Ihren Computer einschalten und das Betriebssystem laden (nämlich in den RAM); ebenso später, wenn Sie neue Anwendungen aufrufen und auf neue Daten zugreifen. Der RAM kann zudem einen speziellen Bereich beinhalten, der als Disk-Cache bezeichnet wird. Dieser enthält die am häufigsten von der Festplatte gelesenen Daten.

Cache Algorithmen

Cache Algorithmen geben Instruktionen, wie der Cache gewartet werden soll. Zu den Cache-Algorithmen gehören unter anderem:

  • Least Frequently Used (LFU) nutzt einen Zähler, um nachzuverfolgen, wie oft ein Eintrag abgerufen wird. Der Eintrag mit den wenigsten Zugriffen wird zuerst entfernt.
  • Least Recently Used (LRU) hält die zuletzt genutzten Daten in der Nähe der Cache-Spitze. Ist das Cache-Limit erreicht, werden die Daten, die weniger zeitnah abgerufen wurden, entfernt.
  • Most Recently Used (MRU) entfernt die zuletzt genutzten Daten zuerst. Dieser Ansatz eignet sich für Szenarien, in denen es wahrscheinlicher ist, dass ältere Daten öfter abgerufen werden.

Cache-Typen

Write-around Cache erlaubt das Schreiben von Schreiboperationen in das Storage und umgeht den Cache. Das verhindert ein Volllaufen des Cache, wenn zahlreiche Schreib-I/Os anfallen. Der Nachteil ist, dass die Daten nicht im Cache sind, bis sie aus dem Storage gelesen werden. Dadurch ist die initiale Leseoperation relativ langsam, da die Daten noch nicht im Cache waren.

Write-through Cache schreibt die Daten in den Cache und in das Storage. Der Vorteil hierbei ist, dass die neugeschriebenen Daten immer im Cache sind und somit schnell gelesen werden können. Der Nachteil liegt darin, dass Schreiboperationen nicht als beendet gelten, bevor sie nicht im Cache und im primären Storage abgelegt wurden. Dadurch entstehen Latenzen bei Schreibprozessen.

Write-back Cache ist dem Write-through Cache ähnlich, da alle Schreiboperationen in den Cache gehen. Der Unterschied ist, dass die Schreiboperation als beendet gilt, wenn die Daten im Cache liegen. Danach werden sie vom Cache in das Storage kopiert. Dieser Ansatz bietet geringe Latenzen für Schreib- und Leseprozesse. Allerdings kann Datenverlust entstehen, wenn die Daten noch nicht im Storage liegen.

Häufige Einsatzgebiete für Cache

Cache-Server: Ein dedizierter Netzwerkserver oder ein Server-Service sichert Webseiten oder andere Internetinhalte lokal. Dies bezeichnet man auch als Proxy-Server.

Festplatten-Cache: Dieser hält die Daten vor, die vor kurzem gelesen wurden, ebenso angrenzende Daten, die am wahrscheinlichsten auch abgerufen werden. Einige Festplatten-Caches wurden so konzipiert, Daten entsprechen ihrer Zugrifffrequenz vorzuhalten. Storage-Blocks, die ständig gelesen werden sind Hot Blocks und werden automatisch in den Cache verschoben.

Cache-Memory: Das ist Random Access Memory, auf den ein Mikroprozessor schneller zugreifen kann als auf regulären RAM. Cache-Memory ist normalerweise direkt mit der CPU verbunden und wird verwendet, um ständig abgerufenen Instruktionen zwischenzuspeichern. Obwohl RAM-Cache erheblich schneller ist als Disk-basierter Cache, so ist Cache-Memory weitaus schneller als RAM-Cache, da er näher an der CPU liegt.

Flash-Cache: Hierbei werden Daten temporär auf NAND-Flash-Memory (oft SSDs) gespeichert, um Datenanfragen schneller bedienen zu können als dies mit herkömmlichen Festplatten-Cache möglich ist.

Wie sich Cache-Memory optimieren lässt

Cache-Memory ist ein Teil der CPU-Einheit und somit entweder auf der CPU selbst oder in einem Chip auf dem System-Board integriert. Typischerweise ist die einzige Art, Cache-Memory zu optimieren, die Installation eines neueren System-Boards und einer CPU neuerer Generation. Einige ältere Boards verfügen über freie Slots, die sich zur Verbesserung der Cache-Memory-Kapazität nutzen lassen. Neuer Boards bieten diese Option nicht.

Ähnlich gestalten sich Buffer. Sie sind ein temporärer Speicher für Daten, allerdings ist ihre Aufgabe, Lastspitzen abzufangen. Ein Write-Buffer zum Beispiel kann Flash-Storage nutzen, um temporär Schreiboperationen zu speichern und dann die vor kurzem geschriebenen Daten in den Hauptspeicher zu verschieben, wenn die Ressourcen dafür vorhanden sind. Hier sind SSDs schneller als Festplatten und können Schreibvorgänge schneller durchführen. Die Daten werden nicht auf der SSD gegacht, da sie nur über ein temporäres Daten-Repository verfügt.

Folgen Sie SearchStorage.de auch auf Twitter, Google+, Xing und Facebook!

Artikel wurde zuletzt im Mai 2016 aktualisiert

Erfahren Sie mehr über Solid-State-Speicher

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

0 Kommentare

Älteste Beiträge 

Passwort vergessen?

Kein Problem! Tragen Sie Ihre E-Mail-Adresse unten ein. Wir werden Ihnen eine E-Mail mit Ihrem Passwort schicken.

Ihr Passwort wurde an die folgende E-Mail-Adresse gesendet::

- GOOGLE-ANZEIGEN

File Extensions and File Formats

Powered by:

SearchSecurity.de

SearchNetworking.de

SearchEnterpriseSoftware.de

SearchDataCenter.de

Close