【发布时间】:2010-04-24 08:53:14
【问题描述】:
我有一个用于安排某些活动的应用程序。并且所有这些事件都必须在每个预定时间之后进行审查。
所以基本上我们有 3 个表:
- 项目(ID、名称)
-
scheduled_items(
id,item_id,execute_at- datetime) - item_id 列有一个索引选项。 -
reviewed_items(
id,item_id,created_at- datetime) - item_id 列有一个索引选项。
所以应用程序的核心功能是“给我任何项目(尚未审查)的实际时刻”。
我怎样才能优化这个解决方案速度(因为它是非常核心的业务功能,而不是微优化)?
我认为向日期时间字段添加索引没有任何意义,因为该字段的基数或唯一性非常高,并且索引不会提供任何(?)加速。对吗?
你会推荐什么?我应该尝试 no-SQL 吗?
--
mysql -V
5.075
我在有意义的地方使用缓存(memcached)。
更新了。
【问题讨论】:
-
您使用哪种缓存,memcached 还是反向代理?
-
高基数意味着数据非常有选择性,索引肯定会有所帮助。它是不会使用的低基数列。
标签: sql mysql query-optimization nosql