Speichersysteme im Netzwerk
Aus Winfwiki
| Name der Autoren: | Markus Beckstedde, Sebastian Kulik, Markus Drolshagen |
| Titel der Arbeit: | "Speichersysteme im Netzwerk" |
| Hochschule und Studienort: | FOM Essen |
1 Abkürzungsverzeichnis
| Abkürzung | Bedeutung |
|---|---|
| ATA | Advanced Technology Attachment |
| ATAPI | Advanced Technology Attachment with Packet Interface |
| CAS | Content-Addressed-Storage |
| CD | Compact Disc |
| CIFS | Common Internet File System |
| DAS | Direct-Attached Storage |
| DVD | Digital Versateille Disc |
| EEPROM | Electrically Erasable Programmable Read-Only Memory |
| ESCOM | Enterprise Systems Connection |
| FICON | Fibre Channel Connection |
| GDPdU | Grundsätze zum Datenzugriff und zur Prüfbarkeit digitaler Unterlagen |
| IDE | Integrated Device Electronics |
| iSCSI | Internet Small Computer System Interface |
| ISL | Inter-Switch Link (Protocol) |
| LAN | Local Area Network |
| MO | Magneto Optical (Disc) |
| NAS | Network-Attached Storage |
| NFS | Network File System |
| NTFS | New Technology File System |
| OSI | Open Systems Interconnection (Modell) |
| RAID | Redundant Array of Independent Disks |
| RAM | Random-Access Memory |
| SAN | Storage Area Networks |
| SAS | Serial-Attached-SCSI |
| SATA | Serial ATA |
| SCSI | Small Computer System Interface |
| SMP | SCSI Management Protocol, |
| STP | SATA Tunneling Protocol |
| SSP | Serial SCSI Protocol |
| TCP/IP | Transmission Control Protocol/Internet Protocol |
| UFS | Unix File System |
| USB | Universal Serial Bus |
| WAFL | Write Anywhere File Layout |
| ZFS | Zettabyte File System |
2 Einleitung
Das Vorhalten von Speicherplatz verschlingt heutzutage einen großen Teil des unternehmerischen IT-Budgets und bindet wichtige Ressourcen, um die gespeicherten Daten wieder verfügbar zu machen. Können Anwender nicht darauf zurückgreifen, sind mitunter unternehmenswichtige Informationen / Prozesse in Gefahr. Die Menge strukturierter und unstrukturierter digitaler Informationen – Dateien, Datenbanken, Audio- und Bilddaten u. v. m. – nimmt jedes Jahr um 50 bis 70 % zu. Um diese Datenflut verwalten zu können, müssen neue Technologien entwickelt und eingesetzt werden, damit die unvermeidlichen Kostensteigerungen im Rahmen zu gehalten werden können. Obgleich die Speicherplattenpreise in den vergangen Jahren zwar um jeweils rund 30 % gesunken sind, steigen die Kosten der Datenverwaltung unaufhaltsam weiter.
Die hier vorliegende Arbeit behandelt die unterschiedlichen Technologien und Methoden, welche aufgrund der o.g. Problematik bereits in vielen Unternehmen im Einsatz sind. Der Großteil dieser Arbeit behandelt die Server- und speicherzentrierte IT-Architektur, welche für die netzwerkgestützte Datenspeicherung unerlässlich sind. Trotz der ständigen Entwicklung im Bereich des Datenmanagemts und der möglichen Speicherungsmethoden wird klar, dass auch die aktuellsten und hier vorgestellten Modelle konzeptionell noch nicht ausgereift genug sind, um die o.g. Probleme gänzlich in den Begriff zu bekommen.
3 Grundlagen Datenspeicherung
3.1 Informationen und Daten
Die Information wird als Kenntnis von Sachverhalten und Vorgängen verstanden. Jedes Unternehmen benötigt zur Erfüllung seiner Aufgaben eine Vielzahl von Informationen. Eine wirtschaftliche Kombination der Produktionsfaktoren ist nur mit Hilfe von Informationen möglich. Durch diese werden Arbeitsgänge geplant, gesteuert, koordiniert und kontrolliert. Die Information ist dabei nicht nur lokal erforderlich, sondern bedarf eines bereichsübergreifenden, unternehmensweiten Einsatzes, d.h. die Information selbst ist ein wesentlicher Produktionsfaktor. Grundlage für beliebigen Speicherbedarf bilden Informationen, welche als Daten erfasst werden. Unter Verwendung von Speichersystemen werden diese Daten gesichert, abgerufen und verarbeitet.
3.2 Datenmanagement
Das Datenmanagement läßt sich wie folgt definieren:
"Datenmanagement ist die Kunst, die richtigen Daten zur richtigen Zeit und am richtigen Ort, in der richtigen Qualität und mit der richtigen Sicherheit verfügbar zu machen, um die richtigen Informationen daraus zu gewinnen und um einen strategischen Unternehmensvorteil daraus zu erlangen."
Die Anforderungen, diese kritischen Daten sicherzustellen und gleichzeitig einer möglichen großen Anzahl von Usern und Applikationen bei möglichst geringer „Downtime“ und maximaler Performance zur Verfügung zu stellen, stellt hierbei eine Herausforderung dar[1].
3.3 Datenträger
3.3.1 Merkmale von Datenträgern
Als Datenträger werden alle Medien bezeichnet, auf denen Informationen in analoger oder digitaler Form gespeichert werden können. Bei Datenträgern kommen unterschiedlichste Technologien zum Einsatz, die alle auf dem Prinzip der Energieumformung basieren. Dies reicht vom simplen Beschreiben von Papier bis zum komplexen Beschreiben von holografischen Speichern mittels Laser. Allen Datenträgern liegen zumindest die folgenden aufgeführten Merkmale in verschiedenen Ausprägungen zu Grunde[2].
- Langlebigkeit
- Integrität
- Fehlertoleranz
- Speicherkapazität
- Zugriffszeit
- Datenübertragungsrate
- Zugriffsart
- Größe
- Gewicht
- Kosten
3.3.2 Arten von Datenträgern
3.3.2.1 Festplatten
Festplatten gehören zur Klasse der rotierenden, magnetischen Massenspeicher. Eine Festplatte besteht im wesentlichen aus mindestens einem Platter, einem Schreib- und Lesekopf, der Laufwerkselektronik und einer Schnittstelle in einem geschlossenen, staubdichten Gehäuse.
Ein Platter besteht aus einer nichtmagnetischen Trägerscheibe aus Glas oder Aluminium, auf welcher an der Ober- und/oder Unterseite ein magnetisierbares Material wie z.B. Eisenoxid aufgebracht ist. Das Trägermaterial stellt Speicherzellen, die sog. magnetischen Domänen, zur Verfügung, welche wiederum aus vielen tausend elementaren Einzelmagneten bestehen[3]. Der Platter wird mit Hilfe eines Motors in Rotation versetzt und dadurch an einem Schreib- und Lesekopf vorbeigeführt, der nun entweder zum Schreiben eine magnetische Domäne magnetisiert oder zum Lesen deren magnetischen Zustand bestimmt. Somit werden die Daten in einem binären Verfahren gespeichert und gelesen. Der Schreib- und Lesekopf stellt also einen magnetischen Sensor dar, welcher sich am Ende eines ebenfalls durch einen Motor betriebenen Arms befindet und über den Radius des Platters positioniert werden kann. Die Laufwerkselektronik, auch Controller genannt, steuert die Motoren und ist dadurch in der Lage den Schreib- und Lesekopf an alle erreichbaren Stellen des Platters zu bewegen. Der Controller wird außerdem für eine Trennung zwischen dem physikalischen und dem logischen Zugriff auf die Festplatte verwendet. So werden z.B. die tatsächlichen Speicherzellen in einem speziellen Verfahren kodiert, womit der verfügbare Speicherplatz erhöht wird. Auch steht dem Controller ein Cache aus schnellem, flüchtigen RAM Speicher zu Verfügung, um Zugriffe auf die Festplatte zu beschleunigen, indem diese umorganisiert und möglichst physikalisch effizient umgesetzt werden. Darüber hinaus kann sich über eine Low-Level-Formatierung die Aufteilung der Festplatte zugunsten einer Fehlerkorrektur der logischen Aufteilung durch ein Dateisystem unterscheiden. Für die Umleitung der Zugriffe auf defekte Bereiche der Festplatte ist ebenfalls der Controller verantwortlich[4]. Über die Schnittstelle kommuniziert der Controller mit den daran angeschlossenen Systemen. Die Schnittstelle spezifiziert die maximale Datentransferrate, den physischen Anschluss und die zu verwendenden Kabeltypen, die Anzahl der maximal anzuschließenden Geräte und stellt auch den Befehlssatz zur Steuerung der Festplatte bereit.
In der untenstehenden Abbildung werden die oben beschriebenen Komponenten einer Festplatte sichtbar.
Da der Controller den Zugriff auf den Datenträger adressieren muss, muss eine Strukturierung der Speichzellen vorgenommen werden. Ohne eine solche Strukturierung würden die zu schreibenden Bitmuster beliebig über die Speicherzellen verteilt und könnten nicht wieder zusammenhängend ausgelesen werden. Die Strukturierung erfolgt mittels der bereits erwähnten Low-Level-Formatierung.
In der rechten Abbildung ist zu erkennen, das der Platter in mehrere Spuren unterteilt ist, welche wiederum in einzelne Blöcke, auch Sektoren genannt, aufgeteilt sind. Jeder dieser Blöcke entspricht einer Nutzdatengröße von 512 Bytes, was auch die kleinstmögliche Speichergröße auf dem Datenträger darstellt. Kommt mehr als ein Platter zum Einsatz oder sind beide Seiten beschichtet, dann nennt man die übereinander liegenden Blöcke Zylinder.
Die wichtigsten Merkmale einer Festplatte sind die maximale Speicherkapazität, die Zugriffszeit, die Datenübertragungsrate und der Formfaktor des Festplattengehäuses.
3.3.2.2 Wechselmedien
Als Wechselmedien bezeichnet man Datenträger, die nicht fest eingebaut und damit austauschbar sind.
Wechselmedien gestatten eine Trennung der Daten von den eigentlichen Speichersystemen und werden verwendet, um Daten zwischen nicht vernetzten Systemen zu transportieren oder eine räumliche Trennung der Daten von den datenverarbeitenden Systemen zum Zwecke der Datensicherheit zu erreichen.
Die nachfolgende Tabelle gibt Aufschluss über die Vielzahl auf unterschiedlichen Technologien beruhenden Wechselmedien.
| Bezeichnung | Speichertechnologie |
|---|---|
| Blu-ray | optisch |
| DVD | optisch |
| CD | optisch |
| MO | magento-optisch |
| Wechselfestplatten | magnetisch |
| Magnetband | magnetisch |
| Diskette | magnetisch |
| USB-Stick | Flash-EEPROM |
Wechselmedien werden vor allem im Umfeld der Datensicherung und der Archivierung verwendet, wobei die Auswahl der entsprechenden Wechselmedien stark vom speziellen Einsatzzweck abhängt[5].
Die wichtigsten Kriterien hierfür sind die Langlebigkeit, Integrität, Speicherkapazität und Kosten.
3.4 Zugriff auf Speicher
3.4.1 Dateibasiert
Das dateiorientierte Speichern bedient sich Mechanismen, die von Dateisystemen zur Verfügung gestellt werden.
Ein Dateisystem verwaltet den Speicherplatz eines Datenträgers in logischen Speichereinheiten[6]. Das Dateisystem kommuniziert über einen Dateisystemtreiber mit einem Betriebssystem und stellt diesem durch die Formatierung des Datenträgers eine Struktur zur Verfügung, in welcher Dateien abgespeichert werden können. Eine Datei ist die Bezeichnung für Daten, die inhaltlich und strukturell zusammengehören.
Die Formatierung des Datenträgers basiert auf den bereits erwähnten Blöcken von 512 Bytes Größe. Diese Blöcke werden zu beliebig vielen Clustern gleicher Größe zusammengefasst, welche dann der kleinstmöglichen Speichergröße des Dateisystems entsprechen. Je nach Implementierung des Dateisystems, werden zusätzliche Funktionen bereitgestellt, die hauptsächlich zur Organisation der Dateien dienen. So ist es z.B. möglich, eine Hierarchie mit Hilfe von Verzeichnissen aufzubauen, Dateinamen zu vergeben, Dateien mit zusätzlichen Attributen zu versehen, Berechtigungsstrukturen aufzubauen und Dateien mit Hilfe dieser Funktionen direkt zu adressieren bzw. wieder aufzufinden.
Die rechts stehende Abbildung zeigt, dass das Programm (lesend oder schreibend) Zugriff auf eine Datei anfordert. Dies geschieht über Schnittstellen die das Betriebssystem anbietet, welches wiederum die Anfrage dem jeweils benutzten Dateisystem in spezifizierter Form übergibt. Das Dateisystem wiederum leitet den Zugriff ebenfalls in entsprechender Form an den Datenträger.
Wie der Zugriff auf eine Datei erfolgt, wird mittels der nächsten Abbildung deutlich. Dort ist zu erkennen, dass der Zugriff auf eine Datei, ähnlich wie beim OSI Referenzmodel, verschiedene Schichten durchläuft, welche allesamt über entsprechende Treiber implementiert sind.
Somit ist es möglich einen Dateizugriff umzuleiten und/oder über evtl. implementierte Netzwerkprotokolle an ein anders System im Netzwerk zu senden. In letzterem Fall leitet das empfangende System die Daten zunächst durch die verwendeten Netzwerkprotokolle weiter, welche dann wiederrum über definierte Schnittstellen den Dateisystemtreiber ansprechen.
Somit sind Dateisysteme sowohl in lokale als auch in Netzwerkdateisysteme aufzuteilen. Je nach Betriebssystem und Einsatzzweck kommen verschieden Dateisysteme für unterschiedliche Szenarien zum Einsatz.
3.4.2 Blockbasiert
Im Gegensatz zum dateiorientierten Zugriff benötigt der blockorientierte Zugriff auf Datenträger kein Dateisystem. Vielmehr entspricht diese Zugriffsart der nativen, internen Verwaltung der Datenträger und ist somit auch schneller, da auf zusätzliche Protokolle verzichtet werden kann. Bei dieser Zugriffsart fordert der Rechner einzelne Datenblöcke von einer Festplatte an, wohingegen bei einem dateibasierten Datenaustausch über CIFS oder NFS ganze Dateien oder Ausschnitte aus Dateien angefordert werden.
4 Netzwerkbasierte Datenspeicherung
Damit eine Kommunikation und dadurch ein Datenaustausch zwischen mindestens zwei Computersystemen stattfinden kann, wird ein Netzwerk benötigt. Es gibt unterschiedliche Netzwerke, die sich in den verwendeten Übertragungsmedien, der Übertragungstechnik, der Topologie und der Netzwerkdimension unterscheiden. Um eine Interoperabilität zwischen den verschiedenen Netzwerkarchitekturen zu erreichen, wurde ein theoretisches Modell namens OSI Referenz Modell entwickelt[7].
Links ist das OSI Referenz Modell abgebildet.
Wie zu erkennen ist, besteht dieses Modell aus sieben verschiedenen Schichten, durch die jede innerhalb eines Netzwerkes entstehende Kommunikation fließen muss.
4.1 Client-Server Architektur
4.1.1 Serverzentrierte Architektur
In herkömmlichen IT-Architekturen werden Speichergeräte in der Regel nur an einen einzelnen Server angeschlossen. Zur Erhöhung der Ausfallsicherheit wird heutzutage jedoch auch dazu übergegangen, die jeweiligen Speichergeräte mit zwei Servern gleichzeitig zu verbinden. Diese herkömmliche IT-Architektur wird deshalb auch als serverzentrierte IT-Architektur bezeichnet.
Die folgende Abbildung verdeutlicht, wie eine derartige Architektur aufgebaut ist:
4.1.1.1 SAS
SAS wurde im Jahre 2005 als Weiterentwicklung der parallelen SCSI-Architektur eingeführt. Als technische Neuerungen gegenüber der abzulösenden parallelen Technik gab es eine Kompatibilität zu SATA, neue Features sowie eine breite Herstellerunterstützung.
Im klassischen professionellen SCSI-Markt zählen abseits von Performance Argumente wie Skalierbarkeit und Verfügbarkeit. Hier bringt Serial Attached SCSI gegenüber seinen parallelen Vorfahren entscheidende Änderungen mit. Das parallele SCSI hat mit dem aktuellen Ultra320-SCSI den Höhepunkt des technisch sinnvoll Machbaren erreicht. Wie bei anderen Schnittstellen und Bussystemen erfolgt auch bei SCSI der Umstieg auf den seriellen Betrieb[8].
4.1.1.1.1 Hardware
Wie bereits beim parallelen SCSI System wurde die Hardware ebenfalls auf den 24/7 Betrieb ausgelegt. Über die SCSI Architektur wurden die Festplatten mittels eines Buskabels miteinander verbunden, wobei das Kabel am Ende mit einem Terminator abgeschlossen werden musste. Dies entfällt bei SAS, denn hier handelt es sich um eine Punkt zu Punkt Verbindung, welche deutliche Vorteile in der Geschwindigkeit und Handhabung (Wegfall der Adressierung) hat.
4.1.1.1.2 Protokolle
Um eine Gerätekommunikation bei SAS-Festplatten zu ermöglichen wurden drei Protokollstapel vorgesehen:
- SSP
SSP ist die serielle Variante des SCSI-Protokolls. Sowohl die SAS-Endgeräte als auch der SAS-Controller benutzen zur dieses Protokoll zur Kommunikation miteinander.
- STP
STP tunnelt das S-ATA-Protokoll, was eine Verwendung von S-ATA-Laufwerken an SAS-Controllern erst ermöglicht. Somit ist ein Mischbetrieb von SATA- und SAS-Festplatten an SAS-Controllern möglich (umgekehrt allerdings nicht)
- SMP
SMP ist für das Management von Expandern verantwortlich.
4.1.1.2 DAS
DAS bezeichnet eine an einem Host angeschlossenen Festplatte, welche sich in einem separaten Gehäuse befindet.
4.1.1.2.1 ATA/ATAPI
Dieses schon seit 1989 eingesetzte Protokoll konnte Anfangs maximal zwei Festplatten mit bis zu 8,3 MB bedienen und wurde ständig weiterentwickelt. Es wurde mit einem 40-poligen Flachkabel (später 80 pol.) kommuniziert und etablierte sich als IDE. Es gibt mittlerweile acht verschiedene ATA-Protokolle, welche aufsteigend einen Geschwindigkeitsgewinn aufweisen. Es finden sich unzählige Beiträge im Internet zu diesem Thema, aber da die diese Technologie eher als proprietär anzusehen ist und kaum noch Verwendung findet, wird in der hier vorliegenden Arbeit nicht näher darauf eingegangen.
4.1.1.2.2 SCSI
SCSI definiert als Medium einen parallelen Bus für die Übertragung der Daten mit zusätzlichen Leitungen für die Steuerung der Kommunikation. Der Bus kann in Form von Leiterbahnen auf der Platine oder als Kabel realisiert werden. Im Laufe der Zeit wurden zahlreiche Kabel und Steckertypen definiert, die nicht ohne Weiteres miteinander kompatibel sind. Das SCSI-Protokoll definiert, wie die Geräte über den SCSI-Bus miteinander kommunizieren und in welcher Form Daten übertragen werden[9].
4.1.1.2.3 Fibre Channel
Auf Grund wachsender Datenmengen und um die Zugriffszeiten zu verringern wurden neue Technologien entwickelt. Neben SCSI und SAS wurden auch Glasfaserleitung als Kommunikationsmedium genutzt. Fibre Channel gilt als kompliziert, teuer und braucht einen eigenen Administrator.
4.1.1.2.4 iSCSI
Das iSCSI macht es wie der Fibre Channel. Es nutzt zur Übermittlung von Kommandos das SCSI-Protokoll, wobei als Transportstrecke das weit verbreitete Ethernet mit dem TCP/IP-Protokoll eingesetzt wird, welches kostengünstig und mit dem 10 Gbit/s Ethernet konkurrenzfähig zum Fibre Channel.
4.1.1.2.5 FICON/ESCON
- FICON wurde von IBM entwickelt und ist ein Host-Channel-System für den Anschluss von Disk Arrays, Bandlaufwerken und Druckern an Großrechner.
Durch FICON wird das ESCON-Protokoll auf Fibre Channel abgebildet. Dadurch werden die gegenüber dem traditionellen ESCON-Protokoll höheren Datenraten von Fibre Channel für Großrechner nutzbar. Weiterhin ist es durch FICON möglich geworden, SANs auf der Basis von Fibre Channel aufzubauen in denen sich Großrechner und UNIX/Windows-Server die Ressourcen teilen. Die Kapazität von FICON beträgt zwischen 1 und 4 Gb je FICON Kanal. Große Mainframesysteme besitzen i.d.R. über 300 FICON Kanäle.
Nur sehr wenige Hersteller von IT Peripherie wie z.B. Platten-Arrays, Bandsystemen und Drucker haben für Ihre Produkte die FICON Anschlussmöglichkeiten entwickelt. Aufgrund der verhältnismäßig geringen Anzahl von Großrechnerkunden lohnte die Entwicklung nichtwirklich. Neben IBM, deren Produkte über FICON an Großrechner angebunden werden können gibt es nur sehr wenige Anbieter, die auf FICON bauen. Da jedoch in der Zwischenzeit FICON Adapterkarten von verschiedenen Herstellern angeboten werden, kann davon ausgegangen werden dass sich künftig auch für Großrechnerkunden die Anbindungsalternativen über FICON verbessern werden.
- ESCON ist ein Protokoll, das von Mainframes verwendet wird, um den Datenaustausch zwischen dem Rechner und dessen Peripheriegeräten durchzuführen.
Der Vorläufer von ESCON sind die im IBM-Sprachgebrauch so genannten Parallel-Kanäle (Bus & Tag, Kupferkabel), die eine Übertragungsrate von 4,5 MB/s pro Kanal aufweisen. Da Mainframes große Datenmengen zwischen Rechner und Peripherie übertragen müssen, war diese Geschwindigkeit nicht mehr ausreichend. Somit wurde im Jahr 1990 von IBM die ESCON-Technologie eingeführt, welche eine Übertragungsrate von 17 MB/s pro Kanal auf der Basis von Lichtwellenleiter ermöglichte. Viele der Mainframes verwenden noch heute die ESCON-Kanäle, wobei diese innerhalb der letzten Jahre bei neueren Mainframesystemen durch FICON-Kanäle ersetzt wurden.
4.1.2 Speicherzentrierte Architektur
In den vorherigen Kapiteln haben wir uns mit den serverzentrierten Architekturen beschäftigt, in welchen die Speichergeräte mittels Kabel an einen einzelnen oder zwei Server angeschlossen werden. Speicher existiert bei der serverzentrierten Architektur also immer nur in Abhängigkeit vom jeweils angeschlossen Server[10].
Aufgrund technischer Begrenzungen (phys. Beschränkung der anschließbaren Speicherkapazität, Begrenzung der Kabellängen, etc.) ist die max. Speicherkapazität, die an einen Server angeschlossen werden kann, über kurz oder lang verbraucht. Demnach kann die serverzentrierte Architektur den ständig wachsenden Speicherbedarf langfristig nicht mehr bereitstellen.
Speicherzentrierte Architekturen, auch Unified Storage oder Speichernetze genannt, können die geschilderten Probleme der serverzentrierten Architektur lösen und bieten darüber hinaus neue Möglichkeiten der Datenverwaltung. Speichernetze ersetzen die Kabelverbindungen durch ein eigenständiges Netz. Dieses Netz wird neben dem bereits existierenden LAN installiert und überwiegend für den Datenaustausch zwischen Rechnern und den verschiedenen Speichergeräten genutzt, wie in der folgenden Abbildung verdeutlicht dargestellt wird.
Im Gegensatz zur serverzentrierten IT-Architektur können über das Speichernetz mehrere Server direkt auf dasselbe Speichergerät zugreifen, ohne dass ein anderer Server involviert sein muss. Der Speicher existiert nun völlig unabhängig von irgendwelchen Rechnern und die verschiedenen Speichergeräte rücken damit ins Zentrum der IT-Architektur.
Die speicherzentrierte Architektur kann, wie in der rechten Abbildung zu sehen ist, in 3 Schichten aufgeteilt werden.
Die erste Schicht bilden die Clients. Diese Arbeitsstationen sorgen für den Dateninhalt und füllen die Anwendungen und Programme mit Leben. Der Datenfluss zum Speicherort verläuft über das lokale Netzwerk. Es ist wichtig das lokale Netzwerk so ausgelegt ist, dass eine Störung eines einzelnen Clients nicht zum Ausfall des gesamten Netzwerkes führt. Hierfür hat sich das Fast Ethernet insbesondere die Sternverkabelung etabliert.
Anders wäre es bei einem Bussystem, wo der Ausfall einer Leitung zu einem Totalausfall des gesamten Netzwerkes führen würde.
Auf der zweiten Schicht befinden sich die am lokalen Netzwerk angeschlossenen Server. Diese stellen den Speicherort und die nötige Speicherkapazität zur Verfügung. Bei den Servern handelt es sich, je nach Applikation und Aufgabe um leistungsfähige Computer, die mehrere Clients verschiedene Anwendungen zur Verfügung stellen. Um große Berechnungen durchführen zu können, wird häufig noch eine virtuelle dritte Schicht eingezogen. Diese Datenbankserver übernehmen dann die Berechnung der Daten, während der Applikationsserver die Anfragen der Clients abarbeitet. Die Datenbankserver sind an dem gleichen LAN angebunden wie die Applikationsserver.
Die dritte Schicht stellt die Speichersysteme dar. Auf diese Subsysteme kann nur über die Datenbankserver zugegriffen werden, d.h. will ein Client bestimmte Daten haben, so wird eine Anfrage an den entsprechenden Applikationsserver gerichtet, der diese dann an den Datenbankserver weiterleitet. Letzterer liest die Daten von dem Speichersubsystem und gibt sie über den Applikationsserver an den Client zurück. Die typischen Speichersubsysteme sind Festplattenverbunde, Tape- Roboter, Bandlaufwerke und/oder DVD/Blu-Ray Systeme. Die Anbindung an diese Systeme findet in den meisten Fällen über Hochverfügbarkeitsnetze per FibreChannel oder iSCSI statt.
4.1.2.1 NAS
NAS-Systeme wurden entwickelt, um auch ohne zentralen Server einfach und unkompliziert verschiedenen Benutzern in einem Netzwerk Zugriffsberechtigungen und Speicherplatz zur Verfügung zu stellen. NAS-Lösungen sind heute in mittleren und größeren IT-Anlagen zu finden, wo sie beispielsweise als Online-Backup und Online-Archiv-Systeme dienen, um einerseits weiteren Speicherplatz zur Verfügung zu stellen und andererseits die einzelnen Server zu entlasten, was eine effektivere Verwaltung der vorhandenen Storage-Einheiten zur Folge hat.
4.1.2.1.1 NAS auf PC-Basis
Grundsätzlich kann jeder Standard-PC als NAS-Server in einem Netzwerk fungieren. Umfunktionierte Standard-PCs bieten mehr Flexibilität, da neben der Funktion als Dateiserver auch andere Anwendungen auf Ihnen laufen können. Der typische Einsatz von NAS auf PC-Basis ist eine homogene Server-Infrastruktur. Da die verwendeten Betriebssysteme wie Windows, oder UNIX nicht für NAS, sondern für den Betrieb von Anwendungen optimiert wurden, wird es jedoch schwieriger, Dateien zwischen unterschiedlichen Betriebssystemen auszutauschen, denn es werden meist herstellerabhängige und somit proprietäre Formate verwendet. Sofern Daten zwischen Unix und Windows ausgetauscht werden sollen, benötigt mindestens eine Seite zusätzliche Software, was wiederum die Komplexität und Fehleranfälligkeit der Infrastruktur erhöht. Trotz der deutlich geringerer Anschaffungskosten fallen derartige Lösungen im Preis/Leistungsverhältnis meist hinter die spezialisierte NAS-Systeme zurück.
4.1.2.1.2 Spezialisierte NAS-Systeme
Eigens für NAS konzipierte und spezialisierte Systeme besitzen Betriebssysteme, welche für eine einzige Aufgabe entworfen wurden, nämlich die des Dateiservers. Sie behandeln NFS für die Unix-Welt und CIFS für die Windows-Welt sehr effizient, schnell und vor allem parallel, ohne das weitere Software auf den angeschlossenen Rechnern benötigt wird. Dafür können NAS-Systeme wiederum keine oder auch wieder nur proprietäre Anwendungen betreiben. Wegen ihrer Auslegung als speicherzentrierte Architekturen können spezialisierte NAS-Systeme einfach skaliert werden, sind einfacher als Cluster und damit ausfallsicher auslegbar. Dadurch eignen sich spezialisierte NAS-Systeme in der besser für den Einsatz in kritischen Umgebungen, welche eine hohe Leistung und Verfügbarkeit erfordern, als NAS-Lösungen auf PC-Basis. Wichtiger ist allerdings noch die Konsolidierung der Infrastruktur, was langfristigen zu einer Senkung der Betriebskosten im Rechenzentrum führt.
Die folgenden beiden Bilder zeigen zwei der vielen im Einsatz zu findenden NAS-Systeme
4.1.2.1.3 Kategorisierung von NAS-Systemen
Eine Möglichkeit, NAS-Systeme zu kategorisieren, ist die Art ihrer Nutzung[11]. Hier unterscheidet die Branche zwischen Lowend, Midrange und Highend.
- Lowend-Installationen werden meist mit "Plug-in-Storage" realisiert.
Hier wird das NAS-System nur genutzt, um der Infrastruktur zusätzlichen Speicher über das IP-Netz zur Verfügung zu stellen. Hauptkriterien für solche Geräte sind der Preis und die einfache Installation. Standard-Rechner werden meist zusätzlich mit dieser Aufgabe betraut, aber es gibt auch immer mehr renommierte Hersteller, die ihr Portfolio mit diesen auf Preis und Installation optimierten Systemen erweitern.
- Midrange-NAS-Installationen kommen in kleineren Konsolidierungs- und Datei-Server-Anwendungen zum Einsatz.
In diesem Fall wird meist die Last mehrerer Standard-Systeme auf ein neues Gerät gelegt, um dadurch die Infrastrukturkosten zu senken. Schlüsselkriterien sind hier das Preis-Leistungs-Verhältnis und die zusätzlichen Eigenschaften, wie die Speicherverwaltung. Für diese Zwecke sind bereits spezielle NAS-Systeme notwendig.
- Highend-NAS-Installationen werden zur massiven Konsolidierung und bei hochkritischen Aufgaben als Datei-Server verwendet.
Der Hauptunterschied zu Midrange-Geräten ist die Skalierbarkeit. Highend-Systeme konsolidieren typischerweise mehrere hundert Standard-Server und bieten dabei 24/7-Verfügbarkeit. Schlüsselkriterien sind hier Skalierbarkeit, Verfügbarkeit und Leistung. Dies alles können wiederum nur spezielle NAS-Systeme offerieren, welche 100 oder mehr TByte an Kapazität verwalten.
4.1.2.1.4 Dateiverfahren und Filesharing
Im Gegensatz zu SANs erfolgt bei NAS-Systemen die Datenübertragung im Dateiverfahren und nicht blockorientiert. Bei diesem Dateizugriff werden Daten nur über ihre Namen adressiert, nicht über ihren Speicherplatz. Deswegen ist ein separater Rechner (ein so genannter Fileserver) nötig, um über die Angabe des Namens an die Inhalte von Dateien zu gelangen. Dieser Host erhält die Lese- oder Schreibanforderungen einer kompletten Datei und arbeitet den Blockzugriff auf den Datenträger hinter den Kulissen ab. Weil die angeschlossenen Rechner nur den Namen der Datei, aber nicht die physikalische Adresse der einzelnen Blöcke kennen müssen, ist es möglich, dass viele Systeme gleichzeitig auf einen einzigen Datenbestand zugreifen. Dies ist der Hauptvorteil des Dateizugriffs, der allerdings durch einen weiteren Rechner im Datenpfad, höhere Komplexität und möglicherweise eingeschränkte Leistungsfähigkeit erkauft wird.
Der gemeinsame Zugriff auf Daten von unterschiedlichen Systemen ist der Schlüsselvorteil der NAS-Technologie. Anwendungen und Daten vieler verstreuter Systeme können auf einem einzigen zusammengefasst und zur gemeinsamen Arbeit bereitgestellt werden. Skalierbare Hochleistungs-NAS-Systeme werden oft dazu genutzt, viele kleinere Unix- oder Windows-Server zu ersetzen. Dadurch lassen sich Kosten für den Einkauf und den Unterhalt der Speichersysteme senken. In Entwicklungsumgebungen (z.B. CAD, Software oder Forschung) können NAS-Systeme durch Zusammenarbeit am selben Datenbestand Projektlaufzeiten verkürzen und somit höhere Effizienz durch kürzere Produktzyklen ermöglichen. Auch im Bereich des Web-Hostings setzen sich NAS-Systeme immer weiter gegen dedizierte Server durch.
Filesharing-Anwendungen, für die sich NAS-Systeme besonders eignen, sind solche, die zwei oder mehr Einzelapplikationen betreiben oder viele Nutzer haben, die auf ein und denselben Datenbestand zugreifen müssen. In der Software-Entwicklung ist es beispielsweise erforderlich, Code-Module mehreren Ingenieuren gleichzeitig zur Verfügung zu stellen. Mit NAS ist es nicht mehr notwendig, mehrere Kopien einer Datei auf vielen Speichern vorzuhalten. Ein anderes Beispiel sind Web-Umgebungen. Ein NAS-System kann ein einziges Abbild einer Webseite an Dutzende oder Hunderte Server verteilen, die wiederum einen wesentlich breiteren Zugriff auf diese Seite ermöglichen.
4.1.2.2 SAN
In der Speichervernetzung ist das SAN immer noch die maßgebliche Infrastruktur neben DAS, NAS und CAS. Die direkte Anbindung von Speicher in Form von DAS hat wenige Vorteile und kann bei Bedarf nicht mitwachsen. NAS-Konfigurationen lassen mehrfachen Zugriff auf ein System zu, der filebasierte Zugriff bietet aber nicht die gleiche hohe Leistungsfähigkeit wie ein SAN. Bei CAS müssen die Daten über einen Hash-Algorithmus im Storage adressiert werden. Die Applikation muss dabei über eine API auf das System zugreifen. CAS bezeichnet zudem nur ein Speicherverfahren und keine Vernetzungsmöglichkeit. Eine Storage-Konsolidierung führt zwangsläufig zu zentralen Systemen. Damit sinkt der Managementaufwand. Ob ein SAN, NAS oder CAS beziehungsweise eine Kombination daraus zur Anwendung kommt, wird vom konkreten Anwendungsfall, von der Anwendung, dem Service-Level, der Leistung und heute vor allem von den Kosten bestimmt. Mittlerweile gibt es Angebote und Technologien, die es ermöglichen SAN-Funktionalitäten preiswert zu gestalten, ohne kostenintensive Fibre Channel-Komponenten erwerben zu müssen.
Durch SANs lassen sich sämtliche Speichergeräte innerhalb eines Netzwerks zentralisieren und gemeinsam nutzen. Dadurch reduziert sich zugleich der Administrationsaufwand. Selbst Außenstellen oder Filialen lassen sich mit entsprechender SAN-Architektur einbinden. Darüber hinaus entlastet das SAN das übrige Netzwerk (LAN) vom Datenverkehr. IT-Verantwortliche können so die Sicherungszeiten einhalten beziehungsweise minimieren. Zudem lassen sich dadurch LAN-free- und Serverless-Backups realisieren.
Größter Vorteil eines SAN ist die Funktionsvielfalt, die sich dem IT-Administrator bietet. Mit diesen Funktionalitäten kann er seine Speicherprozesse flexibel gestalten oder dynamisch anpassen. Snapshots, Replikationen, Spiegelung oder inkrementelle Sicherungen sind nur einige dieser Leistungsmerkmale. Hardware-Redundanzen, Load-Balancing, Clusterfähigkeit oder dynamische Pfadnutzung kommen hinzu. Einen besonderen Vorteil bietet die Virtualisierung des SAN. Verteilt vorhandener Massenspeicher lässt sich virtuell wie eine einzige Festplatte behandeln. Den einzelnen Server-Systemen werden dann auf dieser virtuellen Festplatte Partitionen zugewiesen, die diese Server über die Host-Bus-Adapter wie eine eigene Festplatte einbinden können. Der vorhandene Speicherplatz kann so viel effektiver genutzt und zentral verwaltet werden, da es jederzeit im laufenden Betrieb möglich ist, die Größe des zugewiesenen Speicherbereichs für die Server im SAN zu ändern.
4.1.2.2.1 Topologien
- Full-Mesh-Design:
In einem Full-Mesh-Design sind alle Switches miteinander verbunden, so dass ein Fibre-Paket maximal einen ISL zwischen Server und Speichersystem überwinden muss. Speicher und Rechner können sich somit an beliebigen Stellen des SAN befinden. Sollten beide am selben Switch angeschlossen sein, findet der Datenaustausch über dessen Elektronik statt - somit fallen Latenzen durch Store-and-Forward praktisch weg. Als Faustregel des Entwurfes sollte gelten, dass immer dann eine Umgruppierung von Rechnern und/oder Speichern nötig wird, wenn der Anteil der Portnutzung für ISL-Datenaustausch 50 Prozent überschreitet. Die Einfachheit des Aufbaus und die große Flexibilität müssen allerdings mit einer schlechten ISL-zu-User-Port-Rate und einer ständigen Überwachung der Portauslastung zur optimalen Ausnutzung erkauft werden. Grundsätzlich wird ein Full-Mesh-Design mit mehr als vier Switches ineffizient.
- Partial-Mesh-Design:
In einem Partial-Mesh-Design werden Switches in Gruppen und diese Gruppen untereinander verschaltet. Anwendungen mit höherem Bandbreitenbedarf können ins Zentrum dieser Umgebung, solche mit geringeren Ansprüchen an den Rand konfiguriert werden. Jeder Verbindung zwischen Speicher und Rechner steht mehr als eine mögliche Verbindung zur Verfügung - je weiter man ins Zentrum rückt, desto mehr. Diese Vorteile allerdings kosten wiederum ISL-Ports und verringern somit die Anzahl der nutzbaren User-Ports.
- Core-Edge-Design:
Ein Core-Edge-Design wird dann verwendet, wenn man wesentlich mehr Rechner als Speicher am SAN anschließen muss. In dieser Umgebung befinden sich typischerweise zwei oder mehr untereinander verschaltete Direktoren vor den Speichern und vier oder mehr nicht verschaltete Switches vor den Rechnern. Jeder Switch ist mindestens über einen ISL mit jedem Direktor verbunden. Dies eröffnet die Möglichkeit, alle hochverfügbaren Rechner an den Core-Direktoren kreuzverschaltet anzuschließen und ohne ISL zum Speicher zu gelangen und alle Standardrechner über die Edge-Switches zugänglich zu machen. Die Vorteile eines Core-Edge-Designs liegen im relativ einfachen Aufbau und in der Möglichkeit, unterschiedliche Bandbreiten und Schutzstufen zu unterschiedlichen Kosten bedienen zu können. Dies erkauft man mit dem Nachteil, dass eine Erweiterung eines einmal aufgestellten SAN die Anzahl der ISLs erhöht und damit die Anzahl der nutzbaren Ports stetig verringert. Auch kann eine Entscheidung für falsche (= zu gering dimensionierte) Direktoren eine spätere Erweiterung des SAN erschweren oder gar unmöglich machen.
- Compound-Variante:
Eine Erweiterung des Core-Edge-Designs stellt die Compound-Variante dar. Diese kann man sich als eine gespiegelte Core-Edge-Umgebung vorstellen, in deren Zentrum alle (also vier oder mehr) Direktoren über ISLs kreuzverschaltet sind. Hierdurch wird allen hochverfügbaren Rechnern der Zugriff auf den Speicher über höchstens einen, allen anderen über höchstens zwei ISLs ermöglicht. Hierdurch wird der einzelne ISL-Transfer dramatisch gesenkt und somit die gesamt verfügbare Bandbreite erhöht. Zwei existierende Core-Edge-Umgebungen können so einfach und ohne Neuentwurf miteinander verbunden werden.
- Complex-Core-Edge-Design:
Die komplizierteste, aber auch fehlertoleranteste und damit ausfallsicherste Variante eines SANs stellt das Complex-Core-Edge-Design dar. Hier befinden sich vier oder mehr kreuzverschaltete Direktoren im Kern und werden nochmals von einem zentralen Direktor zusammengehalten, der nichts anderes als Direktor-ISLs zur Verfügung stellt. Daran angeschlossen befinden sich weitere Direktoren oder Switches in einem Two-, meistens jedoch in einem Three-Tier-Modell. Wie schon erwähnt, ist dieser Aufbau der höchstverfügbare, der mit heutiger Technologie hergestellt werden kann. Lastverteilung und dynamische Pfadvergabe machen ihn zur Topologie der Wahl für die meisten großen Rechenzentren. All diese Vorteile müssen jedoch mit einer nochmals gesteigerten Komplexität - und das heißt in diesem Fall höchste Hardware-Kosten und höchster Verwaltungsaufwand - erkauft werden.
4.1.2.2.2 Planung und Entwurf
Als »eiserne Grundregeln« des SAN-Entwurfes sollten zwei Kennziffern immer im Hinterkopf gehalten werden: niemals mehr als drei Hops für einen Datenpfad, und niemals mehr als 16 Switches bzw. Direktoren in einem Fabric[12].
- Fabric Layout:
Jeder Switch sollte über mindestens zwei ISLs zu anderen Switches verfügen, wenn möglich sollte jeder Switch mit mehr als zwei anderen Switches verbunden werden. Jeder Edge-Switch sollte mit jedem Core-Switch verbunden sein. Gespiegelte Fabrics erhöhen die Verfügbarkeit aller Komponenten. Geschäftskritische Rechner sollten direkt an die Core-Switches angeschlossen sein.
- ISL Layout:
Jeder Switch sollte über mindestens zwei ISLs zu anderen Switches verfügen, wenn möglich sollte jeder Switch mit mehr als zwei anderen Switches verbunden werden. Sollte Ausfallsicherheit gefordert sein, müssen immer mindestens zwei ISLs zu mindestens zwei anderen Switches oder Direktoren im Netzwerk eingerichtet werden; jeder ISL sollte zu einer anderen Port-Karte bzw. auf einen anderen Prozessor des Partner-Switches oder Direktors verbinden.
- Lastplanung:
Ist der Bedarf an Durchsatz und Bandbreite der angeschlossenen Rechner ermittelt (nicht mit dem durchschnittlichen, sondern dem jeweils höchsten Wert als Grundlage), gilt als Grundsatz ein Paar ISLs für jeden hoch ausgelasteten Port eines Speichergerätes (20-40 MByte/s) und ein Paar ISLs für jeweils zwei bis vier normal ausgelastete Ports eines Speichergerätes (5-10 MByte/s). Starten sollte ein SAN mit diesen Minimalwerten, ISLs können nach Bedarf dynamisch hinzugefügt werden. Die Nutzung eines Datenpfades sollte nicht unter 30 Prozent und nicht über 80 Prozent liegen. Im ersten Fall wird eine Ressource verschwendet und sollte einem schon existierenden, noch nicht ausgelasteten Pfad hinzugefügt werden. Im zweiten Fall muss mit dramatischen Leistungseinbußen gerechnet und über eine Lastverteilung auf zwei Pfade nachgedacht werden. Beim Einsatz von Bändern im SAN muss zwischen den mechanischen und logischen Schreibraten eines Laufwerkes unterschieden werden. Zwar können heutige Laufwerke zwischen 12 und 15 MByte/s schreiben, jedoch verfügen fast alle Bandmaschinen über Kompressionsalgorithmen, die es erlauben, 2-2,5 mal mehr Daten zu diesem Gerät zu schicken. In den meisten Fällen kann also von einer Schreibleistung von 24-37,5 MByte/s ausgegangen werden. In einer idealen 2 Mbit-Umgebung (200 MByte/s) können also bei einer maximalen Auslastung von 80 Prozent pro Kanal 4-6 Bänder angeschlossen werden.
4.2 Peer-to-Peer Architektur
Neben der soeben beschriebenen und Client-Server Architektur darf die Peer-to-Peer Architektur nicht vergessen werden. Da diese Architektur heutzutage jedoch kaum Anwendung findet, wird hier nur kurz auf diese Architektur eingegangen. Bei der Peer-to-Perr Architektur ist jeder Teilnehmer ist ein sog. peer, denn er kann gleichzeitig einen Dienst nutzen und selbst anbieten. Im Gegensatz zur Client-Server Architektur, in welcher jeder Client einen vom Server angebotenen Dienst annimmt und nutzt, ist die Rollenverteilung in der Peer-to-peer Architektur also aufgehoben.
Typische, aber nicht notwendige Charakteristika von Peer-to-Peer-Systemen sind:
- Peers weisen eine hohe Heterogenität auf bezüglich der Bandbreite, Rechenkraft, Online-Zeit...
- Die Verfügbarkeit/Verbindungsqualität der Peers kann nicht vorausgesetzt werden („Churn“).
- Peers bieten Dienste und Ressourcen an und nehmen Dienste anderer Peers in Anspruch (Client-Server-Funktionalität).
- Dienste und Ressourcen können zwischen allen teilnehmenden Peers ausgetauscht werden.
- Peers bilden ein Overlay-Netzwerk und stellen damit zusätzliche Such/Lookup-Funktionen zur Verfügung.
- Peers haben eine signifikante Autonomie (über die Ressourcenbereitstellung).
- Das P2P-System ist selbstorganisierend.
- Alle übrigen Systeme bleiben konstant intakt und nicht skaliert.
4.3 Intelligente Disksubsysteme
4.3.1 RAID
Ein RAID-System dient zur Organisation mehrerer physischer Festplatten eines Computers zu einem logischen Laufwerk, das eine höhere Datensicherheit bei Ausfall einzelner Festplatten und/oder einen größeren Datendurchsatz erlaubt als ein einzelnes physisches Laufwerk. Während die meisten in Computern verwendeten Techniken und Anwendungen darauf abzielen Redundanzen (das Vorkommen doppelter Daten) zu vermeiden, werden bei RAID-Systemen redundante Informationen gezielt erzeugt, damit beim Ausfall einzelner Komponenten das RAID als Ganzes seine Integrität und Funktionalität behält. In dieser Arbeit wird nur auf die gängigen RAID-Systeme 0, 1, 0+1 / 10 und 5 eingegangen.
RAID-Level im Vergleich:
Aus den verschiedenen RAID-Leveln ergibt sich die Frage, warum welcher RAID-Level eingesetzt werden sollte. Die folgende Tabelle stellt die Kriterien Ausfallsicherheit, Schreib Performance, Lese-Performance und Platzverbrauch er einzelnen RAID-Level gegenüber[13].
| RAID Level | Ausfall-Sicherheit | Lese-Performance | Schreib-Performance | Platzverbrauch |
|---|---|---|---|---|
| RAID 0 | keine | gut | sehr gut | minimal |
| RAID 1 | hoch | schlecht | schlecht | hoch |
| RAID 10 | sehr hoch | sehr gut | gut | hoch |
| RAID 5 | hoch | gut | sehr schlecht | gering |
In den folgenden Kapiteln wird auf die verschiedenen RAID Systeme im einzelnen eingegangen.
4.3.1.1 RAID 0: Blockweises Striping
RAID 0 verteilt die Daten, der der Server auf die virtuellen Festplatte schreibt, blockweise auf eine physikalische Festplatte nach der anderen (blockweise Striping). In der folgenden Abbildung schreibt der Server nacheinander die Blöcke A, B, C, D, E usw. auf die virtuelle Festplatte. Der RAID-Controller verteilt die Folge von Blöcken auf die einzelnen physikalischen Festplatten. Er schreibt den ersten Block (Block A) auf die erste physikalische Festplatte, Block C auf die dritte und Block D auf die vierte. Er schreibt Block E auf die erste Festplatte, Block F auf die zweite und so weiter.
RAID 0 steigert die Performance der virtuellen Festplatte wie folgt:
Die einzelnen Festplatten können über den I/O-Kanal mit dem RAID-Controller wesentlich schneller Datenaustauschen, als sie diese auf die rotierende Scheibe schreiben beziehungsweise von ihr lesen können. Der RAID-Controller sendet den ersten Block zur ersten Festplatte. Diese benötigt einige Zeit, um den Block auf die Festplatte zu schreiben. Während die erste Festplatte den ersten Block auf die physikalische Scheibe bringt, sendet der RAID-Controller bereits den zweiten Block C an die dritte Festplatte. Während dieser Zeit sind die beiden ersten physikalischen Festplatten noch damit beschäftigt, ihre jeweiligen Blöcke auf die physikalische Schicht zu bringen. Wenn der RAID-Controller nun Block E an die erste Festplatte sendet, dann hat dieser Block A zumindest zum Teil, wenn nicht sogar schon ganz auf die physikalische Scheibe geschrieben.
RAID 0 steigert die Performance der virtuellen Festplatte, nicht aber deren Ausfallsicherheit. Fällt eine physikalische Festplatte aus, so sind alle Daten der virtuellen Festplatte verloren. Hier ist Null Redundanz gegeben[14].
- Einsatz von RAID 0:
RAID 0 ist die Wahl für Anwendungen, für die maximale Schreib-Performance wichtiger ist als der Schutz vor Ausfallsicherheit einer Festplatte. Beispiel sind die Speicherung von Multimediadaten für Film und Video-Produktionen. Für Datenbanken wird manchmal RAID 0 als schneller Speicher für Segmente genutzt auf denen Zwischenergebnisse für komplexe Abfragen zwischengespeichert werden. Allerdings gehen Festplatten grundsätzlich im ungünstigen Augenblick kaputt, sodass Datenbankadministratoren auch für temporäre Daten nur dann RAID 0 einsetzen wenn es notwendig ist[15].
4.3.1.2 RAID 1: Blockweises Mirroring
Im Gegensatz zu RAID 0 steht bei RAID 1 die Ausfallsicherheit im Vordergrund. Die Grundform von RAID 1 fasst zwei physikalische Festplatten zu einer virtuellen Festplatte zusammen, indem sie die Daten auf die beiden physikalische Platten spiegelt: schriebt der Server einen Block auf die Virtuelle Festplatte, so schreibt der RAID-Controller diesen Block auf beide physikalische Festplatten. Die einzelnen Kopien bezeichnet man auch als Mirror (Spiegel), Im Normalfall werden zwei, manchmal auch drei Kopien der Daten vorgehalten.
Im Normalfall sind mit purem RAID 1 nur die Leseoperationen Performance-Steigerungen möglich. Beim Lesen der Daten kann die Last immerhin auf beide Festplatten verteilt werden. Allerdings ist dieser Gewinn im Vergleich zu RAID 0 nur sehr gering. Beim Schreiben sind mit RAID 1 sogar eher Performance-Einbußen in Kauf zu nehmen: Die Daten müssen nämlich vom RAID-Controller an beide Festplatten gesendet werden. Dieser Nachteil kann für eine einzelne Schreiboperation vernachlässigt werden, da die Kapazität der I/O-Kanals wesentlich höher ist als die maximale Schreibrate der beiden Festplatten zusammen. Allerdings wird der I/O-Kanal doppelt so stark beansprucht, sodass andere zeitgleicher Datenverkehr auf dem I/O-Kanal beeinträchtigt wird[16].
- Einsatz von RAID 1
Mit RAID 1 sind die Performance und Kapazität limitiert, weil nur zwei physikalische Festplatten eingesetzt werden. RAID 1 wird deshalb gerne für kleinere Datenbanken gewählt, für die die Konfiguration einer virtuellen RAID 5 – oder RAID 10 Festplatte schon zu groß wäre. Ein weiteres Einsatzgebiet von RAID 1 gesteht in der Kombination mit RAID 0[17].
4.3.1.3 RAID 10: Striping und Mirroring kombiniert
Das Problem mit RAID 0 und RAID 1 ist, dass sie entweder die Performance (RAID 0) oder die Ausfallsicherheit (RAID 1) steigern. Man möchte aber gerne beides haben: Performance und Ausfallsicherheit. Hier kommen RAID 0+1 und RAID 10 ins Spiel: Diese beiden RAID-Level kombinieren die Ideen von RAID 0 und RAID 1. RAID 0+1 und RAID 10 bilden jeweils eine zweistufige Virtualisierungshierachie. In der folgende Abbildung fasst der RAID-Controller zwei virtuelle Festplatten zusammen, die nur innerhalb des RAID-Controllers sichtbar sind. In der zweiten Stufe fasst er diese beiden virtuellen Festplatten mittels RAID 1 (Mirroring) zu einer einzelnen virtuellen Festplatte zusammen, nur diese virtuelle Festplatte ist zum Server hin sichtbar. Diesen Prozess fasst man im RAID 0+1 zusammen.
Im Vergleich zu RAID 0+1 vertauscht RAID 10 die Reihenfolge von RAID 0 und RAID 1.
Hier fasst der RAID-Controller zunächst paarweise die physikalischen Festplatten mittels RAID 1 zu insgesamt zwei virtuellen Festplatten zusammen die nur innerhalb des RAID-Controllers sichtbar sind. In der zweiten Stufe fasst der RAID-Controller diese zwei virtuellen Festplatten mittels RAID 0 zu einer virtuellen Festplatte zusammen. Auch hier ist nur diese letzte virtuelle Festplatte zum Server hin sichtbar.
Sowohl bei RAID 0+1 als auch bei RAID 10 sieht der Server jeweils nur eine einzige Festplatte, die im Vergleich zu einer physikalischen Festplatte größer, schneller und ausfallsicherer ist[18].
- Einsatz von RAID 10:
RAID 10 wird eingesetzt, wenn hohe Schreib-Performance und hohe Ausfallsicherheit gefordert sind. Lange Zeit galt die Empfehlung, Logdateien von Datenbanken auf RAID 10 abzulegen. Datenbanken protokollieren alle Änderungen in Logdateien, sodass dieser Bereich einen sehr hohen Schreibanteil hat. Nach einem Systemcrash kann der Wiederanlauf der Datenbank nur dann gewährleistet werden, wenn alle Logdateien vollständig zur Verfügung stehen[19].
4.3.1.4 RAID 5: Striping mit verteiltem Parity
Ähnlich wie RAID 1 werden die Daten bei RAID 5 über mehrere Festplatten verteilt. Die zur Rekonstruierung der Daten benötigten Parity-Informationen sind zusätzlich zu den Daten über alle Festplatten verteilt. D.h. jedes Laufwerk enthält sowohl Daten als auch Parity-Informationen. Die Zugriffsarme der einzelnen Festplatten bewegen sich unabhängig voneinander und gewährleisten einen mehrfach gleichzeitigen Zugriff auf die Laufwerke. Gleichzeitig bedeutet hier jedoch, dass verschiedene Prozesse zeitgleich abgearbeitet werden können. Die Daten einer Datei werden nacheinander von den Platten – also erst A dann B dann C usw. gelesen. Fällt nur eine Festplatte in dem RAID5-Array aus, so können die verlorenen Daten mittels den verbleibenden Parity-Informationen auf den anderen Festplatten rekonstruiert werden. Im allgemeinen wird in einem RAID5-Array zudem eine sogenannte „Hot-Spare“- Festplatte eingefügt. Diese Festplatte wird nicht benutzt, „Springt“ aber bei Ausfall einer anderen Festplatte sofort ein. Das bringt den Vorteil, dass sofort nach Ausfall einer Festplatte mit dem „Rebuild“ der Daten begonnen werden kann. Die Anwender bemerken davon nichts. Während RAID 5 sich beim Lesen sequentieller Daten etwas gleich schell wie RAID 1, ist es beim Schreiben der Daten deutlich langsamer. Grund hierfür ist, dass bei jedem Schreibzugriff vier Arbeitsschritte vollzogen werden müssen.
- Lesen der alten Daten
- Lesen der alten Parity-Information
- Schreiben der neuen Daten
- Schreiben der neuen Parity-Information
Um diese „Write-Penalty“ zu umgehen bzw. zu minimieren, wird in heutigen Systemen ein zusätzlicher Cache auf den Adapterkarten eingesetzt, der die Daten zwischenspeichert, bevor sie endgültig auf die Festplatte geschrieben werden können. Dem System wird dabei das I/O-Complete gemeldet, obwohl die Daten nur in dem Cache des Adapters stehen. Dieser Cache ist batteriegepuffert, so dass selbst bei Ausfall des Adapters keine Daten verloren gehen[20].
- Einsatz von RAID 5:
RAID 5 spart Festplattenplatz auf Kosten einer schlechten Schreib-Performance, bietet jedoch eine hohe Ausfallsicherheit. Die mittlerweile auf den Markt erhältlichen Festplatten haben hohe Umdrehungen, einen hohen Schreib/Lese Cache und mit den neuern Schnittstellen (SAS) auch eine höhere Übertragungsrate zu älteren (SCSI) Versionen.[21].
4.3.2 Snapshot
Bei Festplatten ist ein Snapshot ein besonderer Speicherbereich, der ältere oder jüngere Versionen geänderter Daten aufnimmt. Er enthält keine komplette Kopie des Datenbestands, sondern wird bei jeder Änderung schrittweise gefüllt. Man unterscheidet dabei die Verfahren Redirect-on-Write und Copy-On-Write. Bei Redirect-on-Write werden alle Änderungen in den Snapshot umgeleitet. Bei Copy-on-Write werden Änderungen solange zurückgehalten, bis die ursprünglichen Daten in den Snapshot kopiert sind. Soll nun der Snapshot gelesen werden, wird zuerst geprüft ob der zu lesende Teil im Snapshot vorhanden ist. Ist dies der Fall, wird dieser Teil verwendet - existiert jedoch an dieser Stelle im Snapshot nichts, wird von der Originaldatei gelesen.
- In Dateisystemen:
Snapshots können im Dateisystem implementiert sein, wo z. B. in einem speziellen Verzeichnis auf ältere Versionen des Verzeichnisbaums lesend zugegriffen werden kann. Beispiele sind das WAFL-Dateisystem, UFS in FreeBSD 5, ZFS oder NTFS mit dem Volume Shadow Copy Service in Windows.
- Auf Block-Ebene:
Einige Disk-Arrays und Logical Volume Manager können Snapshots von Datenblöcken ihrer virtuellen Festplatten bzw. Logical Volumes vorhalten. Von Snapshots können Datensicherungen angefertigt werden, ohne auf die Konsistenz des aktuellen Datenbestandes angewiesen zu sein. Einige Anwendungen und Dateisysteme bieten auch die Möglichkeit, die benutzten Daten in einen definierten Zustand zu versetzen und neue Schreibanforderungen zu verzögern, bis das darunter liegende System einen Snapshot erstellt hat. So kann z.B. eine Datenbank angehalten und ein Snapshot erstellt werden. Die Datenbank kann dann sofort wieder gestartet werden und der Snapshot z.B. an anderer Stelle auf Magnetband geschrieben werden. Professionelle Datenbanken ermöglichen allerdings konsistente Datensicherungen, ohne sie anzuhalten und Snapshots einzusetzen. Ist im Dateisystem ein Snapshot zugänglich können Anwender ihre Dateien z.B. nach einem versehentlichen Überschreiben selbst wiederherstellen. Wichtig ist jedoch immer, dass zum Zeitpunkt des Erstellen des Snapshots möglichst keine Schreiboperation mehr aktiv, ist um inkonsistente Daten im Snapshot zu vermeiden. Snapshots können also nur genutzt werden, wenn die Konsistenz des aktuellen Datenbestandes gewährleistet ist. Produkte mit einem direkten Zugang zum Microsoft Volume Snapshot Server sind dadurch von Vorteil, dass man selbst den exakten Zeitpunkt bestimmt, wann ein Backup erstellt werden soll. Zusätzlich erhält man sofort eine Rückmeldung ob das Image gezogen werden konnte - im Gegensatz zu Produkten, die über einen Agenten arbeiten müssen.
4.3.3 Remote Mirroring
Instant Copies sind ebenso wie Snapshots Momentaufnahmen von Datenbeständen. Bei den Instant Copies können in nur wenigen Sekunden Kopien von mehreren Terabyte Daten in den Disksubsystemen erstellt werden. Dadurch werden die CPU und die Busse entlastet, gleichzeitig wird aber die Performance gesenkt. Instant Copies erfolgen virtuell und werden in der Datensicherung, für Testdaten und im Data Mining eingesetzt. Sie eignen sich für das Kopieren von Datenbeständen innerhalb eines Disksubsystems[22]. Für die Datensicherung sind sie aber nur bedingt einsetzbar. Mit Instant Copy erstellte Datenkopieren schützen zwar vor Anwenderfehlern und logischen Fehlern. Instant Copies schützen aber nicht vor dem Ausfall eines Disksubsystems. Allein ein Stromausfall kann den Zugriff auf Produktionsdaten sowie Datenkopien für mehrere Stunden verhindern. Ein Brand würde Originaldaten zerstören. Remote Mirroring bietet Schutz vor solchen Katastrophen. Moderne Disksysteme können heute ihre Daten oder Teile davon selbstständig auf ein zweites Disksubsystem spiegeln, das sehr weit entfernt steht. Das Remote Mirroring wird vollständig von den beiden beteiligten Disksubsystemen abgewickelt. Remote Mirroring ist für Anwendungsserver nicht sichtbar und verbraucht auch nicht deren Ressourcen. Allerding benötigt Remote Mirroring Ressourcen in den beiden Disksubsystemen und im I/O-Kanal, der beide Disksubsysteme miteinander verbindet, sodass unter Umständen Performance-Einbußen bis zur Anwendung durchschlagen können[23].
5 Vorteile der netzwerkbasierten Datenspeicherung
Der Vorteil liegt bei der Datensicherheit und dem Unterbinden von gleichen Datensätzen. Die Daten werden auf hochverfügbaren Storages abgelegt und dort entsprechend gesichert. Das Netzwerk wird dementsprechend entlastet und es können auch entferntere Knoten verbunden werden. Neue Applikations- und Datenbankserver können mit eingebunden und die Daten entsprechend ablegen werden ohne das Management neu zu überdenken. Ein zentrales Management kann zeitnah die Datensicherung überwachen und Daten sichern oder zurücksichern. Die Ausfallsicherheit wird gewährleistet und ein Backup / Archivierung vereinfacht. Im Zuge der GDPdU wird auch die Aufbewahrung geschäftsrelevanter Vorgänge aus verschiedenen Anwendungen und Servern ermöglicht.
5.1 Serverzentrierte Architektur
In der serverzentrierten IT-Architektur ist der Speicher nur von den ein bis zwei Servern, an die er angeschlossen ist, abhängig. Fallen diese beiden Server aus, so kann nicht mehr auf die Daten zugegriffen werden. Jeder Rechner kann auch nur eine begrenzte Anzahl von Controller und Festplatten / Tapes ansprechen und kann daher nicht mitwachsen. Des Weiteren ist die Länge des SCSI-Kabels begrenzt. Es ist jedoch eine kostengünstige und schnell einzurichtende Architektur und begnügt sich einem geringen Systemmanagement und Platzbedarf. In der Praxis werden diese Serverfarmen im ganzen Unternehmen verstreut eingesetzt und haben nicht die Möglichkeit untereinander zu kommunizieren und Daten abzugleichen. So erhöht sich der administrative und personelle Aufwand. Abhilfe kann die speicherzentriete IT-Architektur schaffen[24].
5.2 Speicherzentrierte Architektur
Die Arbeitsstationen werden entlastet, weil die Verarbeitung der Anfragen auf einem anderen System stattfindet, das Netzwerk wird entlastet, da nur das Ergebnis der Suche zur Arbeitsstation übergeben wird und die Ausstattung der Server an Festplattenplatz und Arbeitsspeicher braucht nicht ständig erweitert zu werden. Hier werden nur die entsprechenden Applikations- und Datenbankserver den Anforderungen angepasst und die Antwortzeiten der Clients wird erheblich verbessert.
Applikationsserver benötigen eine hohe Rechenleistung und leistungsfähige Prozessoren, Datenbankserver müssen viele Anfragen bearbeiten und sind mit vielen Adaptern ausgestattet. Diese Ausstattungsvariationen sind meist sehr kostspielig. Zum Einsatz kommen auch unterschiedliche Plattformen (UNIX / SUN / AS400) die dann parallel betrieben werden. Das Problem eines heterogenen Netzwerkes besteht darin, dass diese Systeme unterschiedlich reagieren und zu handhaben sind (unterschiedliche Betriebssysteme besitzen andere File und Datenformate). Entsprechend komplex gestaltet sich das Management solcher Systemlandschaften.
Viele Daten werden an unterschiedlichen Stellen im Unternehmen benötigt. So kann es auch vorkommen, das Daten doppelt oder dreifach vorgehalten werden. Hier sind die Systeme entsprechend Ihrer Daten abzugleichen, welches dann ausschließlich in der dritten Schicht abläuft und den Traffic auf den anderen schichten nicht belastet, aber den Nachteil hat dass das Datenvolumen der Server untereinander ansteigt. Ein weiteres Problem ist die Datensicherung, die üblicherweise ebenfalls über das LAN abgewickelt wird. Diese wird weitestgehend nachts durchgeführt, um den Traffic nicht während der Geschäftszeiten zu belasten.
Weiterhin wird auch die Speichervirtualisierung zur dritten Schicht dazugezählt[25].
6 Fazit
Die Entwicklung schreitet auch hier fort und bietet mit iSCSI ein standardisiertes und kostengünstiges Medium um Speichernetzwerke miteinander zu verbinden. Dieses auf dem IP-Protokoll basierende Speicherprotokoll ist kostengünstig und mit 10 Gbit/s und einem Datendurchsatz von 800 MByte/s steht es dem bis zu 8Gbit/s schnellem Fibre-Channel in nichts mehr nach. Die Spezifikation des ISCSI-Standards wurde durch die Storage Networking Industry Association erstellt und im RFC3720[26] von der Internet Engineering Task Force festgehalten.
Das SAN wird auch weiterhin als Speichernetz genutzt werden. Allerdings kommt mit Technologien wie iSCSI größeres Konvergenzpotenzial hinzu, was zu einer Entwicklung zum übergreifenden Speichernetz beitragen wird. Dabei spielen die darunter liegenden Technologien keine Rolle. NAS, iSCSI, Infiniband (Beschreibung der seriellen Hochgeschwindigkeitsübertragungstechnologie) – jede nützliche Technik wird sicher zur Anwendung kommen. Flexibilität und hohe Funktionalität sowie gute Speicherverwaltung wird künftig auch verstärkt in kleinen und mittelständischen Firmen Verbreitung finden, da die Investitions- und Administrationsangst schwindet.
Das größte und immer wieder wachsende Problem bleibt allerdings das Datenmanagement. Bei den stets steigenden Datenvolumina ist hier in periodischen Abständen eine Optimierung erforderlich. War es vor Jahren noch die Hardware, die bewältigt werden musste, so konzentriert sich nun alles auf die Informationen und deren Verwaltbarkeit. Größere Entwicklungen in den wachsenden SANs unserer Zeit müssen sich also in punkto Virtualisierung, Management und Co. zeigen.
7 Fußnoten
- ↑ Vgl. Björn Robbe (2004), Seiten 9ff
- ↑ Vgl. Brown, A. (2003), S. 5
- ↑ Vgl. Paschen,H. (2004), S. 176
- ↑ Vgl. Dembowski, K. (2005), S.221
- ↑ Vgl. Schmitz, R. (2007), S. 234 ff.
- ↑ Vgl. Mueller, S. (2002), S. 1340
- ↑ Vgl. Gupta, M. (2002), S.3 ff.
- ↑ http://www.tecchannel.de/storage/komponenten/402206/sata_kompatibel_serial_attached_scsi/
- ↑ Vgl. Troppen,Erkens,Müller S. 64
- ↑ http://www.dpunkt.de/leseproben/2484/Kapitel_1.pdf
- ↑ http://www.tecchannel.de/storage/nas/402522/grundlagen_network_attached_storage/index7.html
- ↑ http://www.speicherguide.de/magazin/san.asp?todo=de&theID=462
- ↑ Vgl. Troppens, Erkens, Müller, Tabelle 2.19
- ↑ Vgl. Troppens, Erkens, Müller S. 25
- ↑ Vgl. Troppens, Erkens, Müller S. 40/41
- ↑ Vgl. Troppens, Erkens, Müller S 26
- ↑ Vgl. Troppens, Erkens, Müller S.41
- ↑ Vgl. Troppens, Erkens, Müller
- ↑ Vgl. Troppens, Erkens, Müller S.41
- ↑ Vgl. Troppens, Erkens, Müller
- ↑ Vgl. Troppens, Erkens, Müller, S. 41
- ↑ Vgl. http://www.itwissen.info/definition/lexikon/instant-copy-Instant-Kopie.html
- ↑ Vgl. Troppens, Erkens, Müller S.47/48
- ↑ Vgl. Troppen, Erkens, Müller
- ↑ Vgl. Björn Robbe
- ↑ http://tools.ietf.org/html/rfc3720
8 Literatur- und Quellenverzeichnis
| Digital Archives | Brown, A.; 1. Auflage, London, 2003 |
| Nanotechnologie: Forschung, Entwicklung, Anwendung 1. Auflage | Herbert Paschen, C.Coenen, T Fleischer, R Grünwald, D. Oertel, C. Revermann; Springer, Berlin 2004 |
| PC-Werkstatt: Kompakt, komplett, kompetent | Klaus Dembowski; Pearson Education, 2005 |
| Kompendium Medieninformatik: Medienpraxis (illustrierte Ausgabe) | SpringerLink (Online Service, Roland Schmitz, Burmester M.) - Mitwirkende Personen: M. Burmester, B. Eberhardt, A. Gerlicher, M. Goik, J.-U. Hahn, M. Hedler, O. Kretzschmar, J. Westbomke; Springer, Berlin, 2007 |
| Storage area network fundamentals (illustrierte Ausgabe) | Meeta Gupta, C. Anita Sastry; Cisco Press, 2002 |
| Upgrading and Repairing PCs (illustrierte Ausgabe) | Scott Mueller; Que Publishing, 2002 |
| Speichernetzwerke, 2. Auflage | Troppens, Erkens, Müller; Dpunkt.Verlag GmbH |
| SAN - Storage Area Network | Björn Robbe,;Hanser Fachbuch (2004) |
| IT Wissen - das große Online-Lexikon für Informtionstechnologie | http://www.itwissen.info/ |
| speicherguide.de - Das Storage-Mmagazin | http://www.speicherguide.de/default.aspx |
| SearchStorage.de - Entscheiderwissen für Storage Professionals | http://www.searchstorage.de/ |
| TechChannel - IT Experts Inside | http://www.tecchannel.de/ |
| dpunkt.verlag - Leseproben | http://www.dpunkt.de/ |
9 Abbildungsverzeichnis
| Abb.-Nr. | Abbildung |
|---|---|
| 1 | Interner Aufbau einer Festplatte |
| 2 | Struktur einer Festplatte |
| 3 | Dateisystem und Betriebssystem |
| 4 | Schematischer Zugriff auf eine Datei |
| 5 | Das OSI Referenz Model |
| 6 | Serverzentrierte Architektur |
| 7 | SAS Hardware |
| 8 | DAS (schematischer Aufbau) |
| 9 | Speicherzentrierte Architektur |
| 10 | Bussystem |
| 11 | DS508 von Synology |
| 12 | 209 Pro II von Qnap |
| 13 | SAN-Aufbau |
| 14 | Peer-to-Peer Netzwerk |
| 15 | RAID 0 |
| 16 | RAID 1 |
| 17 | RAID 0+1 |
| 18 | RAID 10 |
| 19 | RAID 5 |
10 Tabellenverzeichnis
| Tabelle Nr. | Bezeichnung |
|---|---|
| 1 | Verschiedene Wechseldatenträger |
| 2 | RAID-Level im Vergleich |























