Skip to content

Antidotedb – Planet scale geo-replication

One of the main reasons I stay away from Key-Value stores as much as possible is that I don’t want to deal with inconsistency. This database might be the answer.

http://syncfree.github.io/antidote/

Why Antidote? According to the developers:

  • High Available Transactions
  • CRDT’s
  • Geo-replication (Planet scale.. whatever that is…)

Why Antidote?

Traditional databases provide strong guarantees but are slow and unavailable under failures and network partition. Hence, they are not suitable for geo-replication. The alternatives are NoSQL-style databases which are fast and available even under network partition. They provide a low-level key-value interface and expose data inconsistencies due to asynchronous communication among the servers. It takes significant effort and expertise from programmers to deal with these inconsistencies and develop correct applications on top of these databases.

For example, consider that your application stores a counter which counts the number of ads displayed to a user. For scalability, the database replicates all data in different locations. What will be the value of the counter, when it is incremented at two locations at the same time? As an application programmer, you have to detect such concurrent updates and resolve conflicting modifications. Antidote provides features that aid programmers to write correct applications, while having the same performance and horizontal scalability as AP/NoSQL, from a single machine to geo-replicated deployments, with the added guarantees of Causal Highly-Available Transactions, and provable absence of data corruption due to concurrency.

Worth a try IMHO.
Published inCode