SQL 数据仓库中的单个记录维度,似乎不合适,我还能如何满足这些需求?
Single Record Dimensions in SQL Data Warehouse, seems improper, how else can I provide for these needs?
业务需要一些单一的价值维度:
DIM_BuildDate - store datetime of the DW build, with latest inventory date
DIM_CurrentAccountingPeriod - what is the accounting period now (at build date)
DIM_CurrentExchangeRate - what is the currency exchange rate now
也许它们可以全部归入一个维度,每个值都有属性,但这不是我关心的。
这似乎是错误的。这些值每天或定期变化,使它们充其量只能缓慢改变维度。但是,使用 DW 存储这些值确实有用。
- 如果事务作业失败,DW 构建可能有库存
两天前的数据,这很重要。所以我将它存储在
DIM_BuildDate.
- 通常,日历日期与会计日期不匹配
期间,尤其是接近月份的开始和结束时。所以我
将其存储为 DIM_CurrentAccountingPeriod.
- 有一个 FACT_ExchangeRate 存储汇率值
时间,但业务人员想要一种简单的方法来访问“当前
汇率。
我想要实用,并提供诸如此类的有用对象,但我怀疑这些尺寸不符合正确的 Kimball 实现。
在 DW 中提供这些要求的另一种方法是什么?
为每个指标创建单个记录的维度肯定是错误的 - 您的星型模式会膨胀。
需要添加构建日期,没有办法绕过它(这是您的星型模式中没有的独特数据)。
当前汇率可以作为计算的 DAX 度量轻松添加到您的表格模型中(只是 select 汇率,其中日期 = 构建日期)。无需将其存储在单独的维度中。作为一种衡量标准,它在计算中使用起来会容易得多。
会计日期可以建模为单独的(会计)日历 table,或者您可以简单地将会计日期作为属性添加到您的日历 table(即 "Fiscal Date", "Fiscal Year",等等)。
同样,您可以在日历 table 中标记 "current" 期间(即添加字段 "Period Type",值为 "Current Period"、"Past Period"( "Future Period" 如果你需要的话))。它可以用作切片器或 DAX 过滤器。这同样适用于 "current" 财政周期 - 它只是日历 table 中的另一个属性。
业务需要一些单一的价值维度:
DIM_BuildDate - store datetime of the DW build, with latest inventory date
DIM_CurrentAccountingPeriod - what is the accounting period now (at build date)
DIM_CurrentExchangeRate - what is the currency exchange rate now
也许它们可以全部归入一个维度,每个值都有属性,但这不是我关心的。
这似乎是错误的。这些值每天或定期变化,使它们充其量只能缓慢改变维度。但是,使用 DW 存储这些值确实有用。
- 如果事务作业失败,DW 构建可能有库存 两天前的数据,这很重要。所以我将它存储在 DIM_BuildDate.
- 通常,日历日期与会计日期不匹配 期间,尤其是接近月份的开始和结束时。所以我 将其存储为 DIM_CurrentAccountingPeriod.
- 有一个 FACT_ExchangeRate 存储汇率值 时间,但业务人员想要一种简单的方法来访问“当前 汇率。
我想要实用,并提供诸如此类的有用对象,但我怀疑这些尺寸不符合正确的 Kimball 实现。
在 DW 中提供这些要求的另一种方法是什么?
为每个指标创建单个记录的维度肯定是错误的 - 您的星型模式会膨胀。
需要添加构建日期,没有办法绕过它(这是您的星型模式中没有的独特数据)。
当前汇率可以作为计算的 DAX 度量轻松添加到您的表格模型中(只是 select 汇率,其中日期 = 构建日期)。无需将其存储在单独的维度中。作为一种衡量标准,它在计算中使用起来会容易得多。
会计日期可以建模为单独的(会计)日历 table,或者您可以简单地将会计日期作为属性添加到您的日历 table(即 "Fiscal Date", "Fiscal Year",等等)。
同样,您可以在日历 table 中标记 "current" 期间(即添加字段 "Period Type",值为 "Current Period"、"Past Period"( "Future Period" 如果你需要的话))。它可以用作切片器或 DAX 过滤器。这同样适用于 "current" 财政周期 - 它只是日历 table 中的另一个属性。