2.5 Datenfluss
75
2.5 Datenfluss
2.5.1 Überblick
Viele echte Anwendungen lassen sich sehr „natürlich” durch Datenflüsse beschreiben. Datenflussmodelle beschreiben den Weg, auf dem Daten von Komponente zu
Komponente fließen [146]. Jede Komponente transformiert die Daten dabei auf eine
bestimmte Art. Eine mögliche Definition von Datenfluss ist die folgende:
Definition 2.14 ([582]): Datenflussmodellierung „ist ein Vorgang, bei dem identifiziert, modelliert und dokumentiert wird, wie sich Daten in einem Informationssystem
bewegen. Die Datenflussmodellierung betrachtet Prozesse (Aktivitäten, die Daten
von einer Form in eine andere transformieren), Datenspeicher (Bereiche, in denen
Daten aufbewahrt werden), externe Einheiten (die Daten an ein System senden oder
Daten von diesem empfangen) und Datenflüsse (Wege, auf denen Daten fließen
können)”.
Ein Datenflussprogramm wird als gerichteter Graph angegeben, bei dem die
Knoten, auch Aktoren genannt, Berechnungen und die Kanten Kommunikationskanäle darstellen. Jeder Aktor führt funktionale Berechnungen aus, also Berechnungen, die alleine auf den Eingabewerten durchgeführt werden. Jeder Prozess in einem
Datenflussgraphen ist in eine Folge von atomaren „Ausführungen” (engl. firings)
aufgeteilt. Jede Aktivierung erzeugt und verbraucht Marken (engl. tokens). VonNeumann-Programme geben eine totale Ordnung für die Ausführung von Befehlen
vor. Datenflussprogramme vermeiden eine unnötige Vorgabe einer solchen totalen
Ordnung.
Beispiel 2.20: Abb. 2.37 zeigt als Beispiel den Datenfluss in einem Video-ondemand-System [299]. Kunden betreten das System über die Netzwerkschnittstelle.
Ihr Zugriffswunsch wird der Warteschlange der Kunden hinzugefügt.
Netzwerkschnittstelle
Kundenliste
Dateisystem
Warteschlange
Speichersubsystem
Zugriffskontrolle
Scheduler
Speichersteuerung
Zuschauer
VideoZuschauer
Videodaten
Netzwerkadresse
Zuschauerbefehle
daten
Abb. 2.37 Video on demand-System (blau: Speicher, gelb: Verarbeitung, grün: E/A)
Précédent

- 98/485

Suivant