有没有稳定和生产质量的nosql数据存储?

时间:2009-12-11 08:38:13

标签: scalability nosql production-environment datastore key-value

我是否可以在生产系统上使用生产质量的nosql商店。我已经看过cassandra,tokyodb,couchdb等,但它们似乎都没有为像环境这样的生产部署做好准备。我每分钟都在谈论成千上万的请求以及大量的读/写/更新。我唯一关心的是速度和服务时间。有人知道有效使用nosql商店的生产系统吗?有没有人知道由Google / Yahoo / IBM等大企业支持的nosql商店?

6 个答案:

答案 0 :(得分:6)

Cassandra每台机器每个处理数千个请求(包括写入主要是工作负载),并且从第1天开始,它的扩展计算机已经存在。

以下是关于Cassandra在生产和生产中使用的一个主题 - 很快就会出现在几十家公司:http://n2.nabble.com/Cassandra-users-survey-td4040068.html#a4040068

我们还会一直添加更多文档,例如http://wiki.apache.org/cassandra/Operations

答案 1 :(得分:4)

我认为NoSQL系统是一个很好的选择,如果我只关心速度和服务时间(而不是关于一致性和事务的东西)。 Facebook使用Cassandra。

“Cassandra在Facebook中被用作包含25TB和超过100m邮箱的电子邮件搜索系统。” http://highscalability.com/product-facebooks-cassandra-massive-distributed-store

我认为CouchDb并不是很快,也许你可以使用MongoDB:http://www.mongodb.org/display/DOCS/Production+Deployments

答案 2 :(得分:2)

另外值得考虑的是使用像MySQL这样的传统RDBMS来存储无模式。这种方法为您提供了经过验证的数据库服务器(如MySQL)的稳定性,并具有NoSQL解决方案的灵活性。

查看this博客文章,了解FriendFeed如何做到这一点。

答案 3 :(得分:1)

BerkeleyDB由Oracle支持

使用本机C接口,每秒可以达到接近100万个读取请求。

顺便说一下,当你说每分钟有数千个请求时,任何“正常”的数据库都应该能够轻松处理。

答案 4 :(得分:0)

Redis值得一试,Github使用redis来管理background jobs的重排队。

答案 5 :(得分:0)

我的第一直觉是BerkeleyDB,SAMBA网络上的每个应用节点都有助于ACID一致性和网络使用。它还具有SQLite界面。其他海报引用MemcacheDB内部也有BDB。

另一个独特的选项是OrientDB,还有一个SQL界面,大量的网络&集群功能。