Ard*_*oli 3 ssis etl data-warehouse sql-server-2012
我SQL Server 2012
用于OLTP
数据库并在中创建了一个数据仓库SQL Server 2012
.
我设计Facts
和Dimensions
内部Data Warehouse
有几个视图.
我的一些Fact表是通过在我的视图中加入几个表来完成的.
我使用CDC
(更改数据捕获)来注意任何OLTP
更改并将这些更改保存在a中Stage Database
,最后我必须根据上面保存的更改来更新数据仓库.
问题是如何根据CDC保存的更改来检测我的数据仓库中哪些记录需要更新?
有关更多说明:
我有SalesFact
我Data Warehouse
有一个View
像这样的
Select
Sum(T1.X),
Sum(T2.Y),
Sum(T3.Z),
Sum(T4.W)
From T1
Left join T2 On (....)
Left join T3 On (....)
Left join T4 On (....)
Group By T1.X,T2.Y,T3.Z,T4.W
Run Code Online (Sandbox Code Playgroud)
另外我有4个CDC Tables
保存OLTP更改为:
Create Table T1Change()
Create Table T2Change()
Create Table T3Change()
Create Table T4Change()
Run Code Online (Sandbox Code Playgroud)
那么,如何Data Warehouse
根据这些变化找到哪些记录必须更新?
我现在从您的进一步评论中了解到,您的密钥是由更改的列组成的,并且您没有持久密钥.我不知道在这种情况下如何确定"变化".
我会放弃整个CDC设计,每次都截断并完全刷新目标表.
归档时间: |
|
查看次数: |
444 次 |
最近记录: |