Verteilte IT-Systeme: Die Technologie hinter der digitalen Mobilität

Nachrichten lesen, in Facebook einen Beitrag teilen, Emails beantworten und surfen. Das Smartphone bietet heute viele Möglichkeiten mit anderen Menschen vernetzt zu sein und zu jeglichen Themen an Information zu kommen. Für jeden ist das selbstverständlich und jeder erwartet, dass es funktioniert, egal wo man ist. Dabei vergisst man aber oft, auch wenn es einem so einfach erscheint, dass im Hintergrund eine ganze Maschinerie beteiligt ist, um Nachrichten zu versenden. Aber wie funktioniert das eigentlich und was passiert im Hintergrund wirklich?

Der komplexe Hintergrund von einfachen Klicks

Das Verschicken einer Nachricht erscheint uns als eine einfache Aufgabe. Es geht schnell und wir bekommen auch gleich für ein erfolgreiches Versenden eine Bestätigung, wie es beispielsweise in WhatsApp der Fall ist. Auch wenn dies nur in einem »Augenblick« passiert, hat die entsprechende Nachricht einen bedeutsamen Weg zurückgelegt und verschiedene beteiligte Komponenten durchlaufen. Dazu gehören Mobilfunkanlagen, Satelliten und Router, die diese Nachricht über weite Strecken weiterleiten. Datenbanken speichern diese Daten dann z.B. in der Cloud.

Soll beispielsweise in Facebook ein Bild gepostet werden, wird das Bild über das Mobilfunk- und Satellitennetz gesendet. Viele Router sind dann daran beteiligt, dass das Bild zu seinem Zielort gelangt, an dem es dann verarbeitet und gespeichert wird. Der Zielort ist ein Facebook-Server, der das Bild entgegennimmt und dieses an andere, gerade zur Verfügung stehende Server zur Verarbeitung weiterreicht. Schlussendlich wird die Nachricht dann in einer Datenbank und ggf. noch in einer weiteren Datenbank zur Sicherung gespeichert. Dies alles geschieht in weniger als einer Sekunde.

Verteilte IT-Systeme: Das intelligente Rückgrat mobiler Anwendungen

Die beteiligten Komponenten bei einer Nachrichtenübermittlung sind physisch über verschiedene Orte verteilt. Ein solches »verteiltes IT-System« verteilt die Last der Anfragen und Daten und kann leicht skaliert bzw. angepasst werden.

Schauen wir uns Facebook an: Dort werden beispielsweise pro Tag bis zu 350 Mio. Bilder verarbeitet und in der Minute werden durchschnittlich 4 Mio. Likes registriert. In Summe hat Facebook im Moment über 300 Petabyte an Daten. Das sind umgerechnet 300 Mio. Gigabyte. Würde man dieses Datenvolumen auf DVDs mit jeweils einer Kapazität von 4,7 Gigabyte speichern wollen, bräuchte man fast 64 Mio. DVDs. Die manuelle Suche nach einem Bild auf einen der 64 Mio. DVDs mit Hilfe von nur einer Person, wäre wohl eine Lebensaufgabe, wenn das dann auch reichen würde. Setzt man mehrere Personen ein, würde die Suche schon schneller gehen. Auch wenn natürlich im Vergleich zu einer Person Datenbanken bei einer Suchanfrage schneller sind, gilt dieses Prinzip auch bei solchen. Auch sie wären einfach überlastet. So werden auch mehrere Server und Datenbanken eingesetzt, um Anfragen aufzuteilen. Dies ist daher unter anderem ein Grund dafür, warum ein System in viele Server und Datenbanken aufgeteilt (verteilt) ist. So kann eine Anfrage an einen schon ausgelasteten Server einfach an einen anderen Server weitergereicht werden, der weniger stark ausgelastet ist. Das Gleiche gilt auch für Datenbanken.

Ausblick: Die verteilte Zukunft

Verteilte Systeme sind die technologische Antwort auf die immer weiterwachsenden Datenmengen, die effektiv und effizient verarbeitet werden müssen. Deshalb sind verteilte Systeme ein wesentlicher Bestandteil der Digitalisierung geworden. Aber natürlich haben auch Sie ihre Herausforderungen. Dazu zählen beispielswiese die Datensicherheit, die Fehlertoleranz oder auch die Koordination der Speicher- und Rechenressourcen. Sind Komponenten verteilt, gibt es bei der Datensicherheit viel mehr Risiken zu beachten, weil sie mehr Angriffsmöglichkeiten auf Server bieten. Es muss verhindert werden, dass Ausfälle von Servern aufgrund von Netzwerkfehlern das ganze verteilte System lahmlegen. Auch muss das verteilte System fehlertolerant sein und Probleme von anderen Servern kompensieren können.

Werden jedoch die Herausforderungen den Vorteilen von verteilten Systemen gegenübergestellt, überwiegen die Vorteile bei weitem. So besitzt ein verteiltes System eine große Skalierbarkeit, weil Komponenten einfach hinzugefügt werden können. Die Verteilung von Rechenkapazitäten macht Berechnungen von großen Datenmengen erst möglich. Zu guter Letzt schafft ein verteiltes System auch Transparenz über das ganze System, da die einzelnen Komponenten für sich allein fungieren und somit Fehler leichter lokalisiert und behoben werden können.

Zur Erkennung von Fehlern und Störungen in verteilten Systemen beschäftigt sich auch die Abteilung Digital Business das Fraunhofer IAO und das Team Cognitive IoT Applications des Anwendungszentrums KEIM. Zu diesem Thema wird bald auch eine Studie erscheinen.

Keine Frage: Den verteilten IT-Systemen wird die Zukunft gehören, wenn die aktuellen digitalen Trends anhalten. Trotzdem sollte uns bewusst sein, dass neue Forschungsergebnisse und Erkenntnisse andere Architekturen hervorbringen können, die die komplexe Verteilungsarchitektur von heute eines Tages ablösen können.

Leselinks:

Andreas Freymann

Andreas Freymann

Studierter Wirtschaftsinformatiker und Projektleiter am Fraunhofer IAO. Das große Interesse liegt im Gebiet neuer Technologien, Entwicklungen und Trends in den Bereichen der Informatik, Daten und Mobilität. Andreas bloggt am liebsten über aktuelle Themen von seiner Arbeit. In der Freizeit beschäftigt er sich mit der Astronomie, tanzt für sein Leben gern, spielt Klavier und komponiert, fotografiert gern und ist viel unterwegs.

Autorenprofil - Twitter - Xing - LinkedIn