存储聚合值的最佳方式



我们需要存储不同帐户的聚合值,这些帐户按月/年汇总各种数字。每次更新数据时,这些数字都会更新(通常每 24 小时更新一次或两次)。

我希望数据是 PIVOT 函数的结果,例如:

Year    Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2011    0   0   0   0   0   0   95  33  34  24  36  52

每个帐户都需要不同的聚合,例如"客户计数"、"订单计数"和"销售价值",我不确定是否最好向数据添加键或使用单独的表格,例如:

Year    Key        Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2011    CntOrders  0   0   0   0   0   0   95  33  34  24  36  52
2011    CntCust    0   0   0   0   0   0   95  33  34  24  36  52
2011    ValOrders  0   0   0   0   0   0   95  33  34  24  36  52

或德博。订单计数

Year    Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2011    0   0   0   0   0   0   95  33  34  24  36  52

德博。订单价值

Year    Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2011    0   0   0   0   0   0   95  33  34  24  36  52

我已经阅读了许多建议NoSQL和SQL Server的文章,所以我不确定我们应该走哪条路或如何决定。

我们

目前无法证明专用多维数据集的合理性,但我想知道将值存储在NoSQL数据库中是否更好,或者我们是否应该坚持使用SQL Server?

我会坚持使用SQL。但是,如果您担心重建此类数据透视表的时间,请不要这样做,因为您不必构建具有唯一"键"的表。

使用键 + 处理日期时间构建它,并将其附加到主透视。因此,在创建增量期间,它将受到您的交易时间戳(开始和结束)的限制。应该有很多臃肿。如果有,您可以在周末作业中折叠流程日期。

设置作业以运行将数据插入表中的存储过程。

存储帐户,年,月,值等数据

使用这些表的视图报告多个聚合。

一定要坚持使用SQL。没有理由为如此简单的任务增加技术开销。

相关内容

  • 没有找到相关文章

最新更新