【发布时间】:2009-06-18 20:22:49
【问题描述】:
我有一个 Kimball 风格的 DW(星型模型中的事实和维度 - 没有迟到的事实行或列,除了作为类型 2 缓慢变化维度的一部分过期外,没有列的维度发生变化),每天需要处理繁重的插入和更新行(在新日期)以及每月和每日报告流程。事实表按日期分区,以便于旧数据的滚动。
我了解WITH(NOLOCK) 可能会导致读取未提交的数据,但是,我也不希望创建任何会导致 ETL 进程失败或阻塞的锁。
在所有情况下,当我们从 DW 中读取数据时,我们正在从事实表中读取一个不会改变的日期(事实表按日期分区)和维度表,这些数据表的属性不会因为它们的事实而改变链接到。
那么 - 有什么缺点吗? - 可能在执行计划中或在此类SELECT 的操作中-仅在同一张表上并行运行的查询。
【问题讨论】:
标签: sql-server sql-server-2005 data-warehouse nolock