【发布时间】:2013-09-16 19:42:41
【问题描述】:
在源关系数据库中,有一个名为 CompanySurety 的表,其 INT IDENTITY PK SuretyId 具有指向父 SuretyId 行的自引用 ExtendsSuretyId FK 列。
将这些数据引入星型模式模型,我设计了 CompanySurety 事实表(到目前为止)如下:
CREATE TABLE fact_company_surety
(
SuretyCompanyDimId INT NOT NULL,
SuretyCoversCompanyAccountDimId INT NOT NULL,
SuretyReplenishPaymentCompanyAccountDimId INT NOT NULL,
-- ExtendsSuretyId -- TODO: ?????
SuretyAmountChangeDateDimId int NOT NULL,
SuretyEffectiveFromDateDimId int NOT NULL,
SuretyEffectiveThruDateDimId int NOT NULL,
SuretyExcludeCalcDateDimId int NOT NULL,
SuretyHoldingCompanyDimId INT NOT NULL,
SuretyLastRRQDateDimId int NOT NULL,
SuretyMethodDimId INT NOT NULL,
SuretyReplenishmentTypeDimId INT NOT NULL,
SuretyTypeDimId INT NOT NULL,
SuretyAccountNumberDD nvarchar(100) NOT NULL,
SuretyAmount money NULL,
SuretyBalance money NULL,
SuretyDeletedFlag bit NOT NULL,
SuretyOverrideThresholdPercent decimal(5, 2) NULL
);
问题是,我如何以适当的维度方式对这种父子关系建模(实际上,如何在维度模型中对任何父子层次结构进行建模)?
我考虑过复制所有维度和事实列来表示父事实(因为目前,层次结构只有一层深)。但这对我来说似乎是错误的。
【问题讨论】:
-
总是必须在Dimension表中完成父子关系,只需使用Adwenture的示例数据库并查看Dimensions...按国家/地区有Customer维度-> City等....跨度>
标签: sql-server star-schema dimensional-modeling