你能从事实 table 中提取维度 table 吗?

Can you extract a dimension table from a fact table?

情况是这样的,在源数据库中,我们有超过 600K 个维度的活动行,但实际上业务只使用了其中的 100 个。

遗憾的是,他们可能使用的值列表未知,我们无法手动过滤这些值来填充维度 table。

我在想,如果我在事实 table 中包含 table 的维度列,然后当我们将其发送到暂存区时,只需将其与事实分开并发送到它自己的 table.

这样,我将只捕获实际使用的值。

P.S。他们在应用程序中具有搜索功能,可帮助用户浏览 60 万个值。它不像下拉字段!

你有更好的推荐吗?

是的 - 您可以从事实暂存构建维度 table。需要考虑的几件事:

  1. 如果维度的唯一属性是事实暂存中的字段 table 那么您可以将其保留为事实中的退化维度 table;无需为其构建维度 table - 除非您有其他要求需要独立维度 table,例如您的 BI 工具需要它。
  2. 如果您需要在维度中包含其他属性,那么您仍然需要引入源维度 table - 但您可以使用事实暂存中的值过滤它 table 并且仅将使用的值加载到您的维度中