Batch and Streaming Processing

The deepest split in data processing is not between tools but between two views of data. Batch processing treats data as bounded: yesterday's orders are a finite set you can read from start to finish, then produce a result. Streaming treats data as unbounded: orders keep arriving and never "finish", so results are updated continuously. The same question, revenue per genre, can be answered either way, at very different cost and latency.

Batch processes bounded chunks on a schedule; streaming processes each event as it arrives
Batch processes bounded chunks on a schedule; streaming processes each event as it arrives

Subsections