5款备受关注的开源NoSQL数据库

前端之家收集整理的这篇文章主要介绍了5款备受关注的开源NoSQL数据库前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文向您推荐5款备受关注的开源Nosql数据库

1. 集中式缓存系统 memcached

memcached是一套分布式的快取系统,当初是Danga Interactive为了LiveJournal所发展的,但目前被许多软件(如MediaWiki)所使用。这是一套开放源代码软件,以BSD license授权释出。

  • memcached缺乏认证以及安全管制,这代表应该将memcached服务器放置在防火墙后。
  • memcached的API使用三十二位元的循环冗余校验(CRC-32)计算键值后,将资料分散在不同的机器上。当表格满了以后,接下来新增的资料会以LRU机制替换掉。由于memcached通常只是当作快取系统使用,所以使用memcached的应用程式在写回较慢的系统时(像是后端的数据库)需要额外的程式码更新 memcached内的资料。
  • memcached具有多种语言的客户端开发包,包括:Perl/PHP/JAVA/C/Python/Ruby/C#/MysqL/。

2. 分布式K/V存储方案 Cassandra

Apache Cassandra是一套开源分布式Key-Value存储系统。它最初由Facebook开发,用于储存特别大的数据。Facebook目前在使用此系统。

主要特性:

分布式

基于column的结构化

高伸展性

3. 开源NoSQL系统 Membase

Membase是Nosql家族的一个新的重量级的成员。

Membase是开源项目,源代码采用了Apache2.0的使用许可。该项目托管在GitHub.Source tarballs上,目前可以下载beta版本的Linux二进制包。该产品主要是由North Scale的memcached核心团队成员开发完成,其中还包括Zynga和NHN这两个主要贡献者的工程师,这两个组织都是很大的在线游戏和社区网络空间的供应商。

Membase容易安装、操作,可以从单节点方便的扩展到集群,而且为memcached(有线协议的兼容性)实现了即插即用功能,在应用方面为开 发者和经营者提供了一个比较低的门槛。做为缓存解决方案,Memcached已经在不同类型的领域(特别是大容量的Web应用)有了广泛的使用,其中 Memcached的部分基础代码被直接应用到了Membase服务器的前端。

4. 超高性能 key-value 数据库 Redis

Redis是一个高性能的key-value数据库。redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。

性能测试结果:

SET操作每秒钟 110000 次,GET操作每秒钟 81000 次,服务器配置如下:

Linux 2.6,Xeon X3320 2.5Ghz.

stackoverflow 网站使用 Redis 做为缓存服务器。

5. 面向文档的数据库 CouchDB

Apache CouchDB是一个面向文档的数据库管理系统。它提供以 JSON 作为数据格式的 REST 接口来对其进行操作,并可以通过视图来操纵文档的组织和呈现。CouchDB是Apache基金会的顶级开源项目。CouchDB落实到最底层的数据结构就是两类B+Tree。

猜你在找的NoSQL相关文章