我知道在该主题中提出了类似的问题,但我仍然没有看到任何完全包含我所有请求的人。NoSQL或RDBMS用于审计数据
我会开始说我只有RDBMS的经验,所以我很抱歉,如果我得到关于NoSQL的任何错误。
我正在创建一个可以容纳大量审计日志(大约1TB)的数据库。
我使用它:
快速数据写入(审计日志的巨量写入所有的时间)
搜索 - 进行了审计数据搜索(搜索行动由某个用户在某个时间或某个动作...数据库应支持搜索任何'列'非常快)
分析&报告 - 生成每日,每周,每月报告数据(这些都在一瞬间预定义。如果他们更有活力,它影响的解决方案,我应该选择?)
可靠性,可扩展性(故障切换,或任何类似的功能支持)(如果我增长到1TB以上到2TB,10TB或100TB - 是否有任何解决方案不能支持这一数据量?),当然性能(在我指定的用例中)对我来说非常重要。
我知道RDBMS,这将是我开始的简单方法,但我真的担心,过了一段时间,数据库根本无法跟上节奏。
我的问题是我应该选择一个RDBMS或NoSQL解决方案,为什么?如果NoSQL解决方案因为它们如此不同,您认为哪些解决方案符合我的需求?
谢谢。我真正想要理解的一件事是让我们说我拥有1000万行NoSQL。我是否需要技巧和指数等来快速处理查询(秒)?由于我在该领域没有太多经验,我不确定MapReduce和其他NoSQL解决方案的速度规模如何。你能详细说明一下吗?我知道这是一个相当普遍的问题,但我一般都想了解NoSQL中的数量和查询速度......谢谢! – 2013-03-15 07:39:17
这将取决于您使用的解决方案。列存储方法很容易处理10M行,但大多数RDBMS也是如此。您从查询中获得的速度更多受数据类型,索引,查询方式以及整体IO /内存带宽的影响。有关RDBMS基准测试,请参阅http://www.networkworld.com/news/tech/2012/102212-nosql-263595.html和http://www.tpc.org – rlb 2013-03-15 09:53:21