A library that makes non-ACID distributed databases/storages ACID-compliant. It not only supports strongly-consistent ACID transactions, but also scales linearly and achieves high availability when it is deployed with distributed databases/storages such as Cassandra.
The library is available on Maven Central. You can install it in your application using your build tool such as Gradle. For example in Gradle, you can add the following dependency to your build.gradle. Please replace the <version>
with the version you want to use.
dependencies {
implementation group: 'com.scalar-labs', name: 'scalardb', version: '<version>'
}
- Getting started
- Scalar DB supported databases
- Design document
- Slides
- Making Cassandra more capable, faster, and more reliable at ApacheCon@Home 2020
- Scalar DB: A library that makes non-ACID databases ACID-compliant at Database Lounge Tokyo #6 2020
- Transaction Management on Cassandra at Next Generation Cassandra Conference / ApacheCon NA 2019
- Javadoc
- Jepsen tests
- TLA+
- Sample applications by contributors/collaborators
This library is mainly maintained by the Scalar Engineering Team, but of course we appreciate any help.
- For asking questions, finding answers and helping other users, please go to stackoverflow and use scalardb tag.
- For filing bugs, suggesting improvements, or requesting new features, help us out by opening an issue.
Here are the contributors we are especially thankful for:
- Toshihiro Suzuki - created Phoenix adapter for Scalar DB
- Yonezawa-T2 - reported bugs around Serializable and proposed a new Serializable strategy (now named Extra-Read)
Scalar DB is dual-licensed under both the Apache 2.0 License (found in the LICENSE file in the root directory) and a commercial license. You may select, at your option, one of the above-listed licenses. The commercial license includes enterprise-grade tools, such as a multi-table consistent backup/restore tool for Cassandra. Regarding the commercial license, please contact us for more information.