Paypal Open Sources JunoDB, A Distributed Key Value Store
Paypal Open Sources JunoDB, A distributed key value store built on top of RocksDB. JunoDB is PayPal's home-grown secure, consistent and highly available key-value store providing low, single digit millisecond, latency at any scale. With JunoDB, applications can efficiently store and cache data for fast access and load reduction on relational databases and other services.
JunoDB is Paypal home grown project. Intially it started as single threaded C++ program and later rewritten in Golang to support multi-core and concurrency. It can be used as in-memory / persistant data store with long TTLs. JunoDB can be commonly used for Caching, Idempotent (removes duplicate processing), Counters and System of Record (SoR).
If we try to compare JunoDB with Redis, then JunoDB appears to store data primarily on disk, and limits storage by disk size, but then caches in memory as necessary. But Redis persists data to disk based on the size of the RAM.
In Paypal currently, a large JunoDB cluster comprises over 200 storage nodes, processing over 100 billion requests daily. It is really a great achievement and kodo's to Paypal Engineering team.