JunoDB is PayPal’s own secure, consistent, and highly available key-value store that delivers low single-digit millisecond latency at any scale.
JunoDB employs a broker-based architecture to enable horizontal connection scaling while simplifying the client library and separating complex logic and configuration from the application. Additionally, consistent hashing is used for data partitioning, minimizing data movement during cluster scaling. To ensure redundancy and fault tolerance, each piece of data is replicated across a set of storage nodes, each in a different logical zone.
JunoDB consists of three key components that work together seamlessly:
- JunoDB client libraryResides within the application and provides an API that allows application data to be easily stored, retrieved, and updated through the JunoDB agent. JunoDB thin client libraries are implemented in multiple programming languages such as Java, Golang, and C++, making it easy to integrate with applications written in different programming languages.
- JunoDB agentThe instances are driven by a load balancer and accept client requests and replication traffic from other sites. Each proxy connects to all JunoDB storage server instances and forwards each request to a set of storage server instances according to the shard map maintained in ETCD.
- JunoDB storage serverInstances accept operation requests from agents and store data in memory or in RocksDB. Each storage server instance is responsible for a set of shards, ensuring smooth and efficient data storage and management.
#JunoDB #Homepage #Documentation #Downloads #Secure #Consistent #Highly #KeyValue #Store #News Fast Delivery