让我们以人力资源数据库为例。人力资源人员日常使用的事务数据库处理每天发生的所有招聘和解雇。还有一个从该事务数据库中提取的维度数据仓库。
假设延迟足够低,以下哪个论点将被视为“最佳实践”?
1)事务数据库应该只需要跟踪该数据当前的状态。它不应该跟踪缓慢变化的数据(例如,特定员工曾担任过哪些经理的历史,他的薪水如何随着时间的推移而变化,等等)。ETL 过程应该检测过渡数据库中的变化,并更新数据仓库中缓慢变化的维度。
2)事务数据库不仅能够跟踪它自己的历史信息。如果某些东西在 ETL 会话之间发生了两次更改,那么您将永远失去第一次更改。Dimensional 数据库的主要目的是提高报表中的查询性能,因此它仍在发挥作用。这也使 ETL 过程更快、更简单。
我觉得这两个论点都有优点,如果它们都是有效的论点,我很乐意在它们之间进行选择。
我错过了一些没有被考虑的东西吗?
其中一个论点是完全错误的吗?