如果我有两套系统使用的数据库表
对于这个问题,让我们假设表的集合是互斥的(也许有一些过程,将数据从第一个集合周期性地迁移到第二集合)。
我会看到以下两个设置之间的性能差异
我会说一个单一的数据库。 您希望表的集合在备份/恢复状态,用户访问安全性,可用性等方面保持同步。 单独的表格还会增加镜像和日志传送解决scheme的问题。
因为您期望这种不同的I / O访问模式,所以您应该将表放在不同的文件组上。 然后,您可以将每个文件组部署到适合您的I / O模式的正确磁盘上。
在同一个数据库中同时使用两组表,一些争用点是共享的,如日志写入。 但是这不是你所描述的情况,因为只有应用程序的OLTP部分关心日志。
是。 您需要选项B,以便操作系统引用2个不同的磁盘文件。 一个DB可以优化写入,另一个可以读取。
或者,如果将表分割成单独的文件组/单独文件,则可以在单个数据库中完成相同的操作。
我会看到以下两个设置之间的性能差异
* The two sets of tables are in one DB * The two sets of tables are in two separate DBs on the same SQL服务器
否 – 除非将数据库分离到不同的硬盘上(即使我们没有其他信息,是否会影响性能也是值得商榷的)。
因此,从您的心理清单中删除您在本devise中应该考虑的内容。 这意味着问题是一个领域 – “我应该把它们放在同一个数据库还是不同的数据库”应该取决于它们的相关性。
如果我有两套系统使用的数据库表
* Tables that collect results of some data processing. Most of the time获得大量的INSERT操作。 * Web应用程序用于生成页面和报告的表格
对于这个问题,让我们假设表的集合是互斥的(也许有一些过程,将数据从第一个集合周期性地迁移到第二集合)。
我不明白你的意思是“这些表格是相互排斥的”。 从描述来看,这些表似乎是相关的(并且通过“相关”,我的意思是它们应该在同一个数据库中组合在一起),因为它们可能会周期性地在它们之间迁移数据。 因此,我认为你可能需要一个数据库。