Time-Series Compression Visualizer

Compare lossless encoders and lossy reducers for IoT telemetry streams.

animation
time-series
compression
telemetry
edge
analytics
Learner-ready time-series compression workbench with Play/Step animation, generated IoT streams, byte estimates, reconstruction error metrics, source-backed technical notes, and mobile-ready learning support.
Interactive animation IoT telemetry Compression tradeoffs

Time-Series Compression Visualizer

Watch a sensor stream move from raw readings to encoded packets, then compare what the gateway can reconstruct. The page separates lossless compression from lossy reduction so a smaller payload is not mistaken for unchanged data.

64 pointsraw sensor stream
64 emittedsamples or groups sent
1.0xraw bytes / encoded bytes
0.00maximum reconstruction error
Raw stream

Each point carries a timestamp and value. The teaching baseline uses 16 payload bytes per point before protocol framing.

Lossless encoders

Delta, delta-of-delta, Gorilla-style XOR, and RLE keep enough information to rebuild the exact stream in this model.

Lossy reducers

Deadband and downsample modes send fewer readings by accepting bounded error, freshness delay, or both.

Radio reality

Payload shrinkage can reduce airtime, but wake time, headers, acknowledgements, duty-cycle rules, and CPU cost still matter.

Smooth temperature stream

A slowly changing environmental sensor where adjacent readings are strongly related.

Step 1 of 5 - Sense
Original and reconstructed time-series chart A generated IoT telemetry line chart with emitted packet markers and optional reconstructed values.
Original stream Reconstructed stream Emitted samples
Raw baseline

Raw mode sends every point. It is simple, exact, and expensive when radio payload dominates.

Compare every method on the same stream

The table recalculates with the current scenario, point count, noise level, tolerance, and downsample window.

Method Type Emitted Encoded payload Ratio Max error Best lesson

Event Log

Learning Support
Use lossless when exact replay matters

Audits, billing records, scientific samples, and incident timelines often require values to round-trip exactly.

Use lossy only with a stated tolerance

Deadband and window averages are useful when downstream logic can tolerate the largest shown error and delay.

Match the method to the pattern

Smooth numeric streams favor deltas. Mostly repeated states favor RLE. Noisy streams often compress less well.

Technical Notes And Sources

The byte counts are normalized teaching estimates, not exact implementations of a specific database, codec, radio, or CPU. The baseline uses 64-bit timestamps plus 64-bit values, so raw payload is 16 bytes per point before tags, headers, encryption, acknowledgements, and batching.

  • Delta encoding: stores changes instead of absolute values. It helps when adjacent values or timestamp intervals are small.
  • Delta-of-delta: stores the change in interval changes. Regular sampling makes many timestamp delta-of-delta terms near zero.
  • Gorilla-style encoding: uses delta-of-delta ideas for timestamps and XOR patterns for floating-point values; the lesson here is pattern sensitivity, not byte-exact Gorilla storage.
  • RLE: stores repeated value runs. It is excellent for repeated state streams and poor when nearly every value differs.
  • Deadband and downsampling: are lossy reductions. They save payload by changing values, dropping intermediate points, or delaying what the receiver knows.
  • Radio savings: reduced payload can lower airtime, but end-to-end energy also depends on protocol overhead, receive windows, retries, wake time, duty-cycle rules, and compression compute cost.

Sources: Gorilla time-series database paper, InfluxDB TSM storage engine notes, Timescale compression documentation, and Simple-8b integer compression reference.

Practice 1

Switch to Occupancy and compare RLE with Delta. Which metric explains the difference fastest?

Practice 2

Increase noise in Vibration mode. Watch how the lossless ratios change and explain why noisy values cost more bits.

Practice 3

Use Deadband on Temperature. Find a tolerance where the ratio improves but the maximum error still fits the use case.