我很好奇是否有人为访问NoSQL数据库中的数据做了基准测试(特别是我在谈论Oracle )?该项目需要至少与10mil+的记录,其中的搜索(但不必是实时的),读取是非常重要的速度,也是非常重要的保证HA和可靠性(不能丢失记录!)我可以亲眼看到Cassandra/MongoDB是如何更适合的(因为当您查看1000万条记录时,键值存储将提供比SQL更快的读取速度),但我发现很难很好地将它们全部表达出来。有联系吗?有什么建议吗?子弹点?谢谢!
发布于 2011-02-10 00:18:54
1000万条记录。假设每条记录有250个字节。这大约是2.5GB的数据,这是一个基本的台式机/笔记本电脑的能力范围内。数据卷是不重要的(除非每个记录都以Mb大小,如图片或音频)。
您需要讨论的是事务卷(分为读和写)和考虑HA的内容。相对于“读写HA”,只读HA更容易实现。将只读数据复制到不同地理位置的多个服务器并在其上分发查询工作负载可能非常简单。
要扩大更新的工作量要困难得多,这就是为什么当大型音乐会的门票被发布时,经常听到系统崩溃的原因。很简单,有固定数量的座位,你不可能有10个重复的系统,每个销售他们认为是可用的。必须有一个单一的真相来源,这意味着一个瓶颈(可能是一个单一的失败点)。
在HA方面,RAC是一种共享存储技术,这通常意味着您的RAC节点非常接近。这可能使他们容易受到局部化事件的影响,如建筑火灾或电信故障。数据保护是与场外复制和故障转移相关的Oracle技术.
发布于 2013-02-18 12:01:55
大多数情况下,当您比较NoSQL与SQL时,您必须了解它们之间的一个非常重要的区别。NoSQL中的数据在成本上可能不一致,以实现HA。
我所说的不一致是什么意思?这取决于,但通常在3-5秒左右在节点上传播数据.NoSQL数据库提供了管理和消除这种情况的机制,但是如果您希望所有数据实时一致,那么只需使用经典的SQL,比如Oracle。
回过头来看速度比较:哪一种更快是根本无法比拟的,因为它依赖于网络基础设施、计算能力和数据库模型等因素。但重要的是,在某个时候,您可能会达到在维护时经济效率低下的时刻,并且您必须切换到NoSQL。
https://stackoverflow.com/questions/4951514
复制相似问题