The dataflow approach to relational operators gives both pipelined and partitioned parallelism. Relational data operators take relations (uniform sets of records) as input and produce relations as outputs. This allows them to be composed into dataflow graphs that allow pipeline parallelism
(left) in which the computation of one operator proceeds in parallel with another, and partitioned parallelism in which operators (sort and scan in the diagram at the right) are replicated for each data source, and the replicas execute in parallel.