我有一个包含5000万条记录,但结构紧凑(id,int1,int1,int2,int3)的表。所有相关指标均已实施。反复查询大表的最快方法
我需要为每个用户交互查询约50次。这大约需要5秒钟,对数据库服务器使用常规准备好的查询。所有的查询都是简单的选择。
我的问题是:我能做些什么来加速这个,甚至花费更多的内存?查询的查找方法不够灵活,直接在查询中使用过滤器速度很慢。
我正在主查询是
select knowledge_id, knowledge_family_id, tag_level, tag_order,
total_title_direct_words, total_title_parenthesis_words from knowledge_tags
where dictionary_word_id = XX order by tag_level, tag_order
任何人都可以提出一个策略? TVirtualTable会提高速度吗?
要回答这个问题,我们需要有关性质的更多信息这50个查询中。他们都是单行SELECTs?你可以将一些查询组合成更大,更复杂的查询吗? –
对不起。所有查询都是简单的选择。随着每个查询的结果我建立一个TDictionary添加结果。我不认为有一种方法可以将它分组为更少的查询。 –
'所有查询都是简单的选择'没有限制像'where ID in'或其他? – bummi