NOSQL数据库 - 日志处理/聚合和汇总的好候选人? [关闭
题
我有一个用于捕获带宽统计数据的MS SQL数据库。我们有一个原始数据表,并在不同的钻井水平上提高报告速度,我们每小时,每周和每周汇总和汇总数据以分开表。
NOSQL数据库(例如Mongo或Raven)是否会成为此类应用程序的好候选人?
解决方案
不同的NOSQL解决方案解决了不同用途的不同问题 - 因此,首先要做的就是查看您的问题并将其分解
- 你在写作 沉重 为了存放,写速度对您很重要
- 您想对该数据执行聚合操作,并具有易于查询的结果
- 从事物的声音来看,阅读速度并不重要,至少在“ Web应用程序必须对数百万人的响应中”
- 我不知道您是否需要动态查询
让我们以高水平的通用方式看沙发,蒙哥和乌鸦
掠夺
- 快速写作
- 快速查询(最终是一致的,预先计算的,通过MAP/RELAD的聚合)
- 可以进行动态查询,但并不真正适合您的用例,因为您很可能会按日期进行查询等
蒙哥
- 盲目的快速写入(在我看来,危险地说,因为断电意味着丢失数据;-))
- 缓慢读取(相对),通过MAP/RELAD聚集,未预先计算
- 动态查询只是what_you_do,但是如果您需要在此类数据上进行任何形式的性能,则可能必须在列上定义索引
长椅
- 快速写作
- 快速读取(预先计算,但仅在阅读时才更新(IIRC)
- 不可能动态查询,全部通过地图或映射/减少功能预先定义
因此,基本上 - 您是否需要此类数据的动态查询?阅读速度对您来说非常重要吗?如果您需要动态查询,那么您将需要Raven或Mongo(因为这种事情可能不是您要寻找的东西)。
我认为Mongo的唯一用例是伐木,因此您可能在那里有一个Anwer。
不隶属于 StackOverflow