Flow Circuit

Network Atlas · synthetic process studies

Spare capacity. One growing queue.

A data pipeline can have spare capacity and still fall behind. Here, eight workers can process 80,000 records each second, but uneven routing sends too much work to one of them. Follow its growing queue, then compare a scenario that shares the load.

Start with the observed snapshot and select a module to read its incoming work, completed work, and queue. Switch to replay to follow those readings over time. Modeled scenario puts a proposed change beside the original record. Both studies use synthetic data; the moving particles illustrate the counts in the tables.

Latest observation: 60s

Observations arrive every 10 seconds. The cursor holds the latest reading between observations. Individual event timings are unavailable.

Rates describe an interval; queue counts describe its observation time.
MeasureObserved
Arrivals (records/s)60,000
Completions (records/s)40,000
Installed capacity (records/s)80,000
Queued records1,200,000
Display controls

Particles show direction. They never count jobs, complete work, or evict records from the ledger.

Pipe width shows transferred volume/s in the labeled units. Outlines enclose modules; labeled residual pipes retain original cross-links and returns. Queue bars show stock, scaled to the largest visible queue. Partition readings show completions / capacity.

Skip to data table
Synthetic rates held constant over the declared 60-second window. Complete no-loss ledger; initially empty FIFO queues; no cancellation, rejection or duplicate work. The seven original cold partitions divide 30,000 records/s as evenly as integral counts permit.
Read chart interactions

Focus a mark with the arrow keys and press Space, or click a module. This readout subscribes through ObservationReadout to the chart’s ID inside LinkedCharts. The observation carries the canonical vertex and analysis revision for linked views and inspectors.

No mark activated yet.

Inspect the apparatus

Partition 1: queue.

Arrivals 30,000; completions 10,000; capacity10,000records/s. Queue: 1,200,000records.

Recognized patterns:fan out, fan in, serial chain. Overlapping patterns share this module's work.

Required upstream in the admitted graph:source, router.

Original neighborhood

Rows are sources; columns are destinations. Cells count original edge IDs.
From / torouterp1output
router··
p1··
output···

Cells retain original edges. Parallel links and returns remain separate evidence.

Data dictionary and assumptions
rate
Transferred volume during the declared interval, per second; every pipe names its unit.
queue
Work remaining at the observation time. Null means unmeasured, not zero.
capacity
Installed service capacity, separate from measured completions.
roots
Requests crossing the external boundary; retries never create new roots.
attempts
Inventory visits including first attempts and retry attempts.
timing
Synthetic aggregate observations every 10 seconds; individual event times are unavailable.
model
A separate conditional calculation; observed tape entries are preserved.
  • Synthetic rates held constant over the declared 60-second window.
  • Complete no-loss ledger; initially empty FIFO queues; no cancellation, rejection or duplicate work.
  • The seven original cold partitions divide 30,000 records/s as evenly as integral counts permit.

Source: etl-hot-partition-v1, flow-circuit-intervals-v1. The supplied tape contains aggregate observations; it cannot recover individual service times.

Explore the module grammar

A split and rejoin cannot establish an all-member or first-success rule. Toggle the declared rules to see the same graph become unclassified. Inspect parallel ports, the self-loop, and the backward return; none supply missing measurements.

All-member join: requires A and B. Selector: accepts the first success from A or B. Dependency gate: requires A separately from transported work. Completed members, winners, cancellations, blocked work and all rates remain unmeasured.

Skip to data table
This synthetic graph demonstrates declared apparatus, not measured process behavior. Join members are A and B; completed members, winning alternatives, cancellations and blocked work are unmeasured. The dependency on A is a separate declared rule; the return edge does not establish a retry episode. Parallel edges, a self-loop, a backward return and unknown upstream coverage retain their original identities.

Inspect the apparatus

Join: join all.

Arrivals Unmeasured; completions Unmeasured; capacityUnmeasuredrecords/s. Queue: Unmeasuredrecords.

Recognized patterns:fan out, fan in, serial chain. Overlapping patterns share this module's work.

Required upstream in the admitted graph:source. Upstream coverage is incomplete; this cannot establish independence.

Original neighborhood

Rows are sources; columns are destinations. Cells count original edge IDs.
From / toajoingateb
a···
join···
gate···
b···

Cells retain original edges. Parallel links and returns remain separate evidence.

Network Atlas public reader. Import FlowCircuitChart from semiotic/atlas; prepare its circuit and admitted editions with semiotic/atlas/core.