1

我有以下情况:

2个数据库服务器(相互链接)

DB1 有一个(大)表,其中包含事务记录 DB2 有一个(还没有那么大)表,其中包含事务记录(性质相似但没有一些数据,因为它是一个不同的系统)从 DB1 中的事务表中记录出来,并将它们与 DB1 中的许多表连接起来。

我可以使用 DB1 中的数据使 DB2 中的数据看起来像 DB1 中的数据。

如果我在 DB1 中创建一个视图,该视图从 DB2 中提取事务数据并将其与来自 DB1 的数据连接起来,以具有与 DB1 中的事务数据相同的列,然后创建另一个视图,将 DB1 中的所有数据和第一个数据合并视图,针对第二个视图的查询是否仍会利用 DB1 和 DB2 中事务数据的任何索引?

或者有没有更好的方法将数据从新系统改造到旧系统,以便旧报告可以报告新数据?

4

1 回答 1

0

在不了解有关您的设置的更多详细信息的情况下,我认为您的偏好应该是将两个系统的数据保留在适当的位置,而不管通过链接服务器的查询是否最终使用索引。在这种情况下,您设置事物的方式听起来很合理。但是,我认为既然您知道您需要组合这两个数据集,我会考虑将数据从一台服务器迁移到另一台服务器,前提是一台服务器可以处理两个事务负载。我认为这应该为您的查询提供更好的整体性能。不过,这在很大程度上取决于您的服务器和网络基础设施是什么样的。

于 2011-05-16T19:26:19.643 回答