Databases are either easy to use or easy to scale. For example, relational databases were popularized in large part because of the programmability of SQL. However, this programmability comes at an incredible expense. Relational databases are notoriously difficult to support at scale, and so developers have increasingly turned toward more specialized NoSQL systems that scale well be shedding functionality.
Developers are not only forced to choose between productivity and performance, but also stark differences between query languages makes their choice of database effectively permanent. Even databases that claim to support the same SQL standard only implement incompatible subsets of its functionality. The lack of a truly uniform interface tightly couples databases and the procedures that are executed against them.
Caustic is a language for expressing and executing transactions on arbitrary key-value stores that is both straightforward to use and simple to integrate.
Artifacts are published to the Sonatype OSS Repository Hosting Service and synced to
Maven Central. Snapshots of the master branch are built using Travis CI and images
are available on Docker. The Maven coordinates of core build artifacts are as follows.
<!-- Client Library -->
<dependency>
<groupId>com.madavan</groupId>
<artifactId>caustic-client_2.12</artifactId>
<version>1.3.1</version>
</dependency>
<!-- Runtime Library -->
<dependency>
<groupId>com.madavan</groupId>
<artifactId>caustic-runtime_2.12</artifactId>
<version>1.3.1</version>
</dependency>
Refer to the User Guide to learn about how to use the system, and the Wiki for more information about the implementation.
Content type
Image
Digest
Size
698.6 MB
Last updated
over 7 years ago
docker pull ashwin153/caustic