Skip to content

doc(bench): add the 3-stream BerlinMOD streaming benchmark catalog and timings#30

Merged
estebanzimanyi merged 5 commits into
MobilityDB:masterfrom
estebanzimanyi:doc/streaming-benchmark-catalog
Jun 5, 2026
Merged

doc(bench): add the 3-stream BerlinMOD streaming benchmark catalog and timings#30
estebanzimanyi merged 5 commits into
MobilityDB:masterfrom
estebanzimanyi:doc/streaming-benchmark-catalog

Conversation

@estebanzimanyi

Copy link
Copy Markdown
Member

The streaming sibling of the cross-platform BerlinMOD benchmark, under BerlinMOD/benchmarks/streaming/. It defines the streaming query set (a 9-query subset of the BerlinMOD intents in continuous, windowed, and snapshot forms across Flink, Kafka, and NebulaStream), records the snapshot-equals-batch bridge to the 3-DB benchmark, and specifies the engine-agnostic result schema the three harnesses emit. The cross-platform timing table is seeded with the measured MobilityFlink figures; the Nebula and Kafka columns are not yet measured.

…d timings

The streaming sibling of the cross-platform BerlinMOD benchmark, under
BerlinMOD/benchmarks/streaming/. It defines the streaming query set (a 9-query
subset of the BerlinMOD intents in continuous, windowed, and snapshot forms
across Flink, Kafka, and NebulaStream), records the snapshot-equals-batch bridge
to the 3-DB benchmark, and specifies the engine-agnostic result schema the three
harnesses emit. The cross-platform timing table is seeded with the measured
MobilityFlink figures; the Nebula and Kafka columns are not yet measured.
…nstants and add parity

The cross-platform streaming timings carry the MobilityFlink figures on the real
BerlinMOD instants corpus (216075 events, reprojected 3857→4326 through MEOS) and
add the streaming-equals-batch parity result: the continuous form matches a batch
pass over the same corpus through the same MEOS predicate exactly for Q3 and Q8.
…nstants

The Kafka ev/s column carries the EmbeddedBrokerBenchmark figures over an
in-process EmbeddedKafkaCluster on the same 216,075-instant corpus and
corpus-derived parameters as the Flink column. The per-event spatial cells run
below Flink's in-JVM mini-cluster because Kafka Streams routes every record
through the broker, while the per-cell shape matches across both engines.
render_streaming_chart.py emits one SVG per streaming form (continuous,
windowed, snapshot) comparing the Flink and Kafka events/s on the 216,075-instant
real BerlinMOD corpus on a log scale; the timings doc embeds the three charts.
The Nebula column is not yet measured and is omitted from the bars.
Title 'BerlinMOD three-platform stream benchmark' with a matched-tone summary
and the shared skeleton (what it measures, workload, methodology, invariants,
per-engine throughput grid, per-form charts, reading, parity, contributing,
reproduce). Per-engine columns (MobilityFlink / MobilityKafka / MobilityNebula)
and the per-form charts are ready to fill.
@estebanzimanyi estebanzimanyi merged commit fc7ca22 into MobilityDB:master Jun 5, 2026
@estebanzimanyi estebanzimanyi deleted the doc/streaming-benchmark-catalog branch June 7, 2026 12:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant