Hotmail: Unser Speichersystem der nächsten Generation

von Christian Weghofer 18. Oktober 2011 09:00

Wie bewältigt Hotmail die Sicherung von Milliarden E-Mails, die täglich empfangen werden? Kristof Roomp arbeitet seit sechs Jahren als Hardware-Spezialist im Hotmail-Team an den Speichersystemen für diese unglaubliche Datenmenge. Auf dem englischsprachigen Windows
Team Blog
beschreibt er detailliert die Herausforderungen der täglichen Arbeit und die Lösungen, mit denen Hotmail ihnen begegnet.

 

Vielleicht haben Sie sich auch schon die Frage gestellt, wie Ihre Nachrichten gespeichert werden? In diesem Beitrag fass ich die wesentlichen Punkte aus Kristof Roomps Beitrag für Sie zusammen.

 

 

Cloud-basierter Massenspeicher

 

Das Hotmail-Speichersystem unterstützt mehr als eine Milliarde Postkästen und hunderte Petabytes Daten. Zum Vergleich: Ein Petabyte entspricht einer Million Gigabytes. Das System muss außerdem hunderttausende gleichzeitige Transaktionen schultern, die über den ganzen Globus verteilt sind.

 

Wie auch alle anderen Hotmail-Programmteile nutzt das Speichersystem Microsoft-Technologie, darunter Windows Server und Microsoft SQL Server. Diese Systeme bilden das Rückgrat von Hotmail und sind die Voraussetzung dafür, dass die hohen Standards erreicht werden können, die wir für die Zuverlässigkeit und Verfügbarkeit unseres Dienstes anlegen.

 

Das Speichersystem muss drei Kernaufgaben erfüllen:

  1. Die Sicherheit Ihrer E-Mails gewährleisten
  2. Hotmail neue Funktionalitäten zur Verfügung stellen
  3. Hotmail so effizient wie möglich zu betreiben

Ein Beispiel: Indem Wartungsaufgaben automatisiert und überwacht werden, spüren wir Probleme in der Regel auf, noch bevor unsere Nutzer etwas davon mitbekommen. So minimieren wir die Wahrscheinlichkeit für menschliches Versagen und erhöhen die Zuverlässigkeit von Hotmail deutlich.

 

Vor kurzem wurde das Speichersystem überarbeitet und stark verbessert. Zu Beginn des Jahres haben wir ein Pilotsystem gestartet, das die privaten Zugänge von freiwillig teilnehmenden Microsoft-Angestellten nutzte. Die Zertifizierung des neuen System ist nun abgeschlossen und bietet unseren Nutzern einen noch zuverlässigeren Dienst bei deutlich geringeren Kosten.

 

 

RAID ist out

 

RAID (Redundant Array of Inexpensive Disks) ist eine Speichertechnologie, die auch bei Hotmail lange Zeit als Standard galt. Die RAID-Technologie erlaubt es, mehrere Festplatten über einen Controller zu einer größeren und sichereren Einheit zu verbinden. Ein RAID-System speichert Daten auf vielen Laufwerken, so dass diese wiederhergestellt werden können, sollte eines der Laufwerke ausfallen.

 

Die Idee klingt gut. In der Praxis kommt es jedoch ständig vor, dass nicht nur einzelne Laufwerke ausfallen, sondern ganze RAID-Einheiten – insbesondere, wenn tausende dieser Einheiten in Betrieb sind. In der Regel ist der Fehler beim RAID-Controller zu finden, der die einzelnen Festplatten miteinander verbindet und auch verwaltet, welche Daten auf welche Festplatte gespeichert sind. Im schlimmsten Fall können beim Ausfall des Controllers die Daten endgültig verloren gehen – obwohl sie auf mehreren Festplatten gespeichert sind.

 

Bei Hotmail werden derlei Vorkommnisse verhindert, indem wir viele RAID-Gruppen nutzen, sodass auch keine Daten verloren gehen, wenn eine oder mehrere komplette RAID-Einheiten defekt sind.

Trotzdem wurde im Laufe der Zeit deutlich, dass die Kosten in keinem Verhältnis zur gebotenen Verlässlichkeit des Systems standen: Eine bessere Lösung musste her.

 

 

“Just a Bunch of Disks” (JBOD) – Nur ein Haufen Festplatten

 

Das neue Speichersystem stellt sicher, dass die Daten auf unabhängigen Festplatten, Controllern und Servern verbleiben. In einem so genannten JBOD-System spielt der Festplatten-Controller eine wesentlich geringere Rolle als bei RAID-Systemen. Folglich liegt es an der Software, Aufgaben des Controllers zu übernehmen und auftretenden Fehler zu begegnen (z.B. Firmware-Bugs, unlesbare Sektoren o.ä.). Unsere Aufgabe war es also, eine Software zu entwickeln, die einen RAID-Controller ersetzen kann.

 

Ein großer Vorteil dieses System ist, dass uns jederzeit bekannt ist, über wie viele fehlerfreie Kopien wir von einer bestimmten Nachricht verfügen. Sind es zu wenige, kann es Reparaturen prioritär durchführen, um potentiell gefährliche Situationen zu vermeiden.

 

Das Speichersystem besteht aus einem Cluster dieser Systeme, von denen jedes über eine Kopie einer Nachricht sowie über das Protokoll zum Nachrichteneingang verfügt. Die einzelnen System gleichen die vorliegenden Informationen ab und bringen sich so gegenseitig immer auf den neusten Stand.

 

 

SSDs kommen zum Einsatz

 

Es ist keine Neuigkeit, dass immer mehr Speicher immer weniger zu kosten scheint. Allerdings bleibt dabei die Geschwindigkeit, mit der Daten gelesen werden können, außen vor. Herkömmliche Festplatten können etwas mehr als hundert Schreib-/Leseoperationen pro Sekunde durchführen. Angesichts der Vielzahl an Operationen, die das Speichersystem in einer Milliarde Postkästen durchführen muss, ist das zu langsam.

 

Denn zusätzlich zur Sicherung von E-Mail-Nachrichten werden so genannte Metadaten gespeichert wie zum Beispiel die Liste der Nachrichten im Posteingang, der Gelesen-/Ungelesen-Status von E-Mails und zu Unterhaltungen zusammengefasste Nachrichten, Synchronisierung mit mobilen Geräten und Vieles mehr.
Diese Metadaten nehmen relativ wenig Speicherplatz in Beschlag – dafür handelt es sich um Information, die sich ständig und sehr schnell ändert. Eine Aufgabe, mit der sich mechanische Festplatten schwertun.

 

Eine Alternative sind SSDs (Solid State Drive). Die Funktionsweise ähnelt derjenigen in SD-Karten oder USB-Sticks, allerdings sind SSDs noch weitaus schneller und langlebiger. SSDs können mehr als hunderttausend Schreib-/Leseoperationen pro Sekunde ausführen – sind also etwa tausend Mal schneller als mechanische Festplatten.
Der Nachteil: Sie sind noch recht teuer, genauer gesagt, zehn bis hundert Mal teurer als die “alten” Festplatten. Das bestehende System vollständig durch SSDs zu ersetzen wäre schlichtweg zu teuer.

 

Aus diesem Grund bieten SSDs sich hervorragend für das Handling von Metadaten an, die nur wenig (aber schnellen) Speicherplatz benötigen.

 

 

Ist das neue System schon aktiv?

 

Teilweise. Alle neuen Subsysteme nutzen JBOD und die verbleibenden älteren System werden nach und nach aktualisiert. Die Daten von etwa 30 Millionen Nutzern werden aktuell auf JBOD-Systemen gespeichert – 100 Millionen weitere Nutzerdaten ziehen in den nächsten Monaten auf die neuen Systeme um.

 

Das Team arbeitet bereits an Entwürfen zur weiteren Verbesserung der Hardware- und Softwarestruktur, um den Speicher noch effizienter zu gestalten. Parallel versuchen wir aus dem Nutzerverhalten beim Zugriff auf Daten zu lernen, um diese Informationen bei zukünftigen Designs zu berücksichtigen.

 

Christian Weghofer

Ähnliche Beiträge

Kommentare

25.10.2011 07:57:32 #

Sehr interessanter Beitrag! Danke.

| Antworten

Kommentar schreiben

  Country flag

biuquote
  • Kommentar
  • Live Vorschau
Loading

Sicherheitsabfrage

*Wie ist die Summe aus 6 und 2? Ergebnis: