为了给我们提供更多可扩展性,我们计划将一个庞大的MySql数据库(包含大约50个表)分成不同服务器上的多个数据库。我们正在使用Rails 3.
显然,我们希望避免需要从位于不同服务器上的表进行连接,但这有时是不可避免的。
为了帮助我们找出将数据库划分为第8种方式(分为3个新数据库/服务器或12个?),我们想了解当我们访问需要在它们之间加入的信息时,我们将遇到的性能问题(或不存在)
您对此有何体验?任何经验法则?任何宝石或工具?有什么警告和警告吗?缓存怎么样?备份,可靠性怎么样?
感谢您的见解!
答案 0 :(得分:0)
我没有听说过在Rails中跨越不同物理数据库服务器连接表的任何自动方法。我想你需要在代码中执行手动连接,这将比数据库内连接慢得多。
您可能需要考虑的一个选项是在MySQL中使用FEDERATED引擎:https://dev.mysql.com/doc/refman/5.5/en/federated-storage-engine.html