vs

EJDB vs Nitrite

EJDB: Embeddable JSON document database in C, with a JQL query language and optional HTTP/WebSocket server. Nitrite: Embedded NoSQL document store for Java and Android with pluggable MVStore or RocksDB storage.

key differences

  • Only Nitrite has transactions, full-text search, geospatial, in-memory.

choose ejdb for

  • +Embedded JSON storage in desktop or IoT apps
  • +Mobile apps needing a local document store
  • +Lightweight local services with an HTTP API

best at · Embedded, Mobile/offline, IoT

choose nitrite for

  • +Desktop Java apps needing local document storage
  • +Android apps preferring a document API over SQLite
  • +Test fixtures and caches in JVM services

best at · Embedded, Mobile/offline, Coordination

overview
Primary model
Document
Document
Also supports
–
Key-Value, Spatial
Type
Embedded library
Embedded library
Status
Active
Active
Developer
Softmotions (Anton Adamansky)
Nitrite project (Anindya Chatterjee)
First release
2012
2017
Latest version
2.95 (Oct 22, 2026)
5.4.2 (Oct 22, 2026)
License
Open source (permissive)MIT License
Open source (permissive)Apache License 2.0
Free tier
✓
✓
popularity
WhichDB Score
4.5
2.7
Rank
#401
#466
GitHub stars
1.5K
920
Stack Overflow questions
–
–
scale & guarantees
Comfortable data size
Small (≤ 100 GB)
Small (≤ 100 GB)
Horizontal scaling
None
None
Multi-region
None
None
ACID
Limited
Limited
Consistency
Strong
Strong
Schema
Schemaless
Schemaless
Architecture
Embedded, Single node
Embedded, In memory
deployment
Self-hosted
✓
✓
Vendor-managed cloud
—
—
Serverless
—
—
Embedded
✓
✓
Edge
—
—
Clouds
–
–
capabilities
Transactions
—
✓
Joins
—
—
Secondary indexes
✓
✓
Full-text search
—
✓
Vector search
—
—
Geospatial
—
✓
JSON
✓
✓
Change data capture
—
—
Triggers
—
—
Stored procedures
—
—
Materialized views
—
—
TTL / expiry
—
—
Pub/Sub
—
—
Columnar storage
—
—
In-memory
—
✓
Durable persistence
✓
✓
Compression
—
—
Encryption at rest
—
—
Role-based access
—
—
Time travel
—
—
Branching
—
—
Online schema changes
✓
✓
Streaming ingest
—
—
Offline sync
—
—
Runs in WebAssembly
—
—
interfaces
Query languages
JQL
Nitrite filter API (Java/Kotlin)
Client languages
C, JavaScript, Java, Swift, Dart, Kotlin
Java, Kotlin, Dart
Best for
Embedded, Mobile/offline, IoT, Coordination
Embedded, Mobile/offline, Coordination

EJDB vs Nitrite: FAQ

What is the difference between EJDB and Nitrite?

EJDB: Embeddable JSON document database in C, with a JQL query language and optional HTTP/WebSocket server. Nitrite: Embedded NoSQL document store for Java and Android with pluggable MVStore or RocksDB storage. Only Nitrite has transactions, full-text search, geospatial, in-memory.

When should I choose EJDB over Nitrite?

Choose EJDB for embedded JSON storage in desktop or IoT apps, mobile apps needing a local document store and lightweight local services with an HTTP API. Choose Nitrite for desktop Java apps needing local document storage; android apps preferring a document API over SQLite; and test fixtures and caches in JVM services.

Is EJDB or Nitrite more popular?

EJDB ranks #401 on the WhichDB Score (4.5/100) and Nitrite ranks #466 (2.7/100). Popularity is not fit: check the requirements that matter for your project.

Are EJDB and Nitrite open source?

Yes. EJDB is open source. License: MIT License. Yes. Nitrite is open source. License: Apache License 2.0.