6

我目前有几个审核特定表数据的审核表。

例如 ATAB_AUDIT、BTAB_AUDIT 和 CTAB_AUDIT 审计分别从 ATAB、BTAB 和 CTAB 插入、更新和删除。

这些审计表按年份分区。

由于这些审计表中的列是相同的(change_date、old_value、new_value 等),使用一个大型审计表是否有益,添加一列包含生成审计记录的表的名称(table_name),按 table_name 对其进行分区然后按年分区?

该数据库是 Solaris 上的 Oracle 11g。

为什么或为什么不这样做?

提前谢谢了。

4

1 回答 1

4

我猜想这两种方法的性能特征都会非常相似。我将仅根据您决定如何对数据建模来做出此决定;这就是您的应用程序希望与数据库交互的方式。我不认为你的分区策略会影响这个决定(至少在这个例子中)。

这两种方法都是有效的,但有时人们会被单表方法迷住,最终将所有数据放在一个大表中。这种(反)模式有一个名字,但它让我忘记了。

于 2011-07-15T13:59:02.250 回答