事实表中的事实值或度量是啥意思?

Posted

技术标签:

【中文标题】事实表中的事实值或度量是啥意思?【英文标题】:What is meant by fact values or measure in fact table?事实表中的事实值或度量是什么意思? 【发布时间】:2019-10-27 22:50:50 【问题描述】:

我对事实值有很大的困惑,它是不是直接从 OLTP 通过 ETL 机制派生到事实表中,然后我们需要执行聚合函数以通过抛出查询来得到总结?还是我们从星型模式中的维度表中获得的只是汇总值,而不是直接从 OLTP 获得?

请参阅附件中的两个示例以获取更多详细信息。

在鲜明的 schema1 图像中,https://i.stack.imgur.com/Ibbg7.png 事实表显示两个事实或度量为“dollars_sold”和“unit_sold”这是从哪里来的? & 并没有用这个事实表进行汇总,但是通过应用聚合函数汇总日期可以获得。

在鲜明的 schema2 图像中,事实表显示一个事实或衡量为总销售额,但在这里我知道它来自 customer-trans-dia,它也是汇总数据。

那么请告诉我这两个例子中哪一个是正确的?

提前致谢。

【问题讨论】:

您好,很抱歉,但很难理解。您能否扩展并更清楚地列出您的问题? 感谢您的回复,在上述问题中,基本上我想知道汇总数据本身是否称为事实值或测量值,例如总销售额、总销量,或者它是我们执行的数据聚合以获取聚合数据? 太好了,我相信来自@APC 的文章是正确的。如果正如您评论的那样,这对您来说是一个很好的回应,请将其标记为已接受的答案。谢谢。 【参考方案1】:

是不是直接从OLTP通过ETL机制导出到事实表中

是的,这就是 FACT 表的通常含义:最低级别的操作数据项的表。

此类数据随后可能在数据集市中被处理成聚合或其他配置。但数据集市用户通常希望能够在必要时深入挖掘原始数据。否则他们怎么能对总金额有信心呢?

因此,您的第一个模式示例显示了一个真实的事实表,而您的第二个示例更像是一个数据集市。 (数据集市源自事实表,但通常不会立即公开原始数据,而是提供适合数据集市目的的处理版本。)

这是从哪里来的?

您的第一个示例架构显然是一个玩具模型,用于培训目的。在现实生活中,我们希望事实表具有元数据列,告诉我们数据来自何处以及何时加载到表中,除此之外可能还有很多其他内容。

【讨论】:

您好@APC 先生,非常感谢您回复我,我得到了答案。我是 SQL 的初学者,所以在学习时总是会遇到这类问题,我也想知道 ETL 项目是如何实时工作的。所以如果可能的话,你能在一周内随时给我至少 2 小时的宝贵时间吗?只要您在工作日或周末有空,对我来说都可以。这将真正帮助我解决我的疑问和疑问。 我在这里免费提供时间,但我收取咨询费——毕竟这是我的工作。恐怕我不想招收任何学徒,而且无论如何我认为你负担不起我的小时费 :)

以上是关于事实表中的事实值或度量是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop之数据仓库设计

Hadoop之数据仓库设计

为啥事实表中的维度成员集通常用作复合键?

数据仓库中的维表和事实表

Ssas 多维数据集向导不会为事实表列创建度量

星型模式 - 事实表中的属性