What is ConvergeDB?
ConvergeDB is a purpose-built database for current state. Multiple independent writers (called sources) continuously assert what entities exist and what their state is. The database maintains the converged view and pushes real-time change notifications to subscribers.
It’s designed for workloads where many services need to write to and observe the same set of entities.
How it works
Section titled “How it works”-
Sources assert state. Each writer declares the full current state of entities it knows about. There is no insert/update distinction. If the entity exists, its state is updated. If it does not exist, it is created.
-
The database converges. When multiple sources assert the same entity, ConvergeDB merges their contributions using source-level tracking. Each source’s latest assertion wins for the fields it owns. There is no cross-source conflict resolution because assertions from different sources are always merged, not arbitrated.
-
Subscribers see changes. Any client can subscribe to a kind of entity and receive a real-time stream of create, update, and delete notifications. Subscribers can request a full bootstrap snapshot on connect, so they always start from a complete and consistent view.
What ConvergeDB is good at
Section titled “What ConvergeDB is good at”- Game world state replication. Multiple game servers assert entity positions, health, and inventory. Observers subscribe and see a unified world view.
- Multi-service materialized views. Several microservices each own different fields of the same entity (for example, order status, payment status, and shipping status). Subscribers see the fully merged view.
- Real-time dashboards. IoT sensors or services assert telemetry. Dashboard subscribers see live updates with field-level change tracking.
- Service discovery and presence. Services assert their availability. Consumers subscribe and react to changes.
What ConvergeDB is not
Section titled “What ConvergeDB is not”ConvergeDB is deliberately narrow in scope. Understanding what it does not do is just as important as understanding what it does.
- Not a relational database. There is no SQL, no joins, no foreign keys, and no transactions. Each entity kind is an independent flat collection.
- Not a message queue. There are no delivery guarantees on historical messages, no consumer groups, and no replay. Subscribers see current state and live changes only.
- Not a document store. Schemas are fixed at registration time with typed fields. Entities are flat with one level of struct nesting.
- Not an event log. ConvergeDB stores only the current state of each entity. There is no history, no temporal queries, and no event sourcing.
Out of scope for v1
Section titled “Out of scope for v1”The following features are explicitly deferred:
- Multi-node clustering and replication
- Field-level subscription filtering
- Secondary indexes and predicate-based queries
- Authentication and encryption (TLS)
- Transaction support (multi-entity atomic operations)
- Historical state queries