1

我有一个事实表,其中包括某些服务的“以小时为单位的等待时间”。我有很多维度可以描述基于不同切片的等待时间;但是,我也有兴趣了解有多少人(计数)通过相同维度的过滤器获得服务。

鉴于等待时间(以小时为单位)的维度和获得服务的人数完全相同,我认为将其保存在同一个事实表中是最佳实践。我的问题是:

  1. 提到的计数度量是否应该有不同的事实表?
  2. 我将如何包括这项措施?我只是在每一行中放 1 吗?因为不管等待时间长短,他们只获得了一次服务(在我的场景中,你不能高于/低于 1)。
4

1 回答 1

2

1)考虑现有事实表的粒度。听起来这可能是“一个人接受服务的场合”。如果这与您要计算的相同,那么是的-等待时间和计数是相同的。

然而,虽然它们很可能是相同的谷物,但可能不需要在表中添加任何东西。阅读第 2 点的解释。

2)您可以在每一行的列中添加 1,但我不确定您会从中获得什么。您还没有说哪些工具将使用这些数据,但您应该能够进行某种计数/不同的计数。

在您标记 SSIS 的基础上工作,因此很可能使用 Microsoft 的 BI 堆栈:

  • TSQL 有count(),而且你可以做到count(distinct [column])
  • SSAS 具有计数和非重复计数作为聚合类型。
  • MDX 提供了几种不同类型的计数。
  • SSRS 有 Count、CountDistinct 和 CountRows。

您是进行正常计数还是非重复计数取决于您是否尝试询问“有多少人使用此服务?” “有多少不同的人使用此服务?”

于 2015-05-24T18:23:36.033 回答