DBMS > Apache Phoenix vs. Google Cloud Datastore vs. MarkLogic vs. Postgres-XL vs. Tkrzw
System Properties Comparison Apache Phoenix vs. Google Cloud Datastore vs. MarkLogic vs. Postgres-XL vs. Tkrzw
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Phoenix Xexclude from comparison | Google Cloud Datastore Xexclude from comparison | MarkLogic Xexclude from comparison | Postgres-XL Xexclude from comparison | Tkrzw Successor of Tokyo Cabinet and Kyoto Cabinet Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A scale-out RDBMS with evolutionary schema built on Apache HBase | Automatically scaling NoSQL Database as a Service (DBaaS) on the Google Cloud Platform | Operational and transactional Enterprise NoSQL database | Based on PostgreSQL enhanced with MPP and write-scale-out cluster features | A concept of libraries, allowing an application program to store and query key-value pairs in a file. Successor of Tokyo Cabinet and Kyoto Cabinet | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Document store Native XML DBMS RDF store as of version 7 Search engine | Relational DBMS | Key-value store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | phoenix.apache.org | cloud.google.com/datastore | www.marklogic.com | www.postgres-xl.org | dbmx.net/tkrzw | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | phoenix.apache.org | cloud.google.com/datastore/docs | docs.marklogic.com | www.postgres-xl.org/documentation | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | MarkLogic Corp. | Mikio Hirabayashi | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2008 | 2001 | 2014 since 2012, originally named StormDB | 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.0-HBase2, July 2018 and 4.15-HBase1, December 2019 | 11.0, December 2022 | 10 R1, October 2018 | 0.9.3, August 2020 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | commercial | commercial restricted free version is available | Open Source Mozilla public license | Open Source Apache Version 2.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 | C++ | C | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Unix Windows | hosted | Linux OS X Windows | Linux macOS | Linux macOS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes late-bound, schema-on-read capabilities | schema-free | schema-free Schema can be enforced | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes, details here | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes XML type, but no XML query functionality | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | SQL-like query language (GQL) | yes SQL92 | yes distributed, parallel query execution | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | gRPC (using protocol buffers) API RESTful HTTP/JSON API | Java API Node.js Client API ODBC proprietary Optic API Proprietary Query API, introduced with version 9 RESTful HTTP API SPARQL WebDAV XDBC XQuery XSLT | ADO.NET JDBC native C library ODBC streaming API for large objects | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Groovy Java PHP Python Scala | .Net Go Java JavaScript (Node.js) PHP Python Ruby | C C# C++ Java JavaScript (Node.js) Perl PHP Python Ruby | .Net C C++ Delphi Erlang Java JavaScript (Node.js) Perl PHP Python Tcl | C++ Java Python Ruby | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | using Google App Engine | yes via XQuery or JavaScript | user defined functions | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | Callbacks using the Google Apps Engine | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding | horizontal partitioning | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Multi-source replication using Paxos | yes | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Hadoop integration | yes using Google Cloud Dataflow | yes via Hadoop Connector, HDFS Direct Access and in-database MapReduce jobs | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency | Immediate Consistency or Eventual Consistency depending on type of query and configuration Strong Consistency is default for entity lookups and queries within an Entity Group (but can instead be made eventually consistent). Other queries are always eventual consistent. | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes via ReferenceProperties or Ancestor paths | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID Serializable Isolation within Transactions, Read Committed outside of Transactions | ACID can act as a resource manager in an XA/JTA transaction | ACID MVCC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | no | yes, with Range Indexes | no | yes using specific database classes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access Control Lists (using HBase ACL) for RBAC, integration with Apache Ranger for RBAC & ABAC, multi-tenancy | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | Role-based access control at the document and subdocument levels | fine grained access rights according to SQL-standard | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Phoenix | Google Cloud Datastore | MarkLogic | Postgres-XL | Tkrzw Successor of Tokyo Cabinet and Kyoto Cabinet | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloudera's HBase PaaS offering now supports Complex Transactions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Supercharge SQL on Your Data in Apache HBase with Apache Phoenix | Amazon Web Services Azure #HDInsight Apache Phoenix now supports Zeppelin Bridge the SQL-NoSQL gap with Apache Phoenix Apache Calcite, FreeMarker, Gora, Phoenix, and Solr updated Hortonworks Starts Hadoop Summit with Data Platform Update -- ADTmag provided by Google News | Best cloud storage of 2024 Google Cloud Stops Exit Fees BigID Data Intelligence Platform Now Available on Google Cloud Marketplace Google says it'll stop charging fees to transfer data out of Google Cloud What is Google App Engine? | Definition from TechTarget provided by Google News | MarkLogic “The NoSQL Database”. In the MarkLogic Query Console, you can… | by Abhay Srivastava | Apr, 2024 Database Platform to Simplify Complex Data | Progress Marklogic AI can make logistics data as valuable as intelligence or operational data for mission success ABN AMRO Moves Progress-Powered Credit Store App to Azure Cloud; Achieves 40% Faster Data Processing, Lower ... Seven Quick Steps to Setting Up MarkLogic Server in Kubernetes provided by Google News |
Share this page