A group of Concourse nodes amongst which data is partitioned and replicated, but together form a single logical database.



The node to which a client connects to perform an operation. The coordinator is responsible for routing the request to the appropriate node(s) within the cluster and returning the result to the client.

In Concourse, coordinators are chosen per operation and any node may serve as a coordinator.

Ensemble Protocol#

Gossip Protocol#




A Concourse instance that is a member of distributed cluster.

Optimistic Availability#

A property of distributed systems that allows tolerance for arbitrary node failure while preserving availability for an operation as long as the coordinator and at least one relevant process agree on the state of the system. In laymen’s terms: given sufficient partitioning and replication there is optimism that the system remains available in the face of failure or latency.


A subset of nodes in a distributed cluster that each only contain data certain token ranges. Data is partitioned within Concourse to better distributed load across the cluster.


A schemaless group of fields mapping keys to values. A single record should map to a single person, place or thing in the real world.


A node


A Concourse feature that allows users to store data without first specifying the data format or data types with the database, and 2. allows records within the database to contain different formats and data types.

Strong Consistency#

A property of distributed systems where all processes observe state changes in the same order. According to the CAP Theorem, distributed database are strongly consistent if every read receives the most recent write or an error, in the event that the most recent write cannot be determined because of network failure or latency.

Three-Phase Commit#