Skip to main content

Module merge

Module merge 

Source
Expand description

A Batcher implementation based on merge sort.

The MergeBatcher requires a “merger” that implements the Merger trait, which provides hooks for manipulating sorted “chains” of chunks: merging chunks, and through Extractor also splitting them apart based on time.

Raw input containers are fed to the batcher via Batcher::insert, which chunks them with its Chu before merging: forming sorted, consolidated chunks is the first stage of the batcher’s own work rather than something a caller arranges.

The geometric ladder of chains is a MergeLadder, which holds no opinion about how updates leave it, and can serve other batchers.

Modules§

chunker
Organizes streams of data into sorted chunks for a MergeBatcher.
vec
A Merger implementation for vector update containers.

Structs§

MergeBatcher
Creates batches from chunks of sorted, consolidated tuples.
MergeLadder
A geometric ladder of sorted, consolidated chains, merged as they arrive.

Traits§

Extractor
A Merger that can also split a chain apart by time, as the merge batcher extracts.
Merger
A trait to describe interesting moments in a merge ladder.
Sealer
Forms a batch from a whole chain of updates at once.