我已经处理过几个rails应用程序,现在我从数据库端开始处理一个非常复杂的应用程序。很多嵌套模型,几个多态关联......
你如何应对这种复杂性?我怎么知道我们正朝着这个好方向努力?性能问题怎么样?
Thansk的意见。
答案 0 :(得分:0)
首先,您需要估计应用程序针对数据库运行的查询的性能。然后,您可以尝试优化查询,例如,通过添加一些索引。在某些情况下,您可能还需要考虑对某些数据进行非规范化以获得更好的性能。
查询的性能也可能取决于您的数据大小。如果您拥有非常大的数据集并且查询是最佳的,那么您可以考虑引入(分布式)缓存。或者,如果数据模型允许考虑在多个节点上对数据库进行分区以提高查询性能。
但第一步仍然是设置一些SQL查询性能监控。
答案 1 :(得分:-3)
您应该考虑使用MongoDB或CouchDB等NOSQL解决方案。有时,RDBMS不适合这项工作。