Datenstrom

Datenstrom

Mit Datenströmen (englisch: data streams) bezeichnet man in der Informatik kontinuierliche Abfolgen von Datensätzen, deren Ende nicht im Voraus abzusehen ist. Die einzelnen Datensätze sind dabei von beliebigem, aber festem Typ. Die Menge der Datensätze pro Zeiteinheit (Datenrate) kann variieren und so groß sein, dass nur begrenzte Ressourcen zur Weiterverarbeitung zur Verfügung stehen. Im Gegensatz zu anderen Datenquellen können Datenströme daher nicht als ganzes, sondern nur fortlaufend verarbeitet werden. Insbesondere ist im Gegensatz zu Datenstrukturen mit wahlfreiem Zugriff (wie z. B. Arrays) nur ein sequentieller Zugriff auf die einzelnen Datensätze möglich.

Datenströme werden häufig zur Interprozesskommunikation verwendet, sowohl zur Übertragung von Daten über Netzwerke als auch zur Kommunikation zwischen Prozessen auf einem Rechner. Beispiele für Datenströme sind Wetterdaten sowie Audio- und Videoströme (Streaming Media). Die kontinuierliche Übertragung von Daten über ein Netzwerk wird auch als Streaming bezeichnet.

Inhaltsverzeichnis

Datenströme vs. statische Daten

Nicht strömende, das heißt statische Daten werden in der Regel als Tupel von Werten in Relationen in einer Datenbank gespeichert. Sie sind ungeordnet und begrenzt. Die Daten in Datenströmen besitzen dagegen eine geordnete zeitliche Reihenfolge und können praktisch unbegrenzt auftreten. Während Daten in Relationen auch gezielt aktualisiert und gelöscht werden können, ist in Datenströmen nur das Einfügen von neuen Daten möglich, da nicht mit wahlfreiem Zugriff auf einzelne Elemente zugegriffen werden kann. Es können allerdings mittels spezieller Datenstromalgorithmen einzelne Tupel eines Datenstroms, basierend auf ihren Eigenschaften ausgewählt und ggf. zu einem neuen Datenstrom umgewandelt werden.

Geschichte

Das Konzept von Datenströmen in der Datenverarbeitung lässt sich unter Anderem auf die von Doug McIlroy vorgeschlagenen Pipes zur Verknüpfung von Makros zurückführen, die 1964 als „communication files“ im Dartmouth Time-Sharing System implementiert waren und 1972 in das Betriebssystem Unix integriert wurden. Dabei handelt es sich um eine Datenverbindung zwischen zwei Prozessen nach dem FIFO-Prinzip. Inzwischen findet sich das Prinzip von Streams in den meisten modernen Programmiersprachen.

Verarbeitung von Datenströmen

Verarbeitung von Datenströmen in einem DSMS

Die meisten Datenströme werden mittels speziell auf eine Anwendung zugeschnittener Programme verarbeitet. Beispielsweise können Audio/Videoströme mit speziellen Wiedergabeprogrammen abgespielt werden. Zur allgemeinen Verwaltung beliebiger Datenströme werden seit Anfang des 21. Jahrhunderts in der Informatik sogenannte Data Stream Management Systeme (DSMS) entwickelt. Diese Systeme, die noch ein relativ neues Forschungsgebiet darstellen, sind vergleichbar mit herkömmlichen Datenbankverwaltungssystemen (DBMS) für statische Daten. Ein Beispiel eines solchen DSMS ist der Stanford Stream Data Manager. Als Anfragesprache wurde in Erweiterung zur SQL im Rahmen dieses Projekts die Continuous Query Language (CQL) entwickelt.

Typische Probleme bei der Verarbeitung von Datenströmen sind große Datenmengen in kurzer Zeit und die begrenzten Ressourcen, die zu ihrer Verarbeitung zur Verfügung stehen, da die eingehenden Daten nicht alle zwischengespeichert werden können und immer nur ein Ausschnitt der Daten bekannt ist. Damit sind auch nur bestimmte Algorithmen möglich. Auch die zur Auswertung zur Verfügung stehende Zeit ist oft beschränkt, da zeitkritische Anwendungen schnelle Ergebnisse erwarten. Bei Systemen, die innerhalb einer garantierten Zeitspanne ein Ergebnis liefern, spricht man auch von Echtzeitsystemen.

Da die eingehenden Datenströme praktisch unbegrenzt sind, sind die daraus berechneten Ergebnisse einer Verarbeitung von Datenströmen oft selbst wiederum Datenströme. Deshalb wird zwischen eingehenden Datenströmen (ingoing stream, instream oder downstream) und ausgehenden Datenströmen (outgoing stream, upstream) unterschieden.

Literatur

Siehe auch


Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

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

  • Datenstrom — Datenstrom,   der Fluss von Datenbits durch einen Kommunikationskanal zur Übertragung von Information …   Universal-Lexikon

  • Datenstrom — informacijos srautas statusas T sritis automatika atitikmenys: angl. data flow; information flow vok. Datenfluß, m; Datenstrom, m; Informationsfluß, m rus. информационный поток, m; поток информации, m pranc. flux d informations, m …   Automatikos terminų žodynas

  • Alternativer Datenstrom — Alternative Datenströme sind eine Datenstruktur zur Aufnahme zusätzlicher strukturierter Daten innerhalb einer Datei neben den Hauptdaten – ein Konzept, um zu einer Datei mehrere Datenströme zu speichern. Obwohl auch jenseits verwendet und… …   Deutsch Wikipedia

  • Continuous Query Language — Die Continuous Query Language (CQL) ist eine deklarative Anfragesprache für Datenströme in Data Stream Management Systemen. Sie stellt eine Erweiterung der SQL dar. Die CQL wurde bis Januar 2006 im Rahmen des STREAM Projekts an der Stanford… …   Deutsch Wikipedia

  • 1000BASE-T — In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Metro Ethernet. Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst …   Deutsch Wikipedia

  • 1000Base-CX — In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Metro Ethernet. Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst …   Deutsch Wikipedia

  • 1000Base-LX — In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Metro Ethernet. Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst …   Deutsch Wikipedia

  • 1000Base-SX — In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Metro Ethernet. Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst …   Deutsch Wikipedia

  • 1000Base-T — In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Metro Ethernet. Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst …   Deutsch Wikipedia

  • 1000BaseLX — In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Metro Ethernet. Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst …   Deutsch Wikipedia

Share the article and excerpts

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