有什么技术可以提高关键字查询速度和提升性能?

2016-06-18 08:45:13 +08:00
 dbfox
[news]
id
keywords
title
content

....

keywords 是关键字字段 格式是

|关键字 1|关键字 2|关键字 3|关键字 4|


查询语句是

select top 10 id,title from news
where
charindex('关键字 1',keywords)>0 or
charindex('关键字 2',keywords)>0

当数据量和访问量大了以后 百万数据 百万 pv 的时候
数据库就吃不消了,用什么办法可以解决呢?
我尝试过 lucene 但是查询结果不太精准(对 lucene 太欠缺)
1984 次点击
所在节点    问与答
6 条回复
twtiyb
2016-06-18 08:51:07 +08:00
lucene 太底层了。
你可以用基于它封装的 elasticsearch 或者 solr.
JiShuTui
2016-06-18 09:07:38 +08:00
把关键字换一种存法
alexapollo
2016-06-18 09:37:58 +08:00
redis
sen506
2016-06-18 10:49:53 +08:00
多一个表存关键词
notgod
2016-06-18 11:33:20 +08:00
elasticsearch +1
全文检索那个更适合你 xunsearch
dbfox
2016-06-18 11:33:34 +08:00
@twtiyb
感觉这方案可行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/286623

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX