stringtranslate.com

Поток данных

В вычислительной технике поток данных — это широкое понятие, которое имеет различные значения в зависимости от приложения и контекста. В контексте архитектуры программного обеспечения поток данных относится к потоковой обработке или реактивному программированию .

Архитектура программного обеспечения

Потоковые вычисления — это парадигма программного обеспечения, основанная на идее представления вычислений в виде ориентированного графа , где узлами являются вычисления, а по ребрам — поток данных. [1] Поток данных также можно назвать потоковой обработкой или реактивным программированием . [2]

Существует множество языков обработки потоков данных различных форм (см. Потоковая обработка ). Аппаратное обеспечение потока данных (см. Архитектура потока данных ) является альтернативой классической архитектуре фон Неймана . Наиболее очевидным примером программирования потоков данных является подмножество, известное как реактивное программирование с использованием электронных таблиц. Когда пользователь вводит новые значения, они мгновенно передаются следующему логическому «актору» или формуле для расчета.

Распределенные потоки данных также были предложены как абстракция программирования, отражающая динамику распределенных мультипротоколов. Ориентированная на данные перспектива, характерная для программирования потоков данных, способствует созданию функциональных спецификаций высокого уровня и упрощает формальные рассуждения о компонентах системы.

Аппаратная архитектура

Архитектура аппаратного обеспечения для потоков данных была основной темой исследований компьютерной архитектуры в 1970-х и начале 1980-х годов. Джек Деннис из Массачусетского технологического института (MIT) был пионером в области статических архитектур потоков данных. Проекты, которые используют обычные адреса памяти в качестве тегов зависимостей данных, называются машинами статического потока данных. Эти машины не позволяли одновременно выполнять несколько экземпляров одних и тех же процедур, поскольку простые теги не могли различать их. Проекты, использующие память, адресуемую по содержимому, Арвинд называет машинами динамических потоков данных . Они используют теги в памяти для облегчения параллелизма. Данные текут вокруг компьютера через компоненты компьютера. Он поступает с устройств ввода и может выходить через устройства вывода (принтер и т. д.).

Параллелизм

Сеть потоков данных — это сеть одновременно выполняемых процессов или автоматов, которые могут взаимодействовать путем отправки данных по каналам (см. Передача сообщений ).

В сетях процессов Кана , названных в честь Жиля Кана , процессы детерминированы . Это означает, что каждый определенный процесс вычисляет непрерывную функцию от входных потоков к выходным потокам и что сеть определенных процессов сама является определенной, таким образом вычисляя непрерывную функцию. Это означает, что поведение таких сетей можно описать набором рекурсивных уравнений, которые можно решить с помощью теории неподвижной точки . Движение и трансформация данных представлены серией фигур и линий.

Другие значения

Поток данных также может относиться к:

Смотрите также

Словарное определение потока данных в Викисловаре

Рекомендации

  1. Шварцкопф, Мальта (7 марта 2020 г.). «Замечательная полезность вычислений с потоками данных». АСМ СИГОПС . Проверено 31 июля 2022 г.
  2. ^ Краткое введение в потоковую обработку