Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 哪个nosql db适合?_Node.js_Nosql_Scaling_Riak - Fatal编程技术网

Node.js 哪个nosql db适合?

Node.js 哪个nosql db适合?,node.js,nosql,scaling,riak,Node.js,Nosql,Scaling,Riak,我正在寻找建立一个社会网络类型。现在这不会是Facebook的规模,但我觉得它可能会有大量的追随者。我想在构建系统时考虑可伸缩性。它还需要能够处理大量数据和关系。我希望有人能给我一些使用db的指导。我读过很多文章,但它们通常至少有一年的历史,而且数据库变化很快,所以我不知道人们说的话是否仍然正确。我非常喜欢riak数据库,因为它很容易扩展,而且我喜欢所有节点都可以读写。我关心的一个问题是数据之间的关系。然而,我相信在里亚克的链接将解决这个问题。但是使用链接会降低性能。我只是希望有人能用我的经验和

我正在寻找建立一个社会网络类型。现在这不会是Facebook的规模,但我觉得它可能会有大量的追随者。我想在构建系统时考虑可伸缩性。它还需要能够处理大量数据和关系。我希望有人能给我一些使用db的指导。我读过很多文章,但它们通常至少有一年的历史,而且数据库变化很快,所以我不知道人们说的话是否仍然正确。我非常喜欢riak数据库,因为它很容易扩展,而且我喜欢所有节点都可以读写。我关心的一个问题是数据之间的关系。然而,我相信在里亚克的链接将解决这个问题。但是使用链接会降低性能。我只是希望有人能用我的经验和数据库目前的运行方式给我一些指导。

这个问题可能会引起太多的争论。但一切都一样;听起来,您应该远离简单的键值,比如redis,而转向更像是丰富的、甚至是关系型元数据的对象存储;像MongoDB一样。

关于这个话题有几篇评论:(一些在Fowler的书中),一些在。根据它们,您需要“图形数据库”或“分布式对等存储”(这里列出了Riak),或者,哪一个更好——它们的某种组合。如果性能是您最关心的问题,我还建议您开始对高负载场景进行建模,看看会发生什么。

谢谢您的回复。我读到mongodb有点难以扩展,而且它不能很好地处理大量数据。另一件需要注意的事情是关系。我知道你可以将mongodb中的关系保存在一个对象中(可能是通过ID),但它们的空间有限(如果我没记错的话,现在是16mb),所以在某个时候这可能是个问题。我没有消息来源,但我记得我们的运营部门说mongo只能保存大约100万条记录或类似的东西。我希望我不会挑起一场火焰战。Mongo可以很好地处理人际关系,但你必须自己保持诚信。Redis对于您需要的东西(键/值存储)来说太简单了。我会选择mysql或mongodb。不太清楚couchdb。谢谢你的回复。我肯定会运行一些高负载测试。在走那条路之前,我只想缩小我的选择范围。我想把它降到2或3。是的,里亚克对我来说真的很有趣。就在我们开始讨论之前,你对关系的效率有什么意见吗?@ngreenwood6-你能在你的问题中概述一个预期的数据模型吗?这将有点具体化,并将“大量数据和关系”问题缩小为更具体的问题。