10 Branchen, die verteilte Datenverarbeitung nutzen

Drei Lagerarbeiter diskutieren Ideen auf einem Tablet

Verteilte Datenverarbeitung ist ein Prozess, der zahlreiche Rechenressourcen an verschiedenen Betriebsstandorten nutzt, um die Prozesse eines einzelnen Computers nachzuahmen. Verteilte Datenverarbeitung verbindet verschiedene Computer, Server und Computernetzwerke, um Rechenaufgaben unterschiedlichster Größen und Zwecke auszuführen.

Verteilte Datenverarbeitung funktioniert sogar in der Cloud. Und obwohl es stimmt, dass verteiltes Cloud Computing und Cloud Computing in der Theorie im Wesentlichen dasselbe sind, unterscheiden sie sich in der Praxis in ihrer globalen Reichweite, wobei verteiltes Cloud Computing in der Lage ist, Cloud Computing auf verschiedene Regionen auszudehnen.

In kleinen, verteilten Computersystemen mit Komponenten nahe beieinander, können Komponenten über ein lokales Netzwerk (LAN) verbunden werden. In größeren verteilten Systemen, deren Komponenten geografisch getrennt sind, sind die Komponenten über Wide Area Networks (WAN) miteinander verbunden. Die Komponenten in einem verteilten System teilen Informationen über ein ausgeklügeltes System der Nachrichtenübermittlung, unabhängig davon, welche Art von Netzwerk verwendet wird.

Verteilte Datenverarbeitung befasst sich oft mit den intensivsten und kompliziertesten Rechenherausforderungen der Datenverarbeitung, weshalb diese Aktivität in der Regel die Implementierung von gemeinsamem Speicher und mehreren Komponenten erfordert. Darüber hinaus ist verteilte Datenverarbeitung auf hochkoordinierte Synchronisation und große Rechenleistung angewiesen, sodass das gesamte System Daten effektiv verarbeiten, bei Bedarf Dateifreigabe durchführen und auf ein gemeinsames Ziel hinarbeiten kann.

10 Anwendungsfälle für verteilte Datenverarbeitung

Die folgenden Beispiele zeigen, auf welch vielfältige Weise verteilte Datenverarbeitung in vielen Branchen und auf vielen Plattformen eingesetzt wird:

Kommunikation

In der Kommunikationsbranche kommt verteilte Datenverarbeitung routinemäßig zum Einsatz. Telekommunikationsnetze sind Beispiele für Peer-to-Peer-Netze, sei es in Form von Telefonnetzen oder Mobilfunknetzen. Zwei wichtige kommunikationsbasierte Beispiele für verteilte Datenverarbeitung sind das Internet und E-Mail, die beide das moderne Leben verändert haben.

Computing

Die Datenverarbeitung wird von großen Revolutionen in den Bereichen künstliche Intelligenz (KI) und maschinelles Lernen (ML) dominiert. Beide Technologien entwickeln sich rasant weiter und nutzen verteilte Datenverarbeitung in großem Umfang. Die Algorithmen, die KI und ML unterstützen, benötigen große Mengen an Trainingsdaten sowie starke und konstante Mengen an Rechenleistung. Verteilte Datenverarbeitung bietet beides.

Datenverwaltung

Bei der verteilten Datenverarbeitung werden komplexe Datenverwaltungs- und Datenspeicheraufgaben in Teilaufgaben umgewandelt, die über Knoten verteilt sind. Diese Einheiten sind entweder Client oder Server, die Bedürfnisse identifizieren und Anfragen stellen bzw. daran arbeiten, diese Bedürfnisse zu erfüllen. Die Datenbankverwaltung ist ein Bereich, der von verteilter Datenverarbeitung profitiert, ebenso wie verteilte Datenbanken, die durch die Aufteilung von Aufgaben in kleinere Aktionen schneller arbeiten. Verteilte Datenverarbeitung beinhaltet sogar die Nutzung von Rechenzentren als Teil einer verteilten Rechenkette.

Energie

Sowohl der Energie- als auch der Umweltsektor sind von verteilter Datenverarbeitung betroffen, die die Smart-Grid-Technologie bei der Regulierung der Nutzung und Optimierung des Energieverbrauchs unterstützt. Intelligente Netze werden auch genutzt, um Umweltdaten von verschiedenen Eingabegeräten zusammenzutragen.

Finanzen

Verteilte Datenverarbeitung sorgt dafür, dass große Rechenlasten gleichmäßig auf mehrere Systeme verteilt werden. Darüber hinaus nutzen Mitarbeiter in bestimmten Finanzbereichen bereits verteilte Datenverarbeitung für Dinge wie die Risikobewertung. Verteilte Datenverarbeitung hilft Finanzinstituten, riesige Berechnungen durchzuführen, um fundiertere Entscheidungen zu treffen und Finanzstrategien zu entwickeln.

Herstellung

Verteilte Datenverarbeitung nutzt ihre Ressourcen, um die Automatisierung in großen Produktionsanlagen effizient zu halten, und dient häufig auch der Lastverteilung. Es gibt sogar die verteilte Fertigung, bei der das verteilte Cloud-Modell auf die geografisch verteilten Produktionsmittel angewendet wird. Die Fertigung umfasst auch die Entwicklung und Herstellung von Internet der Dinge (IoT)-Geräten und -Werkzeugen, die Daten sammeln und übertragen.

Medizinischer Bereich

Verteilte Datenverarbeitung ermöglicht viele der bahnbrechenden Technologien der modernen Medizin, darunter robotergestützte Operationen, die auf enorme Datenmengen angewiesen sind. Durch die Nutzung ihres Talents für erstaunlich detaillierte 3D-Grafiken und Videoanimationen kann die verteilte Datenverarbeitung Patentverfahren und pharmazeutisches Design geplanter Medikamente demonstrieren.

Einzelhandel

Bei Einzelhändlern, die nicht nur Online-Einkaufsalternativen anbieten, sondern auch stationäre Filialen betreiben, kann es manchmal zu Bestandabweichungen kommen. Distributed Order Management Systems (DOMS), ermöglicht durch verteilte Datenverarbeitung, sorgen dafür, dass E-Commerce-Anwendungen reibungslos laufen, sodass moderne Einzelhändler mit den sich ändernden Kundenerwartungen Schritt halten können.

Wissenschaft

Verteilte Datenverarbeitung wird in einer wachsenden Zahl wissenschaftlicher Bereiche eingesetzt, wie zum Beispiel beim Trainieren von Neural Networks. Auch die wissenschaftliche Datenverarbeitung nutzt die enormen Funktionen der verteilten Datenverarbeitung, um umfangreiche wissenschaftliche Berechnungen zu lösen, wie z. B. im Bereich der Raumfahrt. Mithilfe von verteilter Datenverarbeitung erstellte Videosimulationen können wissenschaftliche Projektionen besser verständlich machen.

Videospiele

Anbieter von Massively Multiplayer Online Games (MMOGs) nutzen verteilte Datenverarbeitung in großem Umfang, um ihre komplexen Echtzeit-Spielumgebungen zu gestalten und zu betreiben. Ein komplexes Ineinandergreifen von Betriebssystemen, Netzwerken und Prozessoren ermöglicht es Tausenden von Endbenutzern, gemeinsam an einer fesselnden Erfahrung teilzunehmen.

Was macht ein verteiltes Rechensystem aus?

Obwohl es keine festgelegten Regeln darüber gibt, was ein verteiltes Rechensystem ausmacht, besitzt selbst die einfachste Form der verteilten Datenverarbeitung in der Regel mindestens drei grundlegende Komponenten:

  • Primärer Systemcontroller: Der primäre Systemcontroller steuert alles innerhalb eines verteilten Systems und überwacht und verfolgt alles, was innerhalb dieses Systems geschieht. Seine größte Aufgabe ist die Verwaltung und Administration aller Serveranfragen, die in das System eingehen.
  • Systemdatenspeicher: Der Systemdatenspeicher, der sich üblicherweise auf dem Festplattenspeicher befindet, ist das Repository des Systems für alle gemeinsam genutzten Daten. In übersichtlichen Systemen können die gemeinsam genutzten Daten auf einem oder mehreren Rechnern liegen, aber alle im System verwendeten Computer benötigen Zugriff auf den Datenspeicher.
  • Datenbank: Verteilte Rechensysteme speichern alle ihre Daten in relationalen Datenbanken. Sobald dies geschehen ist, werden die Daten von Benutzergruppen gemeinsam genutzt. Relationale Datenbanken sorgen dafür, dass alle Mitarbeiter sofort auf dem gleichen Stand sind.

Über diese Kernkomponenten hinaus kann jedes verteilte Rechensystem an die Bedürfnisse eines Unternehmens angepasst werden. Einer der großen Vorteile eines verteilten Rechensystems besteht darin, dass das System durch das Hinzufügen weiterer Rechner erweitert werden kann, wodurch seine Skalierbarkeit erhöht wird. Der andere wichtige Vorteil ist die erhöhte Redundanz, d. h. wenn ein Computer im Netz aus irgendeinem Grund ausfällt, wird der Betrieb des Systems trotz dieser Fehlerstelle fortgeführt.

Das Ziel verteilter Rechensysteme ist es, das verteilte Rechennetzwerk so funktionieren zu lassen, als wäre es ein einziges System. Diese Koordination wird durch ein ausgeklügeltes System zur Nachrichtenübermittlung zwischen den verschiedenen Komponenten erreicht.

Kommunikationsprotokolle regeln diesen wechselseitigen Nachrichtenaustausch und schaffen eine Beziehung, die als „Kopplung“ bezeichnet wird und zwischen diesen Komponenten besteht. Diese Beziehung wird in einer von zwei Formen ausgedrückt:

  • Lockere Kopplung: Die Verbindung zwischen zwei lose gekoppelten Komponenten ist schwach genug, sodass sich Änderungen an einer Komponente nicht auf die andere Komponente auswirken.
  • Enge Kopplung: Der Grad der Synchronisation und Parallelität ist bei eng gekoppelten Komponenten so hoch, dass ein Prozess namens „Clustering“ redundante Komponenten verwendet, um die kontinuierliche Funktionsfähigkeit des Systems zu gewährleisten.

Fehlertoleranz ist ein weiteres zentrales Konzept – ein Korrekturprozess, der es einem Betriebssystem ermöglicht, auf einen Fehler in Software oder Hardware zu reagieren und ihn zu beheben, während das System weiterläuft.

Verteilte Datenverarbeitung befasst sich außerdem mit den positiven und negativen Auswirkungen der „Nichtsequenzialität“ – der gleichzeitigen Ausführung mehrerer Betriebsbefehlssequenzen. Zu den wichtigsten positiven Eigenschaften gehört die Tatsache, dass die Parallelität gemeinsame Ressourcen ermöglicht und die parallele Berechnung mehrerer Prozess-Threads. (Paralleles Rechnen sollte allerdings nicht mit der parallelen Verarbeitung verwechselt werden, bei der Laufzeitaufgaben in mehrere kleinere Aufgaben unterteilt werden.)

Zu den Nachteilen der Parallelität gehören eine erhöhte Latenz und sogar Engpässe im Datenverkehr, wenn die übertragene Datenmenge die normal empfohlene Bandbreite übersteigt.

Architekturen für verteilte Computersysteme

Verteilte Computertypen werden typischerweise nach der jeweils verwendeten Architektur für verteilte Datenverarbeitung klassifiziert:

  • Client-Server-System: Verwendet eine Client-Server-Architektur, die es ermöglicht, sie mit mehr als einem System zu verwenden. Ein Client leitet die Eingabe als Anfrage an den Server (in der Regel entweder als Befehl für eine bestimmte Aufgabe oder als Anfrage für weitere Rechenressourcen). Der Server führt anschließend die Aufgabe aus und meldet die durchgeführten Maßnahmen zurück.
  • Peer-System: Dies basiert auf der Peer-Architektur und wird auch als „Peer-to-Peer“-System bezeichnet. Peer-Systeme nutzen Knoten, die entweder als Client oder Server fungieren – sie identifizieren Bedürfnisse und stellen Anfragen oder arbeiten daran, diese Bedürfnisse zu erfüllen. Wie der Name schon sagt, gibt es in Peer-Systemen keine Hierarchie, sodass Programme, die in Peer-Systemen arbeiten, frei miteinander kommunizieren und Daten über Peer-Netzwerke übertragen können.
  • Middleware: Der „Mittelsmann“, der zwischen zwei unterschiedlichen Anwendungen operiert. Middleware ist selbst eine Anwendung, die zwischen zwei Apps liegt und beide bedient. Middleware hat auch einen interpretativen Aspekt. Sie fungiert als Übersetzer zwischen verschiedenen Interoperabilitäts-Apps, die auf verschiedenen Systemen ausgeführt werden, und ermöglicht diesen Apps den freien Datenaustausch.
  • Dreistufiges System: So genannt wegen der Anzahl der Schichten, die zur Darstellung der Funktionalität eines Programms verwendet werden. Im Gegensatz zu einer typischen Client-Server-Architektur, bei der Daten innerhalb des Clientsystems abgelegt werden, speichert das dreistufige System die Daten stattdessen in seiner mittleren Schicht, die als Datenschicht bezeichnet wird. Dreistufige Systeme werden häufig in Web-Anwendungen eingesetzt.
  • N-Stufiges-System: Manchmal auch als mehrschichtige verteilte Systeme bezeichnet, haben N-Stufige-Systeme eine unbegrenzte Kapazität für Netzwerkfunktionen, die sie zur Verarbeitung an andere Apps weiterleiten. Die Architektur von N-Stufigen-Systemen ähnelt der von Drei-Stufigen-Systemen. N-Stufige-Systeme werden häufig als architektonische Grundlage für zahlreiche Webdienste und Datensysteme verwendet.

Dies sind zwar die wichtigsten Arten von Architekturen für verteilte Datenverarbeitung, es gibt aber noch weitere Paradigmen der verteilten Datenverarbeitung, die Erwähnung verdienen:

  • Blockchain: Blockchain ist eine verteilte Datenbank oder verteilter Ledger, der auf den verschiedenen Computern eines Netzwerks sowohl repliziert als auch synchronisiert wird. Die Blockchain sorgt für Redundanz, indem sie den Quell-Ledger an alle Computer der Kette verteilt.
  • Grid-Computing: Grid-Computing ist eine Art des verteilten Rechnens, die sich mit nicht-interaktiven Arbeitslasten befasst und in der Regel eine Kombination aus Grid-Frameworks und Middleware-Software umfasst. Das über die Benutzeroberfläche zugängliche skalierbare Raster funktioniert wie ein riesiges Dateisystem.
  • Heterogene Datenverarbeitung: Heterogene Datenverarbeitung ist eine Form der verteilten Datenverarbeitung, die es einem einzelnen Computersystem ermöglicht, Rechensubsysteme zu verwalten. Die Prozessoren, die bei der heterogenen Datenverarbeitung im Einsatz sind, arbeiten zwar an unterschiedlichen Aufgaben, aber alle arbeiten parallel, um die Computerleistung zu beschleunigen und die Bearbeitungszeiten für die Aufgaben zu minimieren.
  • Microservices: Microservices sind eine Form der verteilten Datenverarbeitung, bei der Anwendungen in viel kleinere Komponenten, oft als „Dienste“ bezeichnet, aufgeteilt werden. Service-Frameworks sind durch die Anwendungsprogrammschnittstelle (API) miteinander verbunden, die die Interaktion zwischen den Komponenten ermöglicht.

Erste Schritte

In unserer kurzen Tour durch die verteilte Datenverarbeitung haben wir ermittelt, was verteilte Datenverarbeitung ist, was bei der Erstellung verteilter Computersysteme eine Rolle spielt und welche Arten von Architekturen mit verteilten Computersystemen verbunden sind. Darüber hinaus haben wir von 10 Branchen erfahren, die ihre Zukunft schon heute klug gestalten, indem sie verteilte Computersysteme gezielt einsetzen.

Wie bei verteilter Datenverarbeitung bieten Ihnen die IBM Satellite-Produkte die Tools, um Anwendungen überall dort bereitzustellen und auszuführen, wo Sie möchten – sei es lokal, über Edge Computing oder in Public Cloud-Umgebungen.

Nutzen Sie einen gemeinsamen Satz von Cloud-Services, der Toolchains, Datenbanken und KI umfasst. Die von IBM Cloud Satellite verwaltete verteilte Cloud-Lösung liefert Cloud-Services, APIs, Zugriffsrichtlinien, Sicherheitssteuerungen und Compliance.

Autor

Phill Powell

Staff Writer

IBM Think

Blick von oben auf einen Geschäftsmann, der in einem Büro im Innenhof ein Mobiltelefon benutzt

Erkenntnisse, die Sie sich nicht entgehen lassen sollten. Abonnieren Sie unsere Newsletter.

Gehen Sie über den Hype hinaus mit Expertennachrichten zu KI, Quantencomputing, Cloud, Sicherheit und vielem mehr.

Abonnieren Sie noch heute