Get the latest tech news

The power of interning: making a time series database smaller


This week-end project started by browsing the open-data repository of Paris’ public transport network, which contains various APIs to query real-time departu...

The improvement was small this time, but if we look at the second half of an ImpactedObject we can observe that several objects may be affected by the exact same set of disruptions, for example because they represent stations on the same line. FormatBytesRelative sizeEncode timeDecode timePostcard32758690.29%17 ms16 msBincode54373300.48%16 ms24 msCBOR174845671.54%56 ms128 msJSON264851312.33%74 ms118 msJSON (pretty)650262815.72%152 ms135 msIt’s also interesting to compare the encoding and decoding times, as the more compact formats tend to be faster to process too. By using the serde_tuple crate, you drop part of the self-describing guarantees for other formats like JSON too, as the sender and receiver must agree on the schema (e.g. the specific order of fields in each struct) to be able to communicate without data corruption.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of power

power

Photo of Rust

Rust

Photo of time series database

time series database

Related news:

News photo

C1 modem breaks no speed records, but is power efficient

News photo

China May Be Ready To Use Nuclear Fusion for Power by 2050

News photo

Show HN: Robyn – “Batman Inspired” Python Web Framework Built with Rust