我有一个应用程序将隔离(和分片)用户数据存储在具有相同表结构(3 个 InnoDB 表)的单独 MySQL 模式(又名数据库)中,每个帐户一个。我们使用 Amazon RDS 存储数据,目前每个 RDS 实例大约有 30k 模式。我的问题是关于如何为大量模式优化 MySQL 设置(或就 RDS 而言,参数组设置)。
我知道有一种反射来谴责拥有数千个相同模式的做法,而是建议存在一个具有索引“account_id”列之类的单一模式。通常给出的论点是分片遍历或模式更改的惩罚大于好处。在我们的案例中,我们需要保持数据隔离,并且不同账户之间永远不会有任何交互。
在这种情况下,有哪些方法可以最大限度地提高性能?