DBMS > Blazegraph vs. CockroachDB vs. IBM Cloudant vs. Microsoft Azure Table Storage vs. Tarantool
System Properties Comparison Blazegraph vs. CockroachDB vs. IBM Cloudant vs. Microsoft Azure Table Storage vs. Tarantool
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Blazegraph Xexclude from comparison | CockroachDB Xexclude from comparison | IBM Cloudant Xexclude from comparison | Microsoft Azure Table Storage Xexclude from comparison | Tarantool Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amazon has acquired Blazegraph's domain and (probably) product. It is said that Amazon Neptune is based on Blazegraph. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | High-performance graph database supporting Semantic Web (RDF/SPARQL) and Graph Database (tinkerpop3, blueprints, vertex-centric) APIs with scale-out and High Availability. | CockroachDB is a distributed database architected for modern cloud applications. It is wire compatible with PostgreSQL and backed by a Key-Value Store, which is either RocksDB or a purpose-built derivative, called Pebble. | Database as a Service offering based on Apache CouchDB | A Wide Column Store for rapid development using massive semi-structured datasets | In-memory computing platform with a flexible data schema for efficiently building high-performance applications | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Graph DBMS RDF store | Relational DBMS | Document store | Wide column store | Document store Key-value store Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS with Tarantool/GIS extension | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | blazegraph.com | www.cockroachlabs.com | www.ibm.com/products/cloudant | azure.microsoft.com/en-us/services/storage/tables | www.tarantool.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | wiki.blazegraph.com | www.cockroachlabs.com/docs | cloud.ibm.com/docs/Cloudant | www.tarantool.io/en/doc | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Blazegraph | Cockroach Labs | IBM, Apache Software Foundation IBM acquired Cloudant in February 2014 | Microsoft | VK | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2006 | 2015 | 2010 | 2012 | 2008 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 2.1.5, March 2019 | 24.1.0, May 2024 | 2.10.0, May 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source extended commercial license available | Open Source Apache 2.0, commercial license available | commercial | commercial | Open Source BSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Go | Erlang | C and C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | Linux macOS Windows | hosted | hosted | BSD Linux macOS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | dynamic schema | schema-free | schema-free | Flexible data schema: relational definition for tables with ability to store json-like documents in columns | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes RDF literal types | yes | no | yes | string, double, decimal, uuid, integer, blob, boolean, datetime | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SPARQL is used as query language | yes, wire compatible with PostgreSQL | no | no | Full-featured ANSI SQL support | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP API SPARQL QUERY SPARQL UPDATE TinkerPop 3 | JDBC | RESTful HTTP/JSON API | RESTful HTTP API | Open binary protocol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ Java JavaScript PHP Python Ruby | C# C++ Clojure Go Java JavaScript (Node.js) PHP Python Ruby Rust | C# Java JavaScript Objective-C PHP Ruby | .Net C# C++ Java JavaScript (Node.js) PHP Python Ruby | C C# C++ Erlang Go Java JavaScript Lua Perl PHP Python Rust | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | no | View functions (Map-Reduce) in JavaScript | no | Lua, C and SQL stored procedures | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | no | yes, before/after data modification events, on replication events, client session events | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | horizontal partitioning (by key range) all tables are translated to an ordered KV store and then broken down into 64MB ranges, which are then used as replicas in RAFT | Sharding | Sharding Implicit feature of the cloud service | Sharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | Multi-source replication using RAFT | Multi-source replication Source-replica replication | yes implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | Asynchronous replication with multi-master option Configurable replication topology (full-mesh, chain, star) Synchronous quorum replication (with Raft) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency depending on configuration | Immediate Consistency | Eventual Consistency | Immediate Consistency | Casual consistency across sharding partitions Eventual consistency within replicaset partition when using asyncronous replication Immediate Consistency within single instance Sequential consistency including linearizable read within replicaset partition when using Raft | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes Relationships in Graphs | yes | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | no atomic operations within a document possible | optimistic locking | ACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes Optimistic locking | yes | yes, cooperative multitasking | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes, write ahead logging | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | no | yes, full featured in-memory storage engine with persistence | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Security and Authentication via Web Application Container (Tomcat, Jetty) | Role-based access control | Access rights for users can be defined per database | Access rights based on private key authentication or shared access signatures | Access Control Lists Mutual TLS authentication for Tarantol Enterprise Password based authentication Role-based access control (RBAC) and LDAP for Tarantol Enterprise Users and Roles | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Blazegraph | CockroachDB | IBM Cloudant | Microsoft Azure Table Storage | Tarantool | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Data processing speed and reliability: in-memory synchronous replication Back to the future: Does graph database success hang on query language? Harnessing GPUs Delivers a Big Speedup for Graph Analytics This AI Paper Introduces A Comprehensive RDF Dataset With Over 26 Billion Triples Covering Scholarly Data Across All Scientific Disciplines Faster with GPUs: 5 turbocharged databases provided by Google News Cockroach Labs Deepens Partnership with Google Cloud, CockroachDB Selected to Join Google Distributed Cloud CockroachDB tempts legacy databases to crawl into the cloud age How DoorDash Migrated from Aurora Postgres to CockroachDB DoorDash Uses CockroachDB to Create Config Management Platform for Microservices How to Unlock Real-Time Data Streams with CockroachDB and Amazon MSK | Amazon Web Services provided by Google News Cloudant Best (and Worst) Practices — Part 1 Intro to Enterprise Cloud Storage: How to Set Up a Cloudant Database IBM Expands Cloud Database Services with Kubernetes IBM Code Engine and IBM Cloudant: Serverless Data and Infrastructure IBM to Purchase Cloudant Database as a service (DBaaS) Provider provided by Google News Working with Azure to Use and Manage Data Lakes How to use Azure Table storage in .Net How to Use C# Azure.Data.Tables SDK with Azure Cosmos DB Inside Azure File Storage How to write data to Azure Table Store with an Azure Function provided by Google News Deploying Tarantool Cartridge applications with zero effort (Part 1) VShard — horizontal scaling in Tarantool Accelerating PHP connectors for Tarantool using Async, Swoole, and Parallel provided by Google News |
Share this page