gpt4 book ai didi

php - 某些账单详细信息页面的重度用户会出现延迟

转载 作者:行者123 更新时间:2023-11-29 14:58:13 25 4
gpt4 key购买 nike

我使用mysql + php开发了一个计费摘要页面。

  • 有很多用户:(1M)
  • 轻度用户:每条记录少于 10K:99 万用户
  • 重度用户:每条记录约1M条

SQL 如下:

SELECT SUM(value_a) A, SUM(value_b) B, SUM(value_c) C
FROM daily_data_sep_2010
WHERE user_id='<user_id>'
AND type
IN (
'type_a', 'typeb'
)
AND publish_date
BETWEEN '<start_date>'
AND '<end_date>'
GROUP BY publish_date
ORDER BY publish_date DESC

daily_data_sep_2010 表类型为 MyISAM

相同的查询有多种类型,但是 SUM(value_a) A、SUM(value_b) B、SUM(value_c) C 确实相同(相等)“WHERE”、“GROUP BY”条件不相同

这个屏幕对于重度用户来说非常慢。大家有什么好的解决办法吗?

解释在这里

|表|类型|possible_keys |key |key_len |ref |行|额外|

|daily_data_sep_2010|全部|主要,user_id_key,类型,发布日期|||| 1059756 |使用地点;使用临时的;使用文件排序|

我认为行大小对于总和来说太大了。所以我期待其他解决方案(Hadoop?)

最佳答案

如果您在(用户 ID,类型)上创建复合索引并执行以下操作,会有什么不同:

       where userid = ? and type in (a,b)
and publish_date between...
group by publish_date

关于php - 某些账单详细信息页面的重度用户会出现延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3973541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com