What is Event Store?
It stores your data as a series of immutable events over time, making it easy to build event-sourced applications. It 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.
Event Store is a tool in the Databases category of a tech stack.
Event Store is an open source tool with 5.4K GitHub stars and 654 GitHub forks. Here’s a link to Event Store's open source repository on GitHub
Who uses Event Store?
Companies
16 companies reportedly use Event Store in their tech stacks, including Hepsiburada, Extensions, and Logiwa.
Developers
46 developers on StackShare have stated that they use Event Store.
Pros of Event Store
1
Event Store's Features
- Guaranteed writes
- High availability
- Projections
- Multiple client interfaces
- Optimistic concurrency checks
- Subscribe to streams with competing consumers
- Great performance that scales
- Multiple hosting options
- Commercial support plans
- Immutable data store
- Atom subscriptions
Event Store Alternatives & Comparisons
What are some alternatives to Event Store?
Kafka
Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.
MongoDB
MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
Cassandra
Partitioning means that Cassandra can distribute your data across multiple machines in an application-transparent matter. Cassandra will automatically repartition as machines are added and removed from the cluster. Row store means that like relational databases, Cassandra organizes data by rows and columns. The Cassandra Query Language (CQL) is a close relative of SQL.
RabbitMQ
RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
MySQL
The MySQL software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software.