我正在尝试为以下问题找到最佳解决方案:需要设计一个数据库(基于postgres),其中包含触发器和计数器系统,这将形成一个有效查询,更新和存储信息的系统. '页面上显示的每篇文章(或博客条目,或类似的)中有多少未读评论.
无论是在查询,还是存储或更新部分,每个解决方案都有一些严重的缺点.即它需要太多的存储空间,或者太多的更新,或太多的数据库查询.
你的经历怎么样?也许这种问题已经形成了一个很好的解决方案?
我会尽可能简化架构,因此查询将尽可能简单.这通常也具有最低的存储要求.当然,设置索引以支持此查询.
下一步:衡量绩效!"衡量就是知道." 什么是响应时间?服务器上的负载是多少?只要性能可以接受,就要保持架构和查询的简单性.如果不是绝对必要,不要牺牲可维护性:您的继任者将在以后感谢您.
如果性能确实存在问题,请查看您为应用程序使用的框架的缓存功能.不执行查询总是比执行优化查询更快.