常见的nosql数据库有哪些

介绍

这篇文章将为大家详细讲解有关常见的nosql数据库有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

现在,nosql数据库变得越来越流行,我在这里总结出了一些非常棒的,免费且开源的nosql数据库。在这些数据库中,MongoDB独占鳌头,拥有相当大的使用量。这些免费且开源的nosql数据库具有很好的可伸缩性与灵活性,非常适合于大数据存储与处理。相较于传统的关系型数据库,这些nosql数据库在性能上具有很大的优势。

然而,这些nosql数据库未必最适合你。大多数常见的应用仍然可以使用传统的关系型数据库进行开发.NoSQL数据库依然不太适合于那些任务关键型的事务要求。我对这些数据库进行了一些简单介绍,下面就来看看。

<强> 1。MongoDB

MongoDB是个面向文档的数据库,使用JSON风格的数据格式。它非常适合于网站的数据存储,内容管理与缓存应用,并且通过配置可以实现复制与高可用性功能。

MongoDB具有很强的可伸缩性,性能表现优异。它使用c++编写,基于文档存储。此外,MongoDB还支持全文检索,跨广域网与局域网的高可用性,易于实现的复制,水平扩展,基于文档的丰富查询,在数据处理与聚合等方面具有很强的灵活性。

<强> 2。卡桑德拉

这是个Apache软件基金会的项目,卡桑德拉是个分布式数据库,支持分散的数据存储,可以实现容错以及无单点故障等。换句话说,”卡桑德拉非常适合于那些无法忍受数据丢失的应用”。

<强> 3。CouchDB

这也是Apache软件基金会的一个项目,CouchDB是另一个面向文档的数据库,以JSON格式存储数据。它兼容于酸,像MongoDB一样,CouchDB也可以用于存储网站的数据与内容,以及提供缓存等。你可以通过JavaScript在CouchDB上运行MapReduce查询。此外,CouchDB还提供了一个非常方便的基于Web的管理控制台。它非常适合于网络应用。

<强> 4。Hypertable

Hypertable模仿的是Google的BigTable数据库系统.Hypertable的创建者将“成为高可用,PB规模的数据库开源标准”作为Hypertable的目标,换言之,Hypertable的设计目标是跨越多个廉价的服务器可靠地存储大量数据。

<强> 5。复述,

这是个开源,高级的键值存储。由于在键中使用了散列,设置,字符串,排序设置及名单,因此复述,也称作数据结构服务器。这个系统可以帮助你执行原子操作,比如说增加散列中的值,集合的交集运算,字符串拼接,差集与并集等.Redis通过内存中的数据集实现了高性能。此外,该数据库还兼容于大多数编程语言。

<强> 6。Riak

Riak是最为强大的分布式数据库之一,它提供了轻松且可预测的伸缩能力,向用户提供了快速测试,原型与应用部署能力,从而简化应用的开发过程。

<强> 7。Neo4j

Neo4j是一款NoSQL图型数据库,具有非常高的性能。它拥有一个健壮且成熟的系统的所有特性,向程序员提供了灵活且面向对象的网络结构,可以让开发者充分享受到拥有完整事务特性的数据库的所有好处。相较于RDBMS, Neo4j还对某些应用提供了不少性能改进。

<强> 8。Hadoop HBase

HBase是一款可伸缩,分布式的大数据存储。它可以用在数据的实时与随机访问的场景下.HBase拥有模块化与线性的可伸缩性,并且能够保证读写的严格一致性.HBase提供了一个Java API,可以实现轻松的客户端访问;提供了可配置且自动化的表分区功能,还有开过滤器以及块缓存等特性。

<强> 9。他

虽然他是CouchDB的派生,不过它已经成为了一款功能完善的数据库产品。它向文档数据库转移的趋势会让MongoDB感到压力。每个节点上它都是多线程的,这是个非常主要的可伸缩性优势,特别是当托管在自定义或是裸机硬件上时更是如此。借助于一些非常棒的集成特性,诸如与Hadoop的集成,他对于数据存储来说是个非常不错的选择。

<强> 10。MemcacheDB

这是个分布式的键值存储系统,我们不应该将其与缓存解决方案搞混;相反,它是个持久化存储引擎,用于数据存储并以非常快速且可靠的方式检索数据。它遵循memcache协议。其存储后端用于Berkeley DB中,支持诸如复制与事务等特性。

<强> 11。REVENDB

RAVENDB是第二代开源数据库,它面向文档存储并且无模式,这样就可以轻松将对象存储到其中了。它提供了非常灵活且快速的查询,通过对复制,多租与分片提供开箱即用的支持使得我们可以非常轻松地实现伸缩功能。它对酸事务提供了完整的支持,同时又能保证数据的安全性。除了高性能之外,它还通过包提供了轻松的可扩展性。

常见的nosql数据库有哪些