DBMS > CockroachDB vs. Firebase Realtime Database vs. Greenplum vs. LokiJS vs. Neo4j
System Properties Comparison CockroachDB vs. Firebase Realtime Database vs. Greenplum vs. LokiJS vs. Neo4j
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CockroachDB Xexclude from comparison | Firebase Realtime Database Xexclude from comparison | Greenplum Xexclude from comparison | LokiJS Xexclude from comparison | Neo4j Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | 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. | Cloud-hosted realtime document store. iOS, Android, and JavaScript clients share one Realtime Database instance and automatically receive updates with the newest data. | Analytic Database platform built on PostgreSQL. Full name is Pivotal Greenplum Database A logical database in Greenplum is an array of individual PostgreSQL databases working together to present a single database image. | In-memory JavaScript DBMS | Scalable, ACID-compliant graph database designed with a high-performance distributed cluster architecture, available in self-hosted and cloud offerings | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Relational DBMS | Document store | Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.cockroachlabs.com | firebase.google.com/products/realtime-database | greenplum.org | github.com/techfort/LokiJS | neo4j.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.cockroachlabs.com/docs | firebase.google.com/docs/database | docs.greenplum.org | techfort.github.io/LokiJS | neo4j.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cockroach Labs | Google acquired by Google 2014 | Pivotal Software Inc. | Neo4j, Inc. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2015 | 2012 | 2005 | 2014 | 2007 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 23.1.1, May 2023 | 7.0.0, September 2023 | 5.19, April 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache 2.0, commercial license available | commercial | Open Source Apache 2.0 | Open Source | Open Source GPL version3, commercial licenses available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | Neo4j Aura: Neo4j’s fully managed cloud service: The zero-admin, always-on graph database for cloud developers. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Go | JavaScript | Java, Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux macOS Windows | hosted | Linux | server-less, requires a JavaScript environment (browser, Node.js) | Linux Can also be used server-less as embedded Java database. OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | dynamic schema | schema-free | yes | schema-free | schema-free and schema-optional | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | 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 | yes since Version 4.2 | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes via views | yes pluggable indexing subsystem, by default Apache Lucene | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes, wire compatible with PostgreSQL | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | Android iOS JavaScript API RESTful HTTP API | JDBC ODBC | JavaScript API | Bolt protocol Cypher query language Java API Neo4j-OGM Object Graph Mapper RESTful HTTP API Spring Data Neo4j TinkerPop 3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# C++ Clojure Go Java JavaScript (Node.js) PHP Python Ruby Rust | Java JavaScript Objective-C | C Java Perl Python R | JavaScript | .Net Clojure Elixir Go Groovy Haskell Java JavaScript Perl PHP Python Ruby Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | limited functionality with using 'rules' | yes | View functions in JavaScript | yes User defined Procedures and Functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | Callbacks are triggered when data changes | yes | yes | yes via event handler | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | 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 | none | yes using Neo4j Fabric | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication using RAFT | Source-replica replication | none | Causal Clustering using Raft protocol available in in Enterprise Version only | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency if the client is offline Immediate Consistency if the client is online | Immediate Consistency | none | Causal and Eventual Consistency configurable in Causal Cluster setup Immediate Consistency in stand-alone mode | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | yes | no | yes Relationships in graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | yes | ACID | no atomic operations within a single collection possible | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Serialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Role-based access control | yes, based on authentication and database rules | fine grained access rights according to SQL-standard | no | Users, roles and permissions. Pluggable authentication with supported standards (LDAP, Active Directory, Kerberos) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CockroachDB | Firebase Realtime Database | Greenplum | LokiJS | Neo4j | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Neo4j delivers graph technology that has been battle tested for performance and scale... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Neo4j is the market leader, graph database category creator, and the most widely... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Real-Time Recommendations Master Data Management Identity and Access Management Network... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Over 800 commercial customers and over 4300 startups use Neo4j. Flagship customers... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Neo4j boasts the world's largest graph database ecosystem with more than 140 million... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | GPL v3 license that can be used all the places where you might use MySQL. Neo4j Commercial... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | Safeguarding Elections: How Graph Technology Powers Groundbreaking Research on Political Ads This Week in Neo4j: GraphRAG, Testcontainers, Metadata Management, App Dev and more Creating the GQL Database Language Standard This Week in Neo4j: GraphRAG, Knowledge Graphs, Open Source AI, GraphQL and more This Week in Neo4j: Nodes 2024, Data Modelling, Events, Knowledge Graphs and 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CockroachDB | Firebase Realtime Database | Greenplum | LokiJS | Neo4j | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates | New kids on the block: database management systems implemented in JavaScript | Applying Graph Analytics to Game of Thrones MySQL, PostgreSQL and Redis are the winners of the March ranking The openCypher Project: Help Shape the SQL for Graphs Cockroach Labs Deepens Partnership with Google Cloud, CockroachDB Selected to Join Google Distributed Cloud CockroachDB tempts legacy databases to crawl into the cloud age 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 How DoorDash Migrated from Aurora Postgres to CockroachDB provided by Google News Realtime vs Cloud Firestore: Which Firebase Database to go? Atos cybersecurity blog: Misconfigured Firebase: A real-time cyber threat Don't be like these 900+ websites and expose millions of passwords via Firebase Google Firebase may have exposed 125M records from misconfigurations Misconfigured Firebase instances leaked 19 million plaintext passwords provided by Google News VMware Greenplum on AWS: Parallel Postgres for Enterprise Analytics at Scale | Amazon Web Services 1. Introducing the Greenplum Database - Data Warehousing with Greenplum [Book] RSA: EMC integrates Hadoop with Greenplum database Greenplum 6 ventures outside the analytic box Greenplum 6 review: Jack of all trades, master of some provided by Google News LokiJS - A JavaScript Database provided by Google News Neo4j Announces Collaboration with Microsoft to Advance GenAI and Data Solutions USA - English - India - English Neo4j Empowers Syracuse University with $250K Grant to Tackle Misinformation in 2024 Elections Neo4j Is Planning IPO on Nasdaq, Largest Owner Greenbridge Says Using Neo4j’s graph database for AI in Azure Neo4j, Microsoft add graph features to Azure AI services provided by Google News |
Share this page