[prev] 27 [next]

Pipelining

How pipelining is organised between two operators:
  • blocks execute "concurrently" as producer/consumer pairs
  • first operator acts as producer; second as consumer
  • structured as interacting iterators (open; while(next); close)
Advantage:
  • no requirement for disk access (results passed via memory buffers)
Disadvantage:
  • higher-level operators access inputs via linear scan,   or
  • requires sufficient memory buffers to hold all outputs