Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 Oracle EDW 中的事实表上保留复合唯一索引是否是一种最佳实践 - 避免重复的数据集市?它会影响 ETL 数据加载性能吗?请提供您对此主题的看法。获得 ETL 负载的 SLA 的其他替代方法是什么?
每次插入到具有索引的表中都会导致该索引被更新,从而导致 IO 并减慢它的速度。因此,无论是否唯一加载到具有索引的表中都会慢一些。您可以删除该索引,加载然后再次创建它。它将减少索引碎片,并且通常在大负载下会更快。
我很惊讶在事实表上看到唯一索引。通常那里不需要那么多唯一性,并且通常数据仓库会非规范化和复制数据。
这一切都取决于你的情况。如果您可以使用 ETL 来避免不希望的重复,请不要使用索引。如果唯一目的是数据完整性/一致性,请不要创建此索引。索引变得很大,因此它们更好地对您的查询有用。