Perst

maintenance

by McObject LLC · since 2004 · also known as Perst Embedded Database, Perst.NET

McObject's embedded object database for Java and .NET, dual-licensed GPL or commercial.

objectspatialembedded libraryopen source (copyleft)legacy

maintenance. Still sold by McObject, but no public version history or recent releases are documented on its product page.

Overview

Perst is an object-oriented embedded database from McObject, with an all-Java edition and a C# edition for .NET. Objects are persisted transparently and indexed with a wide choice of structures (B-trees, R-trees, KD-trees, Patricia tries and more), and it includes full-text search and a small SQL subset called JSQL. Its pitch is a tiny footprint for Java SE, Android and .NET apps that want object persistence without an ORM. McObject still offers downloads and commercial licenses, but the product sees little visible development and its community is small next to SQLite or ObjectBox.

Strengths & trade-offs

Strengths

  • +Transparent persistence of plain Java or .NET objects
  • +Unusually broad index types, including spatial R-trees and KD-trees
  • +Small footprint suitable for embedded and Android use

Trade-offs

  • −GPL licensing forces a commercial license for most proprietary apps
  • −Small community and sparse modern documentation
  • −Little evidence of active feature development

Great for

  • +Embedded Java or .NET apps needing object persistence
  • +Devices needing spatial indexes in a tiny footprint

Think twice for

  • −New projects wanting an active ecosystem
  • −Server-side or multi-user databases

Capabilities

Native or official first-party support · 6 of 25 tracked

✓Transactions
✓Secondary indexes
✓Full-text search
✓Geospatial
✓In-memory
✓Durable persistence
–Joins
–Vector search
–JSON
–Change data capture
–Triggers
–Stored procedures
–Materialized views
–TTL / expiry
–Pub/Sub
–Columnar storage
–Compression
–Encryption at rest
–Role-based access
–Time travel
–Branching
–Online schema changes
–Streaming ingest
–Offline sync
–Runs in WebAssembly

Scale & consistency

Comfortable data size
Small · ≤ 100 GB
Horizontal scaling
None
Multi-region
No
Transactions
Full ACID
Consistency
Strong
Schema
Strict
Architecture
Embedded
Query languages
JSQL, Native object API

Deployment

Self-hosted Vendor-managed cloud Serverless Embedded Edge Kubernetes operator

Ecosystem

apis & protocolsJava API, .NET API
client languagesJava, C#

Alternatives to Perst

Compare all→
ObjectDBObject9.3

Commercial object database for Java that implements JPA and JDO natively, with no ORM layer.

perst vs objectdb →
db4oObject4.7

Pioneering embeddable object database for Java and .NET, discontinued by Actian in 2014.

perst vs db4o →
ObjectBoxObject12.4

Fast on-device object database with built-in HNSW vector search and an optional commercial sync server.

perst vs objectbox →
SQLiteRelational75.5

The in-process SQL engine that ships in every phone, browser and OS: one file, zero servers.

perst vs sqlite →
LiteDBDocument10.8

Serverless single-file NoSQL document database for .NET, in the spirit of SQLite.

perst vs litedb →
ObjectDatabase++Object0.0

Ekky Software's embedded C++ object database with B+tree, spatial, full-text and pattern indexes.

perst vs objectdatabase-plus-plus →

Perst FAQ

What is Perst?

Perst is an object database by McObject LLC, first released in 2004. Perst is an object-oriented embedded database from McObject, with an all-Java edition and a C# edition for .NET. Objects are persisted transparently and indexed with a wide choice of structures (B-trees, R-trees, KD-trees, Patricia tries and more), and it includes full-text search and a small SQL subset called JSQL. Its pitch is a tiny footprint for Java SE, Android and .NET apps that want object persistence without an ORM. McObject still offers downloads and commercial licenses, but the product sees little visible development and its community is small next to SQLite or ObjectBox.

Is Perst open source?

Yes. Perst is open source. License: GPL-3.0 or commercial license.

Does Perst support ACID transactions?

Yes. Perst supports full ACID transactions, with strong consistency.

Does Perst scale horizontally?

Perst does not scale horizontally; it runs on a single node, so you scale it up rather than out. It is comfortable at small scale (≤ 100 GB).

How can I run Perst?

You can self-host it and embed it in your application.

What is Perst best for?

Perst is a strong fit for embedded Java or .NET apps needing object persistence and devices needing spatial indexes in a tiny footprint. Think twice for new projects wanting an active ecosystem.

What are the best alternatives to Perst?

Common alternatives to Perst include ObjectDB, db4o, ObjectBox, SQLite and LiteDB. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.

Is Perst still maintained?

Perst is in maintenance mode. Still sold by McObject, but no public version history or recent releases are documented on its product page.

How popular is Perst?

Perst ranks #495 of 844 databases on the WhichDB Score (2.1/100), and #15 among object databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.