A low latency non blocking in memory key value store

Chronicle Map is a high performance, off-heap, key-value, in memory, persisted data store.

What is Chronicle Map?

Chronicle Map works like a standard java map yet it automatically distributes data between processes, these processes can be both on the same server or across your network. In other words it's a low latency, huge data key-value store, which can store terabytes of data locally to your process.

More information

GitHub: Source Code

Source Code Documentation: JavaDoc

Getting Started: Technical Guide

GitHub: Issues

Stack Overflow: Questions

Usage: Click Here

Chronicle Map Features

High throughput, low latency, cross process, persisted key-value store

Support for very high update rates by only replicating the latest value

Off-heap data storage, with microsecond latency

Based on the ConcurrentHashMap

Better utilize existing hardware by offering vertical scalability

Entirely embedded, you don’t need any additional processes

TCP connectivity

Concurrent writers on one machine using one copy in memory

Multiple readers with TCP and UDP replication

Resilient writes; if a process dies, the last write is not lost

How does it work?

You define the structure of the entries you wish to store and set the maximum number of entries. Chronicle will create an appropriately sized memory mapped file, say 4TB. The size of the memory mapped file is not constrained by physical memory, so unlike heap-based key-value stores, chronicle eliminates the pauses that can occur when the store has to be resized.

If your data grid spans two or more processes on the same server, each process will share the same 4TB space, fine grain locking will ensure that your data integrity. The data is transferred directly using shared memory when replicating on the same server we don’t use TCP/IP loopback, which will add additional latency, we just use memory. This approach gives you outstanding performance, we have measured data being transferred between processes in a staggering 40 nanoseconds.

Chronicle Map and Scalability

Chronicle Map has been tested to do 30 million updates per second with 500 million key-values on a 16 core machine, with a 64 MB heap and no minor collections.

Supporting multiway and multi-mastering and 1.6 million updates per second replicated across a low bandwidth between two laptops.

A ping-pong test between processes of 25 million per second. One process set a flag from false to true, the other from true to false. Data is not lost even if the JVM crashes on the next line.

Chronicle Community Photo 2
Want to Learn More?

See the Benefits of Chronicle's Products in Action

At Chronicle, we believe less is more. Learn more about why and how Chronicle can support your business and how it can increase efficiency and streamline your systems and workflows by speaking with one of our experts.

We can also offer you our release notes.

    By completing this form, I agree that Chronicle Software may keep me informed of its products, services and offerings. To view our privacy policy, click here. To unsubscribe click here.