| Name 
 成都创新互联公司,是成都地区的互联网解决方案提供商,用心服务为企业提供网站建设、成都APP应用开发、小程序设计、系统按需网站制作和微信代运营服务。经过数10多年的沉淀与积累,沉淀的是技术和服务,让客户少走弯路,踏实做事,诚实做人,用情服务,致力做一个负责任、受尊敬的企业。对客户负责,就是对自己负责,对企业负责。 | HBase | Memcached | MongoDB | redis | Solr | |
| Description | Wide-column store based on Apache Hadoop and on concepts of BigTable | In-memory key-value store, originally intended for caching | One of the most popular document stores | In-memory database with configurable options performance vs. persistency | A widely usedenterprise search engine based onApache Lucene | |
| Developer | Apache Software Foundation | Danga Interactive | MongoDB, Inc | Salvatore Sanfilippo | Apache Software Foundation | |
| Initial release | 2008 | 2003 | 2009 | 2009 | 2004 | |
| License | Open Source | Open Source | Open Source | Open Source | Open Source | |
| Implementation language | Java | C | C++ | C | Java | |
| Server operating systems | Linux | Linux | Linux | Linux | All OS with a Java VM and a servlet container | |
| Unix | Unix | |||||
| OS X | OS X | |||||
| Windows | Windows | Windows | Windows | |||
| FreeBSD | Solaris | BSD | ||||
| Database model | Wide column store | Key-value store | Document store | Key-value store | Search engine | |
| Data scheme | schema-free | schema-free | schema-free | schema-free | yes | |
| Typing | no | no | yes | no | yes | |
| Secondary indexes | no | no | yes | no | yes | |
| SQL | no | no | no | no | no | |
| APIs and other access methods | Java API | Proprietary protocol | proprietary protocol using JSON | proprietary protocol | Java API | |
| RESTful HTTP API | RESTful HTTP API | |||||
| Thrift | ||||||
| Supported programming languages | C | C | C | C | ||
| C# | .Net | C# | C# | .Net | ||
| C++ | C++ | C++ | C++ | |||
| Groovy | ColdFusion | Groovy | Clojure | |||
| Java | Java | Java | Java | Java | ||
| Erlang | Erlang | Erlang | Erlang | |||
| Python | Python | Python | Python | Python | ||
| Scala | Lua | Scala | Scala | Scala | ||
| Ruby | Ruby | Ruby | Ruby | |||
| PHP | PHP | PHP | PHP | PHP | ||
| JavaScript | JavaScript | JavaScript | ||||
| Perl | Perl | Perl | Perl | |||
| OCaml | Lua | Lua | any language that supports sockets and either XML or JSON | |||
| Lisp | Lisp | Lisp | ||||
| Dart | Dart | |||||
| ColdFusion | ||||||
| Go | Go | |||||
| Actionscript | Objective-C | |||||
| Haskell | Haskell | |||||
| Smalltalk | Smalltalk | |||||
| Clojure | Tcl | |||||
| MatLab | ||||||
| PowerShell | ||||||
| Prolog | ||||||
| Server-side scripts | yes | no | JavaScript | Lua | Java plugins | |
| Triggers | yes | no | no | no | no | |
| Partitioning methods | Sharding | none | Sharding | none | Sharding | |
| Replication methods | selectable replication factor | none | Master-slave replication | Master-slave replication | cloud/distributed (via Zookeeper) | |
| Master-slave replication | ||||||
| MapReduce | yes | no | yes | no | no | |
| Consistency concepts | Immediate Consistency | Eventual Consistency | Eventual Consistency | |||
| Immediate Consistency | ||||||
| Foreign keys | no | no | no | no | no | |
| Transaction concepts | no | no | no | optimistic locking | optimistic locking | |
| Concurrency | yes | yes | yes | yes | yes | |
| Durability | yes | no | yes | yes | yes | |
| User concepts | Access Control Lists (ACL) | yes | Users can be defined with full access or read-only access | very simple password-based access control | ||
| Specific characteristics | Redis very much emphasize performance. In any design decisions performance has priority over features or memory requirements. | Architecture: Lives in web stack, ships by default with Jetty. Connectors, JDBC, multiple languages, true morphological CJK, binary document filters (Tika), Entity Extraction (UIMA) | ||||
| Typical application scenarios | Mostly used for caching | Applications that can hold all data in memory, and that have high performance requirements. |