Please enable JavaScript.
Coggle requires JavaScript to display documents.
Chapter 5: Data Flow Architecture - Coggle Diagram
Chapter 5: Data Flow Architecture
Batch Sequential
Applicable domains of batch sequential architecture:
■ Data are batched.
■ Intermediate file is a sequential access file.
■ Each subsystem reads related input files and writes output files.
Benefits:
■ Simple divisions on subsystems.
■ Each subsystem can be a stand-alone program working on input data and producing output data.
How to implement Batch Sequetial?
We can run a Unix Shell script as follows in batch sequential mode:
myShel1.sh
(exec) searching kwd < inputFile > matchedFile
(exec) counting < matchedFile > countedFile
(exec) sorting < countedFile > myReportFile
Where (exec) may be required by some Unix shell
What is batch sequential?
Traditional data processing model
Widely used in 1950's - 1970's
RPG and COBOL are two typical programming languages working on this model.
In batch sequential architecture, each data transformation subsystem or module cannot start its process until its previous subsystem completes its computation
Limitations:
■ Implementation requires external control.
■ It does not provide interactive interface.
■ Concurrency is not supported and hence throughput remains low
■ High latency.
Pipe and Filter Architecture
three ways to make the data flow:
Pull only (Read only)
A data sink may pull data from an upstream.
A filter may pull data from an upstream.
Pull/Push (Read/Write)
A filter may pull data from an upstream and push transformed
data in a downstream.
Push only (Write only)
A data source may push data in a downstream.
A filter may push data in a downstream
two types of filters:
Active
pulls in data and pushes out the transformed data (pull/push)
it works with a passive pipe that provides read/write
mechanisms for pulling and pushing.
Passive
lets connected pipes push data in and pull data out.
It
works with active pipes that pull data out from a filter and push data into the next filter
Pipe and filter architecture is another type of data flow architecture where the flow is driven by data.
Pipe and Filterin Unix
The pipe operator "|" moves the stdout from its predecessor to the stdin of its successor
Pipe and Filterin Java
The Java API provides the Pi pedWriter and Pi pedReader classes in the java.io package
Applicable domains of pipe and filter architecture:
■ The system can be broken into a series of processing steps over data streams, and at each step filters consume and move data incrementally.
■ The data format on the data streams is simple, stable, and adaptable if necessary.
■ Significant work can be pipelined to gain increased performance.
■ Producer or consumer-related problems are being addressed.
Benefits:
■ Concurrency: It provides high overall throughput for excessive data processing
.
■ Reusability: Encapsulation of filters makes it easy to plug and play, and to substitute.
■ Modifiability: It features low coupling between filters, less impact from adding new filters, and modifying the implementation of any existing filters as long as the I/O interfaces are unchanged.
■ Simplicity: It offers clear division between any two filters connected by a pipe.
■ Flexibility: It supports both sequential and parallel execution.
Limitations:
■ It is not suitable for dynamic interactions.
■ A low common denominator is required for data transmission in the ASCII formats since filters may need to handle data streams in different formats, such as record type or XML type rather than character type.
■ Overhead of data transformation among filters such as parsing is repeated in two consecutive filters.
■ It can be difficult to configure a pipe
Process Control Architecture
process control data:
■ Controlled variable: a target controlled variable such as speed in a cruise control system or the temperature in an auto H/A system. It has a set point goal to reach. The controlled variable data should be measured by sensors as a feedback reference to recalculate manipulated variables.
■ Input variable: a measured input data such as the temperature of return air in a temperature control system.
■ Manipulated variable: can be adjusted by the controller.
Applicable domains of process control architecture:
■ Embedded software systems involving continuing actions
■ Systems that need to maintain an output data at a stable level
■ The system can have a set point—the goal the system will reach at its operational level
Benefits of close-loop feedback process control architecture over open
forward architecture:
■ It offers a better solution to the control system where no precise formula can be used to decide the manipulated variable.
■ The software can be completely embedded in the devices.