DBMS > Cassandra vs. CrateDB vs. Dgraph vs. InfinityDB vs. TiDB
System Properties Comparison Cassandra vs. CrateDB vs. Dgraph vs. InfinityDB vs. TiDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Cassandra Xexclude from comparison | CrateDB Xexclude from comparison | Dgraph Xexclude from comparison | InfinityDB Xexclude from comparison | TiDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Wide-column store based on ideas of BigTable and DynamoDB Optimized for write access | Distributed Database based on Lucene | Distributed and scalable native Graph DBMS | A Java embedded Key-Value Store which extends the Java Map interface | TiDB is an open source distributed SQL database that supports Hybrid Transactional/Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Wide column store | Document store Spatial DBMS Search engine Time Series DBMS Vector DBMS | Graph DBMS | Key-value store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Vector DBMS starting with release V5 | Relational DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cassandra.apache.org | cratedb.com | dgraph.io | boilerbay.com | pingcap.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cassandra.apache.org/doc/latest | cratedb.com/docs | dgraph.io/docs | boilerbay.com/infinitydb/manual | docs.pingcap.com/tidb/stable | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top level project, originally developped by Facebook | Crate | Dgraph Labs, Inc. | Boiler Bay Inc. | PingCAP, Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2008 | 2013 | 2016 | 2002 | 2016 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.1.3, July 2023 | 4.0 | 8.0.0, March 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | Open Source | Open Source Apache 2.0 | commercial | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Astra DB: Multi-cloud DBaaS built on Apache Cassandra. | CrateDB Cloud: a distributed SQL database that spreads data and processing across an elastic cluster of shared nothing nodes. CrateDB Cloud enables data insights at scale on Microsoft Azure, AWS and Google Cloud Platform. | TiDB Cloud: Fully-managed TiDB Service. Bring everything great about TiDB to the cloud. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java | Go | Java | Go, Rust | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | BSD Linux OS X Windows | All Operating Systems, including Kubernetes with CrateDB Kubernetes Operator support | Linux OS X Windows | All OS with a Java VM | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | Flexible Schema (defined schema, partial schema, schema free) | schema-free | yes nested virtual Java Maps, multi-value, logical ‘tuple space’ runtime Schema upgrade | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes all Java primitives, Date, CLOB, BLOB, huge sparse arrays | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | restricted only equality queries, not always the best performing solution | yes | yes | no manual creation possible, using inversions based on multi-value capability | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like SELECT, DML and DDL statements (CQL) | yes, but no triggers and constraints, and PostgreSQL compatibility | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Proprietary protocol CQL (Cassandra Query Language, an SQL-like language) Thrift | ADO.NET JDBC ODBC PostgreSQL wire protocol Prometheus Remote Read/Write RESTful HTTP API | GraphQL query language gRPC (using protocol buffers) API HTTP API | Access via java.util.concurrent.ConcurrentNavigableMap Interface Proprietary API to InfinityDB ItemSpace (boilerbay.com/docs/ItemSpaceDataStructures.htm) | GORM JDBC ODBC Proprietary protocol SQLAlchemy | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# C++ Clojure Erlang Go Haskell Java JavaScript Node.js Perl PHP Python Ruby Scala | .NET Erlang Go community maintained client Java JavaScript (Node.js) community maintained client Perl community maintained client PHP Python R Ruby community maintained client Scala community maintained client | C# C++ Go Java JavaScript (Node.js) PHP Python Ruby | Java | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | user defined functions (Javascript) | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding no "single point of failure" | Sharding | yes | none | horizontal partitioning (by key range) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor Representation of geographical distribution of servers is possible | Configurable replication on table/partition-level | Synchronous replication via Raft | none | Using Raft consensus algorithm to ensure data replication with strong consistency among multiple replicas. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | no | no | yes with TiSpark Connector | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency can be individually decided for each write operation | Eventual Consistency Read-after-write consistency on record level | Immediate Consistency | Immediate Consistency READ-COMMITTED or SERIALIZED | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no manual creation possible, using inversions based on multi-value capability | yes full support since version 6.6 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no Atomicity and isolation are supported for single operations | no unique row identifiers can be used for implementing an optimistic concurrency control strategy | ACID | ACID Optimistic locking for transactions; no isolation for bulk loads | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per object | rights management via user accounts | no Planned for future releases | no | Fine grained access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cassandra | CrateDB | Dgraph | InfinityDB | TiDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Apache Cassandra is the leading NoSQL, distributed database management system, well... » more | The enterprise database for time series, documents, and vectors. Distributed - Native... » more | TiDB is an advanced open-source, distributed SQL database for modern application... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | No single point of failure ensures 100% availability . Operational simplicity for... » more | Response time in milliseconds: e ven for complex ad-hoc queries. Massive scaling... » more | - HORIZONTAL SCALING : TiDB grants total transparency into your data workloads without... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Internet of Things (IOT), fraud detection applications, recommendation engines, product... » more | IoT: accelerate your IIoT projects with CrateDB, delivering real-time analytics... » more | TiDB is ideal for transactional applications that require extreme scalability and... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Apple, Netflix, Uber, ING,, Intuit,Fidelity, NY Times, Outbrain, BazaarVoice, Best... » more | Across all continents, CrateDB is used by companies of all sizes to meet the most... » more | Block, Pinterest, Catalyst, Bolt, Flipkart, Capcom, Shopee (E-commerce), JD Cloud... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Cassandra is used by 40% of the Fortune 100. » more | The CrateDB open source project was started in 2013 Honorable Mention in 2021 Gartner®... » more | 34K+ GitHub stars 5K+ members in TiDB Community Slack 1K+ community contributors... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Apache license Pricing for commercial distributions provided by DataStax and available... » more | See CrateDB pricing > » more | TiDB Community : Free open source software (Apache 2.0) TiDB Self-Hosted : Enterprise... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more Cassandra Forward event: Want to level up your Cassandra game? Watch now replays of the March 2023 sessions. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cassandra | CrateDB | Dgraph | InfinityDB | TiDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cassandra keeps climbing the ranks of the DB-Engines Ranking Oracle is the DBMS of the Year Winners, losers and an attractive newcomer in Novembers DB-Engines ranking | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | What Is Cassandra? Working, Features, and Uses - Spiceworks Inc Here's What to Know About Apache Cassandra 5.0 How Uber Optimized Cassandra Operations At Scale Cassandra is the “best f*cking database for gen AI,” says DataStax CEO Microsoft extends life support for aging Apache Cassandra 3.11 database provided by Google News | CrateDB Partners with HiveMQ to Deliver a Seamless Data Management Architecture for IoT CrateDB Announces Availability of CrateDB on Google Cloud Marketplace CrateDB Appoints Sergey Gerasimenko as New CTO How We Designed CrateDB as a Realtime SQL DBMS for the Internet of Things Real-Time Analytics Database Company CrateDB Names Lars Färnström as New CEO provided by Google News | Dgraph on AWS: Setting up a horizontally scalable graph database | Amazon Web Services Popular Open Source GraphQL Company Dgraph Secures $6M in Seed Round with New Leadership Dgraph Rises to the Top Graph Database on GitHub With 11 G2 Badges and 11M Downloads Dgraph launches Slash GraphQL, a GraphQL-native database Backend-as-a-Service Dgraph Raises $6M in Seed Funding provided by Google News | How PingCAP transformed TiDB into a serverless DBaaS using Amazon S3 and Amazon EBS | Amazon Web Services How a new database architecture supports scale and reliability in TiDB PingCAP Launches TiDB 7.5, Enhancing Distributed SQL Database Tech Google Cloud's C3D Instances Provide Strong Performance Value For PingCAP's TiDB TiDB by PingCAP Leads Data Management Revolution at GIDS 2024, Empowering India's Burgeoning Developer ... provided by Google News |
Share this page