DBMS > CrateDB vs. Datomic vs. Sphinx vs. TypeDB
System Properties Comparison CrateDB vs. Datomic vs. Sphinx vs. TypeDB
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CrateDB Xexclude from comparison | Datomic Xexclude from comparison | Sphinx Xexclude from comparison | TypeDB formerly named Grakn Xexclude from comparison | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Distributed Database based on Lucene | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | Open source search engine for searching in data from different sources, e.g. relational databases | TypeDB provides developers with an expressive, customizable type system to manage their data using an award-winning query language, TypeQL, while building on a high-performance, distributed architecture. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Spatial DBMS Search engine Time Series DBMS Vector DBMS | Relational DBMS | Search engine | Graph DBMS The type-theoretic data model of TypeDB subsumes the graph database model. Object oriented DBMS The data model of TypeDB comprises object-oriented features such as class inheritance and interfaces. Relational DBMS The type-theoretic data model of TypeDB subsumes the relational database model. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cratedb.com | www.datomic.com | sphinxsearch.com | typedb.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cratedb.com/docs | docs.datomic.com | sphinxsearch.com/docs | typedb.com/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Crate | Cognitect | Sphinx Technologies Inc. | Vaticle | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2012 | 2001 | 2016 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.8.1, August 2024 | 1.0.7180, July 2024 | 3.5.1, February 2023 | 2.28.3, June 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source | commercial limited edition free | Open Source GPL version 2, commercial licence available | Open Source GPL Version 3, commercial licenses available | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java, Clojure | C++ | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All Operating Systems, including Kubernetes with CrateDB Kubernetes Operator support | All OS with a Java VM | FreeBSD Linux NetBSD OS X Solaris Windows | Linux OS X Windows | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | Flexible Schema (defined schema, partial schema, schema free) | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes full-text index on all search fields | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes, but no triggers and constraints, and PostgreSQL compatibility | no | SQL-like query language (SphinxQL) | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC ODBC PostgreSQL wire protocol Prometheus Remote Read/Write RESTful HTTP API | RESTful HTTP API | Proprietary protocol | gRPC protocol TypeDB Console (shell) TypeDB Studio (IDE) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .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 | Clojure Java | C++ unofficial client library Java Perl unofficial client library PHP Python Ruby unofficial client library | All JVM based languages C C++ Java JavaScript (Node.js) Python Rust | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions (Javascript) | yes Transaction Functions | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | By using transaction functions | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none But extensive use of caching in the application peers | Sharding Partitioning is done manually, search queries against distributed index is supported | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Configurable replication on table/partition-level | none But extensive use of caching in the application peers | none | Synchronous replication via raft | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Read-after-write consistency on record level | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no substituted by the relationship feature | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no unique row identifiers can be used for implementing an optimistic concurrency control strategy | ACID | no | ACID | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes The original contents of fields are not stored in the Sphinx index. | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes recommended only for testing and development | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | rights management via user accounts | no | no | yes at REST API level; other APIs in progress | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CrateDB | Datomic | Sphinx | TypeDB formerly named Grakn | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | TypeDB is a polymorphic database with a conceptual data model, a strong subtyping... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | TypeDB provides a new level of expressivity, extensibility, interoperability, and... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Life sciences : TypeDB makes working with biological data much easier and accelerates... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Apache f or language drivers, and AGPL and Commercial for the database server. The... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CrateDB | Datomic | Sphinx | TypeDB formerly named Grakn | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | The DB-Engines ranking includes now search engines | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | CrateDB Appoints Jeff Olson as New CRO CrateDB Announces Availability of CrateDB on Google Cloud Marketplace Taleo Consulting and CrateDB Announce Strategic Partnership to Transform Data Management and Analytics in Financial Services markets How We Designed CrateDB as a Realtime SQL DBMS for the Internet of Things CrateDB Appoints Sergey Gerasimenko as New CTO provided by Google News | Nubank released the licenses of its Datomic database Lucas Cavalcanti on Using Clojure, Microservices, Hexagonal Architecture and Public Cloud at Nubank Nubank acquires US company; PayPal studies cryptocurrencies Zoona Case Study Brazilian challenger Nubank acquires firm behind Clojure and Datomic provided by Google News | Switching From Sphinx to MkDocs Documentation — What Did I Gain and Lose? Manticore is a Faster Alternative to Elasticsearch in C++ Beyond the Concert Hall: 5 Organizations Making a Difference in Classical Music in 2018 Here’s Why Russia Is Cracking Down on Google The Pirate Bay was recently down for over a week due to a DDoS attack provided by Google News | Modelling Biomedical Data for a Drug Discovery Knowledge Graph Speedb Goes Open Source With Its Speedb Data Engine, A Drop-in Replacement for RocksDB Building a Biomedical Knowledge Graph provided by Google News |
Share this page