Welcome
Welcome to the EclipseStore Reference Manual. This manual includes concepts, instructions and examples to guide you on how to use EclipseStore, version 4.0.1.
What is EclipseStore?
EclipseStore is a Java-native object graph persistence engine. Instead of mapping your objects to tables (like an ORM) or documents (like a document database), EclipseStore stores your Java object graph directly in its native structure.
Key Benefits
-
No mapping required — store plain Java objects without annotations, schemas, or mapping files
-
Ultra-fast — binary serialization is significantly faster than traditional database approaches
-
Almost any Java type — persist almost any Java object, including collections, records, and custom types, see Supported Java Features
-
Flexible storage targets — store on local file system, cloud storage (S3, Azure, GCS), SQL databases, Redis, Kafka, and more
-
Lazy loading — load only the data you need, when you need it
-
ACID transactions — full transactional guarantees for data consistency
-
Minimal dependencies — lightweight with only SLF4J as an external runtime dependency
How Does It Compare?
| EclipseStore | Traditional Database + ORM | |
|---|---|---|
Data model |
Plain Java objects |
Tables/Documents + mapping layer |
Query language |
Java streams and methods |
SQL / JPQL / proprietary |
Schema management |
Automatic type evolution |
Migration scripts |
Setup complexity |
Minimal (1 dependency) |
Database server + driver + ORM framework |
You should be familiar with the Java programming language and you should have installed your preferred Integrated Development Environment (IDE).
Quick Start
// Define your data model as plain Java classes
public class DataRoot
{
private final List<String> messages = new ArrayList<>();
public List<String> getMessages() { return messages; }
}
// Start the storage
DataRoot root = new DataRoot();
EmbeddedStorageManager storage = EmbeddedStorage.start(root, Paths.get("data"));
// Store data
root.getMessages().add("Hello EclipseStore!");
storage.store(root.getMessages());
// Shutdown
storage.shutdown();
For a complete guide, see Getting Started.
What’s new in 4.0.1
See Changelog.
Architecture
For a high-level overview of how EclipseStore and the Eclipse Serializer relate, see Architecture Overview.
Examples and Demo Projects
License
EclipseStore is available under Eclipse Public License - v 2.0.