我的MySQL数据库(Yii项目)中有Requests
表,其中包含对我网站主页的所有访问
fields: `id`, `partner_id` (relation to `Partners` table), `date`
带有当前时间戳的 date
。
和id
。
问题是Requests
表中有大约1.5百万行,当我尝试在某处公开这些数据时,它会显示性能不佳甚至标题错误。
例如,我有一个名为“所有请求”的合作伙伴和列列表,其中我正在查看partner_id
等于此合作伙伴ID的所有请求。对于每个合作伙伴,可能会有500或1000个请求,因此,我相信,我的SQL查询非常繁重。
请您就如何使其更灵活提出一些建议?
我仍然需要来自Requests
的这些数据用于商业计算,但我无法找到如何避免这些大量数据和糟糕的性能。
答案 0 :(得分:0)
不要同时执行请求500或1000。如果你这样做,它会给你错误或超时错误。
最好把一些逻辑(一种forloop或foreach)声明和发送请求一堆10-20(但不超过那个)。如果你遵循这个,那么它会给你正确的结果。
其次,我不知道你的前端,但假设你使用DotNet然后在你的方法中使用“async”“await”关键字进行调用,这很容易处理这类任务。
如果您需要更多详情,请恢复。