EventStoreDB

The event-native database.

The only database designed to store business events in an immutable log. EventStoreDB is an open-sourced event-native database for applications using Event Sourcing, Event-Driven Architecture, and Microservices.

The database server can run on most platforms and is also available as a managed service through Event Store Cloud. We also provide clients for most major languages so it's easy to get started.

Download open-source version Getting started guide

What is EventStoreDB?

EventStoreDB is an operational database that stores your critical data in streams of immutable events. It was built from the ground up for Event Sourcing and offers an unrivaled solution for building event-sourced systems.

The core features such as guaranteed writes, concurrency model, granular stream and stream APIs make EventStoreDB the best choice for event-sourced systems - especially when compared with other database solutions originally built for other purposes.

And on top of that, it’s open source.

Get started with EventStoreDB

prod-esdb

EventStoreDB main features

  • Guaranteed writes Writes are committed to disk which makes it ideal for a “source of record” database.
  • High availability EventStoreDB can run as a cluster of nodes containing the same data which remains available for writes provided at least half the nodes are alive and connected.
  • Projections Projections allow you to react to events as they are written, and to create new events when interesting combinations occur.
  • Client interfaces There are client SDKs based on the gRPC framework for all major languages and platforms including .NET, Java, Go, Node, Rust and Python.
  • Optimistic concurrency checks Writes supports an optimistic concurrency check on the version of the stream to which events are written. If the check fails during writing, the server returns an exception to let you know.
  • Great performance that scales Whilst performance depends on configuration and use patterns, we’ve benchmarked EventStoreDB at around 15,000 writes per second and 50,000 reads per second!
  • Multiple hosting options The server can run on Windows, Linux, and MacOS, both on-premise or in-cloud.
  • Commercial support plans Multi-tiered support plans with response times as low as 2-hours. If you’re a support customer, you’ll also get access to a commercial version and a range of operational tools.
  • Immutable data store EventStoreDB stores your data as a series of immutable events over time, providing one of the strongest audit log options available (characteristics similar to a blockchain).

Why use EventStoreDB for Event Sourcing?

Event Sourcing and event-driven architecture have a host of benefits for modern, microservice based systems. And EventStoreDB has been built with a comprehensive feature list to help you take advantage of them.

With strong performance and high availability, EventStoreDB can cope with up to 15,000+ writes and 50,000+ reads per second (*we've benchmarked at these figures but performance depends on configuration and use patterns). It also guarantees writes unlike other database models that weren’t originally built for Event Sourcing.

Get support

The Event Store team is here to help you get the most out of EventStoreDB. With support plans for PoC projects right up to enterprise production systems, the EventStoreDB creators are with you every step of the way.

Find out about support

stat-esdb
code-esdb

Where can EventStoreDB run?

EventStoreDB can run as a server on most platforms from desktop operating systems like Windows, Linux and macOS, to Windows and Linux servers, Docker containers, and orchestration tools such as Kubernetes.

Clients can connect to the server either over HTTP or using one of the gRPC framework-based client SDKs.

Get started now

Event Store Cloud

EventStoreDB can be provisioned automatically with our multi-cloud SaaS offering, Event Store Cloud. With support for AWS, GCP, and Azure (coming soon), you can subscribe to and manage Event Store service offerings via an API and an easy-to-use web console. You can provision services, and connect these services securely to their own cloud resources.

Find out more about Cloud