DBMS > FoundationDB vs. LokiJS vs. Microsoft Azure Data Explorer vs. NebulaGraph vs. Postgres-XL
System Properties Comparison FoundationDB vs. LokiJS vs. Microsoft Azure Data Explorer vs. NebulaGraph vs. Postgres-XL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | FoundationDB Xexclude from comparison | LokiJS Xexclude from comparison | Microsoft Azure Data Explorer Xexclude from comparison | NebulaGraph Xexclude from comparison | Postgres-XL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Created as commercial project in 2013, FoundationDB has been acquired by Apple in March 2015 and was withdrawn from the market. As a consequence, the product was removed from the DB-Engines ranking. In April 2018, Apple open-sourced FoundationDB and it therefore reappears in the ranking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Ordered key-value store. Core features are complimented by layers. | In-memory JavaScript DBMS | Fully managed big data interactive analytics platform | A distributed, linear scalable, high perfomant Graph DBMS | Based on PostgreSQL enhanced with MPP and write-scale-out cluster features | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store supported via specific layer Key-value store Relational DBMS supported via specific SQL-layer | Document store | Relational DBMS column oriented | Graph DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store If a column is of type dynamic docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types/dynamic then it's possible to add arbitrary JSON documents in this cell Event Store this is the general usage pattern at Microsoft. Billing, Logs, Telemetry events are stored in ADX and the state of an individual entity is defined by the arg_max(timestamps) Spatial DBMS Search engine support for complex search expressions docs.microsoft.com/en-us/azure/kusto/query/parseoperator FTS, Geospatial docs.microsoft.com/en-us/azure/kusto/query/geo-point-to-geohash-function distributed search -> ADX acts as a distributed search engine Time Series DBMS see docs.microsoft.com/en-us/azure/data-explorer/time-series-analysis | Document store Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/apple/foundationdb | github.com/techfort/LokiJS | azure.microsoft.com/services/data-explorer | github.com/vesoft-inc/nebula www.nebula-graph.io | www.postgres-xl.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | apple.github.io/foundationdb | techfort.github.io/LokiJS | docs.microsoft.com/en-us/azure/data-explorer | docs.nebula-graph.io | www.postgres-xl.org/documentation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | FoundationDB | Microsoft | Vesoft Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2014 | 2019 | 2019 | 2014 since 2012, originally named StormDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 6.2.28, November 2020 | cloud service with continuous releases | 10 R1, October 2018 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache 2.0 | Open Source | commercial | Open Source Apache Version 2.0 + Common Clause 1.0 | Open Source Mozilla public license | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | JavaScript | C++ | C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | server-less, requires a JavaScript environment (browser, Node.js) | hosted | Linux | Linux macOS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free some layers support schemas | schema-free | Fixed schema with schema-less datatypes (dynamic) | Strong typed schema | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no some layers support typing | no | yes bool, datetime, dynamic, guid, int, long, real, string, timespan, double: docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types | 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 | yes | no | yes XML type, but no XML query functionality | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes via views | all fields are automatically indexed | 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. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | supported in specific SQL layer only | no | Kusto Query Language (KQL), SQL subset | SQL-like query language | yes distributed, parallel query execution | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JavaScript API | Microsoft SQL Server communication protocol (MS-TDS) RESTful HTTP API | 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 | ADO.NET JDBC native C library ODBC streaming API for large objects | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ Go Java JavaScript Node.js PHP Python Ruby Swift | JavaScript | .Net Go Java JavaScript (Node.js) PowerShell Python R | .Net C++ Go Java PHP Python | .Net C C++ Delphi Erlang Java JavaScript (Node.js) Perl PHP Python Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | in SQL-layer only | View functions in JavaScript | Yes, possible languages: KQL, Python, R | user defined functions | user defined functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | yes see docs.microsoft.com/en-us/azure/kusto/management/updatepolicy | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | Sharding Implicit feature of the cloud service | Sharding | horizontal partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | none | yes Implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | Causal Clustering using Raft protocol | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | Spark connector (open source): github.com/Azure/azure-kusto-spark | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Linearizable consistency | none | Eventual Consistency Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | in SQL-layer only | no | no | yes Relationships in graphs | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no atomic operations within a single collection possible | no | ACID | ACID MVCC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes Serialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser. | yes | yes using RocksDB | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | Azure Active Directory Authentication | Role-based access control | fine grained access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FoundationDB | LokiJS | Microsoft Azure Data Explorer | NebulaGraph | Postgres-XL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | NebulaGraph is a truly distributed, linearly scalable, lightning-fast graph database,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | NebulaGraph boasts the world's only graph database solution that is able to host... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Social networking Fraud detection Knowledge graph Data warehouse management Anti... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Companies from a variety of industries have implemented NebulaGraph Database in production,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | At our very early stage, NebulaGraph has already received over 10,000 stars on GitHub... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | NebulaGraph is open source and free to use under Apache 2.0 license. » 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FoundationDB | LokiJS | Microsoft Azure Data Explorer | NebulaGraph | Postgres-XL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | FoundationDB team's new venture, Antithesis, raises $47M to enhance software testing Stonebraker Seeks to Invert the Computing Paradigm with DBOS Antithesis raises $47M to launch an automated testing platform for software Deno adds scaleable messaging with new Queues feature, sparks debate about proprietary services • DEVCLASS FoundationDB, a very interesting NoSQL database owned by Apple, is now an open-source project provided by Google News | LokiJS - A JavaScript Database provided by Google News | General availability: Azure Data Explorer adds new geospatial capabilities | Azure updates Public Preview: Azure Data Explorer connector for Apache Flink | Azure updates Azure Data Explorer: Log and telemetry analytics benchmark Providing modern data transfer and storage service at Microsoft with Microsoft Azure - Inside Track Blog Introducing Microsoft Fabric: The data platform for the era of AI | Microsoft Azure Blog provided by Google News | 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 NebulaGraph Completes Series A to Scale Its Distributed Graph Database provided by Google News |
Share this page