Samba on Scale: Difference between revisions

From SambaWiki
Line 5: Line 5:
{| class="wikitable sortable"
{| class="wikitable sortable"
|-
|-
! Name !! Consistency Model || C Client || Notes
! Name !! Consistency Model || Transactions || C Client || Notes
|-
|-
| [https://wiki.samba.org/index.php/CTDB_and_Clustered_Samba ctdb] || [https://jepsen.io/consistency/models/sequential Volatile DBs: Sequential Consistency]<br />[https://jepsen.io/consistency/models/linearizable Persistent DBs: Linearizability] || yes ||
| [https://wiki.samba.org/index.php/CTDB_and_Clustered_Samba ctdb] || [https://jepsen.io/consistency/models/sequential Volatile DBs: Sequential Consistency]<br />[https://jepsen.io/consistency/models/linearizable Persistent DBs: Linearizability] || No/Yes || yes ||
|-
|-
| [https://etcd.io/ etcd] || [https://etcd.io/docs/v3.3/learning/api_guarantees/ Linearizability] || yes || Performance?
| [https://etcd.io/ etcd] || [https://etcd.io/docs/v3.3/learning/api_guarantees/ Linearizability] || Yes ("mini") || yes || Performance?
|-
|-
| [https://docs.ceph.com/en/quincy/rados/api/librados-intro/ Ceph Rados] || [http://www.cs.nthu.edu.tw/~ychung/conference/2016_ICPADS.pdf Linearizability] || yes ||
| [https://docs.ceph.com/en/quincy/rados/api/librados-intro/ Ceph Rados] || [http://www.cs.nthu.edu.tw/~ychung/conference/2016_ICPADS.pdf Linearizability] || ? || yes ||
|-
|-
| [https://cassandra.apache.org/_/index.html Apache Cassandra] || [https://fauna.com/blog/demystifying-database-systems-correctness-anomalies-under-serializable-isolation Strong Partition Serializability]<br />New: [https://thenewstack.io/an-apache-cassandra-breakthrough-acid-transactions-at-scale/ Strict Serializability] || [https://docs.datastax.com/en/developer/cpp-driver/2.16/topics/ yes] ||
| [https://cassandra.apache.org/_/index.html Apache Cassandra] || [https://fauna.com/blog/demystifying-database-systems-correctness-anomalies-under-serializable-isolation Strong Partition Serializability]<br />New: [https://thenewstack.io/an-apache-cassandra-breakthrough-acid-transactions-at-scale/ Strict Serializability] || yes || [https://docs.datastax.com/en/developer/cpp-driver/2.16/topics/ yes] ||
|-
|-
| [https://hbase.apache.org/ Apache HBase] || ? || ? ||
| [https://hbase.apache.org/ Apache HBase] || ? || ? || ? ||
|-
|-
| [https://ignite.apache.org/ Apache Ignite] || ? || ? ||
| [https://ignite.apache.org/ Apache Ignite] || ? || ? || ? ||
|-
|-
| [https://www.foundationdb.org/ FoundationDB] || [https://jepsen.io/consistency/models/strict-serializable Strict Serializability] || yes ||
| [https://www.foundationdb.org/ FoundationDB] || [https://jepsen.io/consistency/models/strict-serializable Strict Serializability] || yes || yes ||
|-
|-
| [https://www.cockroachlabs.com/ CockroachDB] || [https://www.cockroachlabs.com/blog/consistency-model/#cockroachdbs-consistency-model-more-than-serializable-less-than-strict-serializability Serializable+], [https://www.cockroachlabs.com/blog/db-consistency-isolation-terminology/ Strong Partition Serializability] || yes ||
| [https://www.cockroachlabs.com/ CockroachDB] || [https://www.cockroachlabs.com/blog/consistency-model/#cockroachdbs-consistency-model-more-than-serializable-less-than-strict-serializability Serializable+], [https://www.cockroachlabs.com/blog/db-consistency-isolation-terminology/ Strong Partition Serializability] || ? || yes ||
|-
|-
| [https://www.scylladb.com/ ScyllaDB] || ? || yes ||
| [https://www.scylladb.com/ ScyllaDB] || ? || ? || yes ||
|-
|-
| [https://www.yugabyte.com/ YugabyteDB] || [https://jepsen.io/consistency/models/snapshot-isolation Snapshot] || yes ||
| [https://www.yugabyte.com/ YugabyteDB] || [https://jepsen.io/consistency/models/snapshot-isolation Snapshot] || ? || yes ||
|-
|-
| [https://tikv.org/ tikv] || [https://tikv.org/docs/3.0/reference/faq/ Strong Consistency][https://github.com/tikv/tikv/issues/13956]|| no (C++) ||
| [https://tikv.org/ tikv] || [https://tikv.org/docs/3.0/reference/faq/ Strong Consistency][https://github.com/tikv/tikv/issues/13956] || yes || no (C++) ||
|-
|-
| [https://pegasus.apache.org/ Apache Pegasus] || ? || no (C++) ||
| [https://pegasus.apache.org/ Apache Pegasus] || ? || ? || no (C++) ||
|}
|}



Revision as of 18:21, 19 December 2022

List of scalable Key/Value Stores

For an overview of Consistency Models see Jepsen or Wikipedia.

Name Consistency Model Transactions C Client Notes
ctdb Volatile DBs: Sequential Consistency
Persistent DBs: Linearizability
No/Yes yes
etcd Linearizability Yes ("mini") yes Performance?
Ceph Rados Linearizability ? yes
Apache Cassandra Strong Partition Serializability
New: Strict Serializability
yes yes
Apache HBase ? ? ?
Apache Ignite ? ? ?
FoundationDB Strict Serializability yes yes
CockroachDB Serializable+, Strong Partition Serializability ? yes
ScyllaDB ? ? yes
YugabyteDB Snapshot ? yes
tikv Strong Consistency[1] yes no (C++)
Apache Pegasus ? ? no (C++)

List of Opensource Clustered Filesystems

Name Built on-top of Object Storage Notes
Ceph yes
GlusterFS no
JuiceFS yes
MooseFS no
ObjectiveFS yes
Lustre yes

Links