所以我有一个带有一堆谷歌地图标记的数据库,我让用户能够“跟踪”标记。此“跟随”信息存储在单独的关系数据库中。
当我加载我的地图和所有相关标记时,我希望每个标记显示一个信息窗口(我怀疑你们都知道这是什么样子)显示有多少人在跟踪标记。即“23人正在关注此标记”
这个问题似乎是,如果我在加载标记时计算关系数据库的“关注者”,这可能会非常慢,给定1000多个标记。相反,我正在考虑制作一个标记计数器并将其包含在原始标记数据库中,因此我只需要查询一个数据库。
从未制作过这样的计数器(并没有在网上找到很多细节),我想知道是否有任何陷阱我应该注意到?我可以看到用户删除帐户时出现的问题,因为我必须根据这一点更新计数器(并非不可能,只是一种痛苦),但如果我允许用户添加他们的帐户(如用脸书或其他东西)。
该计数器是否有任何方法可以定期计算关系数据库条目,因此我不必更新计数器?
从一个菜鸟,真诚的感谢任何帮助!非常感谢。答案 0 :(得分:0)
数据库非常适合快速计算!建议的方法是不将计算值存储在操作数据库中。首先尝试这种方式,测量性能,如果它是应用程序中最慢的部分,并且与此相关的成本很高,则开始存储计数。
如果您需要存储计数,请考虑在Web服务器上使用缓存,或物化视图并根据需要重新生成计数。