Fork me on GitHub

Xodusby JetBrains

Java Transactional Schema-less Embedded database

Get Started

final Environment env = Environments.newInstance("/home/me/.myData");

final Store store = env.computeInTransaction(txn ->
    env.openStore("Messages", WITHOUT_DUPLICATES, txn));
    
env.executeInTransaction((txn) -> 
   { store.put(txn, stringToEntry("Hello"),
                    stringToEntry("World!")); });

out.println(env.computeInTransaction(txn ->
    entryToString(store.get(txn, stringToEntry("Hello")))));

env.close();
            

Getting Started

Features

Xodus uses Log-Structured data storage. Reads are completely non-blocking due to MVCC and true Snapshot isolation.

Performance

Here is performance comparison of Xodus, Berkeley DB JE, MapDb, Chronicle Map and H2 MVStore using Tokyo Cabinet Benchmark with 1000000 keys.

Find out more