DBDB.io The Encyclopedia of Database Systems · Est. 2017
Database of Databases

Database Entry

FaunaDB


FaunaDB is an OLTP database for cloud environments.[01]

Developer
Country of Origin
US
Start Year
2012
Project Type
Commercial
Written in
Scala
Supported Languages
C#, Go, Java, JavaScript, Python, Scala
Operating Systems
All OS with Java VM, Hosted
License
Proprietary

Database Entry

FaunaDB


FaunaDB is an OLTP database for cloud environments.[01]

History


Fauna was founded in 2012 by a team of ex-Twitter engineers to solve consistency vs scale tradeoff in distributed data infrastructure. FaunaDB in inspired by Calvin, and is the only commercial database system that implements that protocol till date.

Data Model[03]


FaunaDB is an indexed document store that allows access to the stored data using multiple models - relational, document, graph and key-value.

Indexes


FaunaDB indexes are accessed via term and paginated by value, enabling developers to optimize data locality as applications scale. Queries can use joins and other set operations to combine indexes, as well as iterate over rows to load documents or run dependent queries. By default, indexes work with snapshot isolation, but they can be configured for serialized isolation.

Isolation Levels[04][05][06]


Read-write transactions using serialized indexes run with strict-serializability. Read-only transactions and index reads from non-serialized indexes will see snapshot isolation. Clients can upgrade to strict-serializability across all operations.

Logging


FaunaDB uses standard file-based query logging with configurable log file locations. Additionally a statsd interface is provided for integration with tools like Datadog and Graphite.

Revision #16