Session
Versioned Datasets - Rethinking local in-memory caches
In distributed systems, multiple services rely on the same dataset, which is served through APIs. For relatively small datasets (a few gigabytes), local in-memory caches offer microsecond latency without the complexity of a distributed cache, thereby avoiding the risk of adding another integration when the reward doesn't justify it.
The JVM ecosystem offers excellent caching libraries, such as Caffeine, Guava Cache, and Ehcache, but traditional approaches force operational trade-offs. Cold starts delay deployments. TTL expirations trigger cache stampedes. Full reloads cause memory spikes and GC pauses that disrupt service. Incremental updates require complex change-tracking infrastructure. At the gigabyte scale, these challenges become critical—precisely where in-memory caching matters most.
This talk introduces an alternative paradigm: treating datasets as versioned snapshots with delta-based distribution—applying Git's model to in-memory data. We'll explore Hollow, Netflix's open-source library that implements this pattern, achieving zero-downtime updates and eliminating memory spikes and GC pressure entirely.
Viswanathan Ranganathan
Senior Engineer, Netflix
San Francisco, California, United States
Links
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top