【问题标题】:What would be better, (1 database + 4 tables) or (2 databases + 2 tables each)?(1 个数据库 + 4 个表)或(2 个数据库 + 2 个表)哪个更好?
【发布时间】:2010-03-26 22:17:04
【问题描述】:

我想知道什么会更好(在性能方面)

A) 1 DATABASE 和 4 个表

或

B) 2 个数据库(同一服务器),每个数据库有 2 个表。

表的大小和用法或多或少相似,因此数据库 1 上的 2 个表与数据库 2 上的 2 个表的用法/大小相似

这些表可能有 +500,000 条记录,并且每个数据库上的 2 个表不相关(它们之间没有连接查询等)

提前感谢您的 cmets

【问题讨论】:

  • 可能值得注意的是,与某些表相比,每个表的 500k 记录并没有那么大,应该很容易管理。

标签: mysql database performance


【解决方案1】:

我希望性能没有差异。

【讨论】:

    【解决方案2】:

    性能方面,没有显着差异。从管理的角度考虑哪个更好(例如,它们是否共享访问控制规则)以及您是否拥有可以将它们结合在一起的硬件配置。共享管理是将它们放在一起的一个很好的理由,需要跨硬件拆分是分开的一个很好的理由。

    【讨论】:

      【解决方案3】:

      除了没有性能差异之外,我还会考虑将表移动到不同数据库或将所有表保存在同一个数据库中的数据备份策略。

      【讨论】:

        【解决方案4】:

        性能方面,没有区别。

        在维护方面,使用单一数据库选项会容易得多。一份维护计划,一份备份,一份备份文件。

        【讨论】:

          【解决方案5】:

          正如其他人在我之前所说的那样,性能方面没有区别,并且单个数据库更容易维护备份等。

          但是,如果您真的需要性能(即使 500k 记录对于 SQL Server 来说并不算多),您可以将表放在一个数据库中并将数据库拆分为不同的数据库文件(称为filegroups)。

          您可以将每个文件放在不同的驱动器上(这将提高性能),并且您可以决定将哪个表放在哪个文件中。

          所以这是一种“两全其美”:只需维护一个数据库,并且您可以提高性能。

          【讨论】:

          • 感谢您的想法。我忘了提,我使用的是 MySQL 而不是 SQL Server(不是我的选择)。你知道我是否可以在 MySQL 上执行“文件组”或类似操作吗?
          • 抱歉,不知道。我对MySQL没有太多经验。但同样,50 万条记录对于数据库来说并不算多,所以也许您不需要性能调整?
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-11-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-04-17
          相关资源
          最近更新 更多