Stream Processing
Stream Processing ist ein Modell für die Verarbeitung eines kontinuierlichen Datenstroms. Es unterscheidet sich von traditionellen Programmiermodellen, bei denen ein Datensatz von einer Festplatte in den Speicher geladen und dann auf beliebige Weise verarbeitet wird. Bei der Stream-Verarbeitung wird eine kleine Anzahl von vordefinierten Operationen schrittweise parallel ausgeführt, sobald Daten im Stream verfügbar werden.
Die Stream-Verarbeitung eignet sich gut für DSP (digitale Signalverarbeitung), Computer Vision, digitale Video- und Bildverarbeitung und Big Data-Analyse. Sie ermöglicht es einem Unternehmen, Daten in Echtzeit zu verarbeiten, zu analysieren und Schlussfolgerungen daraus zu ziehen.
Sprachen und Plattformen
Die folgenden Programmiersprachen, Plattformen und Dienste sind für die Stream-Verarbeitung konzipiert:
- Amazon Kinesis - Eine Stream-Verarbeitungsplattform, die von Amazon Web Services bereitgestellt wird.
- Azure Stream Analytics - Stream-Verarbeitung und Echtzeit-Analysen auf der Microsoft Azure-Plattform.
- BrookGPU - Eine frühe, einflussreiche Stromverarbeitungssprache, die an der Stanford University entwickelt und gehostet wird.
- CUDA - Compute Unified Device Architecture, eine von NVidia entwickelte proprietäre Plattform und API für parallele Datenverarbeitung.
- Flink - Eine von Apache entwickelte Stream-Verarbeitungs-Engine mit Schwerpunkt auf Ereignisverarbeitung und Zustandsverwaltung.
- Google Cloud Dataflow - Ein vollständig verwalteter Stream-Verarbeitungsdienst, der als Teil der Google Cloud Platform verfügbar ist.
- Kafka - Eine Open-Source-Softwareplattform für die Stream-Verarbeitung, die von LinkedIn entwickelt und später an die Apache Software Foundation gespendet wurde.
- RaftLib - Eine quelloffene Stream-Verarbeitungsbibliothek für C++, die am Supercomputing Lab der Washington University in St. Louis entwickelt wurde.
- StreamIt - Eine am MIT entwickelte Programmiersprache für die Erstellung von Stromverarbeitungssystemen.
Stand: 31.03.2022