如果ETL进程在刷新临时数据库之前开始访问临时数据库,则可能会出现问题。什么是防止这种情况发生的最佳做法?我目前看到这两个选项:
(1)在暂存刷新完成之前,切勿运行ETL过程
(2)有两个在刷新周期之间交换的临时数据库。
答案 0 :(得分:1)
我们使用方法#1。
我们将登录数据库刷新的SSIS包的执行开始记录到表中,并将完成或错误记录到同一行中的单独列。
我们的ETL流程会检查该表中的最新行,以确定暂存刷新当前是否正在运行,以及暂存数据的持续时间。
如果数据太陈旧,ETL软件包可以在必要时通过调用其他软件包来强制刷新。