我爱编程

Misc no SQL DB comparison from I

2018-04-15  本文已影响0人  博海湾

1. NoSQL standouts: The best document databases

part2

Here we’ve profiled seven of the best known and most widely used document databases. Four of the seven—CouchDB, Couchbase Server, MongoDB, and RethinkDB—are open source projects with few or no practical barriers to getting started; Couchbase and MongoDB are also available in supported enterprise editions under commercial licenses. The other three—Amazon DynamoDB, Google Firebase, and IBM Cloudant—are hosted services from major cloud vendors, where close integration with other services in those clouds is a big draw.

Amazon DynamoDB Cosmos DB Couchbase CouchDB Google Firebase IBM Cloudant MarkLogic MongoDB RethinkDB
Platforms Cloud-only Cloud-only LWM LWMIAO Cloud-only Cloud-only LWMS LWMS LWM
Query systems REST API MongoDB wire protocol Memcached protocol, REST API REST API REST/JavaScript API REST API REST API JSON-based API, partial REST API ReQL query language, REST API
SQL querying No1 Yes Via N1QL language No No No Yes No1 No
Strong typing Yes Yes Yes No Yes No For XML schemas Yes Yes
Native joins No Yes Yes No No No Yes Yes Yes
Sharding partitioning Yes Yes Yes Yes NA Yes Yes Yes Yes2
Clustering NA Yes Yes Yes NA NA Yes Yes Yes
Replication Yes Yes Yes Yes NA Yes Yes Yes Per table
Consistency: Immediate Per read Yes Per overall No Connected clients No Yes Per write Per document
Consistency: Eventual Yes Yes Yes Yes Offline clients Yes Yes Yes Entire database
Concurrency Yes Yes Yes Yes Yes Yes Yes Yes Yes
In-memory operations NA NA No No NA No NA Yes3 No
Stored procedures No JavaScript JavaScript4 JavaScript4 Rules JavaScript4 XQuery Module JavaScript No
Transactions By app Yes Single documents Single documents Yes Single documents Single documents Single documents5 Single documents
Current version NA NA 5.0 (Oct. 2017) 2.1.1 (Nov. 2017) NA NA 9.0 (May 2016) 3.4.10 (Oct. 2017) 2.3.6 (Jul. 2017)
Initial release 2012 2017 2011 2005 2012 2010 2005 2009 2009

key: L=Linux, W=Windows, M=MacOS, S=Solaris, I=iOS, A=Android, O=other mobile,

  1. Third-party tools may provide this functionality. 2. Per table. 3. Enterprise edition only. 4. View functions only. 5. Multidocument transactions are also available, but not on sharded clusters.
  1. DynamoDB

similar ideas to create Apache Cassandra by co-developer
Amazon’s DynamoDB document store began life in 2012 as an extension of Amazon’s SimpleDB. Under the hood it is powered by a key-value store, Dynamo.
. DynamoDB offers developers useful integrations with other services in the Amazon cloud. Triggers, for instance, can be set up by way of AWS Lambda functions. Amazon’s BI and analysis tools are also nearby.

  1. Microsoft Azure Cosmos DB

ambitious project: Cosmos DB can serve as a document database, a columnar database, a graph database, or a key-value store
provides an API compatible with the popular MongoDB

  1. CouchBase Server

Couchbase was built on work done in CouchDB and Membase
It’s a document database and distributed key-value store rolled into one, with advanced features like automated failover and cross-datacenter replication, intended for enterprise use cases
. SQL-like query language called N1QL
. Couchbase has native support for the Memcached protocol

  1. MongoDB

MongoDB is easily the most widely deployed document database
It embodies most of the key concepts found in document databases and NoSQL systems generally: schemaless storage, a scale-out architecture, and a shared-nothing design.
. Recent addition: in-memory processing, a SQL-like interface through third-party data exploration and BI tools like Tableau, and the ability to perform recursive graph queries on document data

  1. RethinkDB

The big innovation behind RethinkDB is a built-in change notification system that streams live updates to applications. In the words of its introductory documentation, “instead of polling for changes, the developer can tell the database to continuously push updated query results to applications in realtime.”
RethinkDB lacks native support for SQL, but includes a querying system called ReQL

2 NoSQL standouts: The best key-value databases compared

Aerospike Hazelcast IMDG Microsoft Azure Cosmos DB Memcached Redis
Platforms LWMO Java Cloud-only LWMO LWMO
Current version 3.14.1.1 3.9 N/A 1.5.1 4.0.1
Initial release 2012 2008 2017 2003 2009
License AGPL Apache 2 Proprietary BSD BSD
Disk-backed Yes No Yes No YesBSD
Clustering Yes Yes Yes No Yes
Sharding/partitioning Yes Yes Yes No Yes
Native scripting Yes Java Yes No Yes
Transactions Per key Yes Yes No Yes
Embeddable Yes* Yes No Yes* Yes*

3 NoSQL grudge match: MongoDB vs. Couchbase Server

MongoDB combines the benefits of immense popularity, support for simple graph searches, and the ability to perform SQL queries via a BI connector. Couchbase has its own large community of users, a performant key-value architecture, and a SQL-like query language capable of navigating nested document structures.

上一篇下一篇

猜你喜欢

热点阅读