NoSQL数据库领域分析

 1.DynamoDB

亚马逊的基于key-value模式的存储平台,同时支持文档数据模型支持,如json格式的数据,具有托管性的NoSQL数据库。其可用性、扩展性都很好,性能都很好,性能上99.9%的读写操作响应时间是在几毫秒以内。对于可用性,DynamoDB会将数据在一个区域中的三个数据中心之间实现自动同步数据复制。不同于传统NoSQL数据库,DynamoDB宣称具有事务强一致性。支持MapReduce。
 
2.MongDB
一种基于分布式文件存储的NoSQL数据库,适合存储对象及JSON等文档数据模型。MongDB支持较为复杂的SQL查询,是NoSQL领域最像关系型数据库的非关系型数据库,支持索引。MongDB的实现原理是类似于key-value的key-bson的面向集合的NoSQL系统,所谓的面向集合指的是数据分组存储在数据集中,被称为一个集合。每个集合有唯一标识名,集合可以包含无限次数的文档。其性能很高,适用于一些信息基础设施的缓存层,同时可用于实时的CRUD操作,具备很强的性能和扩展性。但是MongDB不适用于一些高度事务性的系统,如银行、会记等系统。
 
3.CouchDB
一种面向JSON格式的文档,使用JavaScript做MapReduce索引,同时其接口使用HTTP的非关系型数据库。CouchDB是一个完全拥抱WEB的分布式数据库,可以直接通过http接口浏览和查询数据,所有的数据使用的是JSON格式,至此后REST API,使用JavaScript操作数据库。支持使用MapReduce计算数据结果。
其原理是使用两个B+Tree来组织数据,第一个B+Tree是按照document id来组织,第二个B+Tree是按照seqnum来组织。在做更新操作时,首先拷贝原有的数据信息,随后将其追加到文件的结尾,触发B+树从leaf到root的更新过程。由于是追加操作,因此需要定时清理旧的数据,也即Compation操作。
 
4.BigTable
BigTable是非关系型数据库,是一个稀疏、分布式、持久化存储的多维度排序map,设计目的是可靠的处理PB级别的数据,并且能够部署在上前台服务器上。非常适用于现在的海量数据应用,适用性广泛、扩展性强、具有高性能、高可用性。也是Google自此开启了NoSQL的热潮。其底层文件存储系统是GFS。
 
5.HBase
HBase是Google Bigtable的开源实现,是一个具有高可靠性、高性能、面向列的可伸缩的分布式存储系统。类似于Bigtable使用GFS作为其文件系统,Bigtable使用HDFS作为其文件系统。HBase同样使用MapReduce来处理海量数据。
 
6.Redis
Redis是一个key-value的存储系统,支持存储的value类型包括string、list、set、hash等。可以在数据上进行push pop add remove等操作。Redis会周期性地将更新的数据写入磁盘或者把修改操作写入追加的记录文件中。提供JAVA、C、JavaScript、Perl、Python、Ruby等客户端,使用方便。
 
7.Memcached
Memcached是一个高性能的基于随着用户量和业务量的增加,一些WEB应用的数据急剧增长,导致原有的数据库无法很好支撑业务发展。为了提升性能使用Memcached可以大大提升访问速度,减轻数据库本身负担。Memcached非常适用于作为数据库前段cache使用,在一些大型系统中,访问同样的数据会非常频繁,适用cache就可以大大降低系统压力,使系统执行效率提升。
 
8.Oracle NoSQL Database
Oracle开发的基于key-value的分布式数据库。其最大特点是支持ACID事务特性,同时支持基于单个操作或者全局操作的灵活事务级别控制。除此之外不会有单点故障,具有可配置的数据复制备份机制,通过跨数据中心的数据备份,提供数据的灾难恢复。提供基于JAVA API 的put/delete/get操作。
 
9.Neo4j
Neo4j是一个嵌入式的、基于磁盘的、具备完全事务特性的Java持久化存储引擎。其将结构化数据存储在图上而不是表中。这种基于图的存储引擎善于处理大量复杂、互联接、低结构化的数据。通过围绕图的数据建模,使得图的遍历速度和构成图的数据量没有任何关系,这也就避免了RDBMS在大表复杂关联查询时的性能问题。在性能上可以达到每秒检索达到上亿级别的检索量。支持基本的ACID事务属性。
 
10.Cassandra
Cassandra最初由Facebook开发,他是一个类似于BigTable的基于列族的分布式非关系型数据库,具有BigTable和Dynamo特性于一身,非常容易进行集群的线性扩展。
 

猜你喜欢

转载自macavity.iteye.com/blog/2203701
今日推荐