1

我们有一个数据库来存储点击次数、查看次数和达到的目标。正如您可以猜到的那样,数据库中的点击量达到了数百万,因此我们开始汇总数据以获得更快的统计数据。此时我们删除所有记录并在聚合表中写入新记录(您可以正确猜到您的 mysql 键正在迅速增加),但这是聚合我们的统计数据而不会出现任何错误的最简单方法。

我在互联网上搜索了数据库聚合。就像如何存储/非规范化数据一样,您可以快速选择正确的数据,而无需尊重多个表。但我没有找到答案。

我还猜测 mysql 不是存储聚合数据的正确数据库,因为聚合数据会快速增长并且可以从头到尾选择(比如选择一整年的统计数据)。我的结论对吗?如果是这样,你会推荐我什么数据库?

我也考虑将数据拆分到多个表中以获得多种解决方案,但我不确定这是否明智。

我的问题是:

  • 您使用什么聚合技术来保持聚合表正确?
  • 什么数据库最适合存储聚合?
  • 我应该在多个表上拆分聚合吗?还是我应该制作一个可以处理多种类型数据请求的通用表?
  • 你如何处理速度问题?
  • 数据聚合有不同的名称吗?

我很抱歉这个冗长的问题:)。我搜索了 SO 和互联网,并没有找到关于这些问题的任何好的答案。

4

1 回答 1

-1

什么数据库最适合存储聚合?

如果我理解你对“聚合”的定义,我会说你正在删除所有关系的东西,所以你的目标可能是一些 noSQL 解决方案。

我应该在多个表上拆分聚合吗?或者我应该制作一个可以>处理多种类型的数据请求的通用表?

不能说,看你想要什么。您正在做的是去规范化,以便您可以更快地获取数据。但是如果你去规范化太多,你就找不到正确的数据。因此,对于每种情况,它确实是不同的。

你如何处理速度问题?

再一次,不可能说。大致:找出导致它们的原因,并解决问题。

数据聚合有不同的名称吗?

看起来您正在构建某种“数据仓库”?有关更多信息,请参阅随机互联网(例如http://en.wikipedia.org/wiki/Data_warehouse)。

于 2012-09-20T09:46:06.787 回答