GoogleFS

GoogleFS

Das Google File System (GFS) ist ein proprietäres, auf Linux basierendes verteiltes Dateisystem, das Google für seine Anwendungen benutzt. Es ist für Googles Internetsuche optimiert. Die Daten sind bleibend in teilweise mehrere Gigabyte großen Dateien gespeichert, die selten gelöscht, überschrieben oder verkleinert werden. Auch ist es für hohe Datendurchsätze optimiert.

Aufbau

Das Google File System ist an die notwendigen Anforderungen der Websuche angepasst, die eine enorme Menge an zu speichernden Daten generiert. GFS entstand aus einem früheren Versuch Googles, welcher den Namen „BigFiles“ trägt und von Larry Page sowie Sergei Brin während ihrer Forschungstätigkeit an der Stanford-Universität entwickelt wurde.

Die Daten werden durchgehend in sehr großen, teilweise sogar mehrere Gigabyte großen Dateien gespeichert, welche nur in extrem seltenen Fällen gelöscht, überschrieben oder komprimiert werden; Daten werden üblicherweise angehängt oder ausgelesen. Das Dateisystem ist auch entworfen und optimiert worden, um auf Googles rechnenden Clustern laufen zu können, deren Netzknoten aus billigen Computern bestehen, was bedeutet, dass man der hohen Ausfallrate und dem damit verbundenen Datenverlust individueller Netzknoten vorbeugen muss. Andere Designentscheidungen setzen auf hohe Datendurchsatzraten, auch wenn dies auf Kosten der Latenzzeit geht.

Ein GFS Cluster besteht aus einem Master und hunderten oder tausenden Chunkservern. Die Chunkserver speichern die Dateien, wobei jede Datei in 64 MB große Stücke („Chunks“) gespalten ist, ähnlich Clustern oder Sektoren in gebräuchlichen Dateisystemen.

Um Datenverlust zu verhindern wird jede Datei beim GFS mindestens drei mal pro Cluster gespeichert, sodass bei Ausfall eines Chunkservers nur verschwindend geringe Verzögerungen auftreten, bis die Datei von einem anderen Chunkserver geliefert wird. Je nach Bedarf kann die Anzahl auch höher liegen, etwa bei ausführbaren Dateien. Jedem Chunk wird eine eindeutige, 64 Bit lange Kennzeichnung zugewiesen, logische Mappings der Dateien zu den einzelnen Chunks werden beibehalten.

Der Master dagegen speichert normalerweise keine Chunks, sondern vielmehr deren Metadaten, wie etwa Dateinamen, Dateigrößen, ihren Speicherort sowie den ihrer Kopien, welche Prozesse gerade auf welchen Chunk zugreifen etc. Die Master sind auch in der Lage, Kopien von Chunks zu erstellen und auf einen Chunkserver zu speichern, sollte ein solcher ausfallen und die Anzahl eines Chunks unter die Mindestanzahl fallen. Die Metadaten werden aktuell gehalten, indem die Chunkserver regelmäßig Aktualisierungen an den Master senden (heart-beat messages“, auf deutsch etwa: „Herzschlag-Mitteilungen“).

Der Quelltext des GFS verbietet mehr als einen Master pro Cluster. Dies hat den Anschein, ein Fehler im System zu sein, die dessen Skalierbarkeit und Zuverlässigkeit begrenzt, da die maximale Größe und Uptime von der Leistungsfähigkeit und Uptime des Masters abhängt, da dieser die Metadaten katalogisiert und fast alle Anfragen durch ihn laufen; Googles Techniker behaupten allerdings, dies sei nicht der Fall und GFS sei sehr wohl skalierbar. Der Master ist im Normalfall der leistungsfähigste Netzknoten im Netzwerk. Um die Ausfallsicherheit zu gewähren gibt es gewöhnlich einen „Schatten-Master“, der den Hauptrechner spiegelt und notfalls, sollte der Master einmal ausfallen, einspringt. Engstellen gibt es nur selten, da Clients nur nach Metadaten fragen, die gewöhnlich in einem Cache gespeichert werden – sie sind sehr kompakt, pro Megabyte Daten fallen lediglich einige Kilobyte an. Durch den Einsatz nur eines Hauptrechners verringert sich die Softwarekomplexität drastisch, die erforderlich wäre, beispielsweise für Datenkonsistenz, Ausgleich der Netzbelastung und Systemsicherheit zu sorgen.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • GoogleFS — Google File System Google File System (GFS) est un système de fichiers distribué propriétaire. Il est développé par Google pour leurs propres applications. Il ne paraît pas être publiquement disponible et il est construit sur du code GPL (ext3 et …   Wikipédia en Français

  • GoogleFS — …   Википедия

  • List of file systems — The following lists identify, characterize and link to more thorough information on computer file systems.Many older operating systems support only their one native file system, which does not bear any name apart from the name of the operating… …   Wikipedia

  • GmailFS — should not be confused with GoogleFS, the filesystem created by Google for use in heavyweight servers hard storage, adjusted for performance and large file handling features. GmailFS is a virtual file system developed by Richard Jones which uses… …   Wikipedia

  • Fossil (file system) — Fossil is the default file system in Plan 9 from Bell Labs. It serves the network protocol 9P and runs as a user space daemon, like most Plan 9 file servers. Fossil is different from most other file systems due to its snapshot/archival feature.… …   Wikipedia

  • BigTable — est un système de gestion de base de données compressées, haute performance, propriétaire, développé et exploité par Google[1]. C est une base de données orientée colonnes, dont se sont inspirés plusieurs projets libres, comme HBase, Cassandra ou …   Wikipédia en Français

  • GmailFS —  À ne pas confondre avec GoogleFS, un système de fichier inventé par Google pour gérer le stockage de gros fichiers sur ses serveurs. GmailFS est un système de fichiers virtuel, développé par Richard Jones, grâce auquel on peut accéder à l… …   Wikipédia en Français

  • Hadoop — Développeur Apache Software Foundation Environnements Multiplate forme, principalement POSIX …   Wikipédia en Français

  • GmailFS — no se debería confundir con GoogleFS, sistema de archivos creado por Google para manejar los archivos grandes de manera rápida y eficiente. GmailFS es un sistema de archivos virtual desarrollado por Richard Jones que utiliza una cuenta de Gmail… …   Wikipedia Español

  • Список файловых систем — Это список файловых систем (ФС) и сетевых протоколов, эмулирующих работу файловой системы, с небольшим описанием. Чтобы узнать более, вы можете пройти по соответствующей ссылке. Некоторые старые системы поддерживали только одну файловую систему,… …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”