DBMS > Datomic vs. Google Cloud Spanner vs. GraphDB vs. Memgraph vs. NebulaGraph
System Properties Comparison Datomic vs. Google Cloud Spanner vs. GraphDB vs. Memgraph vs. NebulaGraph
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Datomic Xexclude from comparison | Google Cloud Spanner Xexclude from comparison | GraphDB former name: OWLIM Xexclude from comparison | Memgraph Xexclude from comparison | NebulaGraph Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | A horizontally scalable, globally consistent, relational database service. It is the externalization of the core Google database that runs the biggest aspects of Google, like Ads and Google Play. | Enterprise-ready RDF and graph database with efficient reasoning, cluster and external index synchronization support. It supports also SQL JDBC access to Knowledge Graph and GraphQL over SPARQL. | An open source graph database built for real-time streaming and compatible with Neo4j | A distributed, linear scalable, high perfomant Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Graph DBMS RDF store | Graph DBMS | Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.datomic.com | cloud.google.com/spanner | www.ontotext.com | memgraph.com | github.com/vesoft-inc/nebula www.nebula-graph.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.datomic.com | cloud.google.com/spanner/docs | graphdb.ontotext.com/documentation | memgraph.com/docs | docs.nebula-graph.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Social network pages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cognitect | Ontotext | Memgraph Ltd | Vesoft Inc. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2017 | 2000 | 2017 | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.6735, June 2023 | 10.4, October 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial limited edition free | commercial | commercial Some plugins of GraphDB Workbench are open sourced | Open Source BSL 1.1; commercial license for enterprise edition available | Open Source Apache Version 2.0 + Common Clause 1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java, Clojure | Java | C and C++ | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | hosted | All OS with a Java VM Linux OS X Windows | Linux | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | schema-free and OWL/RDFS-schema support; RDF shapes | schema-free and schema-optional | Strong typed schema | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | 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 | yes | yes | yes, supports real-time synchronization and indexing in SOLR/Elastic search/Lucene and GeoSPARQL geometry data indexes | yes Nebula Graph internally uses the Key-Value store RocksDB for persistency. The vertices, edges, and their properties are stored as Key while their values are stored as Value. The primary indexes are per Key and secondary indexes are per Value. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes Query statements complying to ANSI 2011 | stored SPARQL accessed as SQL using Apache Calcite through JDBC/ODBC | no | SQL-like query language | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | gRPC (using protocol buffers) API JDBC At present, JDBC supports read-only queries. No support for DDL or DML statements. RESTful HTTP API | GeoSPARQL GraphQL GraphQL Federation Java API JDBC RDF4J API RDFS RIO Sail API Sesame REST HTTP Protocol SPARQL 1.1 | Bolt protocol Cypher query language | Browser interface console (shell) Cypher Query Language GO Object Graph Mapper Java Object Graph Mapper NGBatis ORM framework for NebulaGraph and Spring-Boot Proprietary native API Python Object Graph Mapper Query language nGQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure Java | Go Java JavaScript (Node.js) Python | .Net C# Clojure Java JavaScript (Node.js) PHP Python Ruby Scala | .Net C C++ Elixir Go Haskell Java JavaScript PHP Python Ruby Scala | .Net C++ Go Java PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes Transaction Functions | no | well-defined plugin interfaces; JavaScript server-side extensibility | user defined functions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | By using transaction functions | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none But extensive use of caching in the application peers | Sharding | none | Sharding dynamic graph partitioning | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none But extensive use of caching in the application peers | Multi-source replication with 3 replicas for regional instances. | Multi-source replication | Multi-source replication using RAFT | Causal Clustering using Raft protocol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes using Google Cloud Dataflow | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency, Eventual consistency (configurable in cluster mode per master or individual client request) | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes by using interleaved tables, this features focuses more on performance improvements than on referential integrity | yes Constraint checking | yes relationships in graphs | yes Relationships in graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID Strict serializable isolation | ACID | ACID with snapshot isolation | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes, multi-version concurrency control (MVCC) | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes | yes | yes with periodic snapshot and write-ahead logging (WAL) of changes | yes using RocksDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes recommended only for testing and development | no | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | Default Basic authentication through RDF4J client, or via Java when run with cURL, default token-based in the Workbench or via Rest API, optional access through OpenID or Kerberos single sign-on. | Users, roles and permissions | Role-based access control | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | Google Cloud Spanner | GraphDB former name: OWLIM | Memgraph | NebulaGraph | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Ontotext GraphDB is a semantic database engine that allows organizations to build... » more | Memgraph directly connects to your streaming infrastructure so you and your team... » more | NebulaGraph is a truly distributed, linearly scalable, lightning-fast graph database,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | GraphDB allows you to link text and data in big knowledge graphs. It’s easy to experiment... » more | Business Source License ensures a future for the Memgraph community MAGE algorithm... » more | NebulaGraph boasts the world's only graph database solution that is able to host... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Metadata enrichment and management, linked data publishing, semantic inferencing... » more | Graph algorithms in bioinformatics Social network analysis Cryptocurrency network... » more | Social networking Fraud detection Knowledge graph Data warehouse management Anti... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | GraphDB provides a platform for building next-generation AI and Knowledge Graph... » more | Companies from a variety of industries have implemented NebulaGraph Database in production,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | GraphDB is the most utilized semantic triplestore for mission-critical enterprise... » more | At our very early stage, NebulaGraph has already received over 10,000 stars on GitHub... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | GraphDB Free is a non-commercial version and is free to use. GraphDB Enterprise edition... » more | You can check out our pricing model and licenses on the company website . » more | NebulaGraph is open source and free to use under Apache 2.0 license. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | Case study: Policy Enforcement Automation With Semantics Okay, RAG… We Have a Problem Scaling Understanding with the Help of Feedback Loops, Knowledge Graphs and NLP How Knowledge Graphs Power Data Mesh and Data Fabric Building Smarter Financial Services: The Role of Semantic Technologies, Knowledge Graphs and Generative AI | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | Google Cloud Spanner | GraphDB former name: OWLIM | Memgraph | NebulaGraph | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Nubank buys firm behind Clojure programming language Zoona Case Study Architecting Software for Leverage TerminusDB Takes on Data Collaboration with a git-Like Approach Brazil’s Nubank acquires US software firm Cognitect, creator of Clojure and Datomic provided by Google News | Google Improves Cloud Spanner: More Compute and Storage without Price Increase Google turns up the heat on AWS, claims Cloud Spanner is half the cost of DynamoDB Google makes its Cloud Spanner database service faster and more cost-efficient Google Spanner: When Do You Need to Move to It? Google Cloud Spanner competes directly with Amazon DynamoDB provided by Google News | Ontotext's GraphDB Solution is Now Available on the Microsoft Azure Marketplace Ontotext Unveils GraphDB 10.4 with Enhanced AWS Integration and ChatGPT Connector Ontotext GraphDB is available on Azure, delivers rich knowledge graph experience Ontotext Platform 3.0 for Enterprise Knowledge Graphs Released Ontotext's GraphDB 8.10 Makes Knowledge Graph Experience Faster and Richer provided by Google News | Enhance Your Network with the Power of a Graph DB Graph database company Memgraph raises $9.34M Graph Database Market to grow at a CAGR of 19.9% from 2022 to 2027|Increased demand for low-latency queries is a ... Croatian graph database startup Memgraph raises €8M with Microsoft as key investor, plans to boost R&D Modeling and Navigating a Transportation Network with Memgraph provided by Google News | NebulaGraph Enterprise v5.0: The First Distributed Graph Database to Offer Native GQL Support Celebrating 10,000 GitHub Stars for NebulaGraph Vesoft (NebulaGraph) Recognized in the Gartner® Market Guide for Graph Database Management Systems NebulaGraph reaps from China’s growing appetite for graph databases Beginner’s Guide to NebulaGraph Database | by Ng Wai Foong provided by Google News |
Share this page