我有成千上万的表,基本上是这样命名的:
Table_key1_key2_key3
结构如下:
ID
TextColumn
text列上有全文索引,每个表都有自己的全文目录。
当用户传入一堆 (key1,key2,key3) 元组和搜索文本时,我有一个为这些表生成查询的存储过程。我启动了一堆异步查询,它们搜索TextColumn
s 并将结果写入表。一旦他们都完成了,我会选择前 1000 个匹配结果。(我还添加了代码,每次完成 100 次时,我都会检查结果表,如果结果超过 1000 个,我会返回)
这样做的问题是它仍然太慢,特别是当匹配很少甚至没有时......)。我们有很多很多行,用户通常会选择大约 5,000 个 (key1,key2,key3) 元组进行搜索。有什么好方法可以让我进一步加快速度吗?我可以完全访问整个表结构等。