存储统计数据的最佳数据库/存储是什么?

时间:2010-08-18 18:00:39

标签: nosql storage

我的系统可以从大约90-100个Web服务器收集实时Apache日志数据。我还定义了一些url模式。

现在我想构建另一个系统,根据这些日志更新每个模式的发生时间。

我曾考虑使用MySQL来存储统计数据,并按语句更新它们: “更新table设置count = count + 1 ...... ”,

但是我担心MySQL对来自这么多服务器的数据会很慢。此外,我正在寻找一些更具可扩展性和简单性的数据库/存储解决方案。 (作为RDBMS,MySQL支持太多我在这种情况下不需要的东西)。你有什么主意吗 ?

2 个答案:

答案 0 :(得分:1)

Apache Cassandra是一个高性能的列族商店,可以非常好地扩展。学习曲线有点陡峭,但处理大量数据时没有问题。

更简单的解决方案是键值存储,如Redis。它比Cassandra更容易理解。 Redis似乎只支持主从复制作为扩展方式,因此主服务器的写入性能可能成为瓶颈。 Riak具有分散的体系结构,没有任何中心节点。它没有单点故障也没有任何瓶颈,因此更容易扩展。

答案 1 :(得分:0)

键值存储似乎是我系统的合适解决方案。快速查看这些存储后,我对竞争条件问题感到担忧,因为会有很多客户试图在同一个密钥上执行这些步骤:

  1. count = storage.get(key)
  2. storage.set(键,计数+ 1)
  3. 之前我和Tokyo Cabinet合作过,他们有'addint'方法,与我的情况完美匹配,我想知道其他存储是否有类似功能?我没有选择东京内阁/暴君,因为我遇到了一些关于其可扩展性和数据稳定性的问题(例如修复损坏的数据......)