Datomic Cloud Overview
This page describes some of the key features of Datomic Cloud:
Provisioned Throughput, On-Demand Use
Specify your desired throughput capacity when you create a database. Datomic automatically provisions sufficient resources to meet your performance needs. You pay only for your actual usage. You'll have the resources you need, when you need them, without paying for reserve capacity that goes unused.
You can smoothly scale for read, write, and storage needs independently of each other.
- Auto-scaling for writes - Datomic automatically adjusts node sizes according to parameters you define up front.
- Elastic auto-scaling for reads - Datomic automatically adjusts computing resources and memory up or down, within parameters you define.
Your databases are redundantly supported across multiple AWS availability zones, with automatic data replication and failover.
Minimal, Flexible Schema
Datomic has a minimal, flexible schema that easily accommodates data of any shape, and readily adapts as that shape changes over time–without the need for disruptive migrations. You can quickly add attributes without worrying about updating tables or disturbing existing data relationships.
Powerful, Expressive Queries
Datomic uses a form of Datalog, a declarative, logic-based query language. Time is built in to Datomic's data model, so you can easily run queries against the past, present, or even future scenarios.
By default, Datomic automatically indexes all the attributes of your entities in covering indexes, so you get efficient access to your actual data, not just pointers. Datomic can store these indexes efficiently because it uses immutable data, which can be easily compressed.
Datomic is transactional, has full ACID semantics, and is always consistent.
Datomic is a secure system that offers encryption to protect your data at rest and in transit. It uses AWS Identity and Access Management (IAM) to provide role-based access control. Datomic also provides backup facilities, redundant storage, and data export.
Compatible with Multiple Languages and Platforms
Lightweight clients help you to work with Datomic using languages you already know. Cognitect currently provides a Datomic client library for Clojure. Libraries for Java and other languages are forthcoming.