日期:2014-05-17  浏览次数:20641 次

求大侠指教,大数据量的搜索如何做。大概有百十万的数据
求各种解决方法。关键是数据准确,速度快。现在用的是like搜索。速度很悲催。求救

------解决方案--------------------
学习中
------解决方案--------------------
建索引 优化sql 不行可以考虑lucene http://blog.csdn.net/ajun_studio/article/details/6648870
------解决方案--------------------
对常见的DB来说,百万不算什么大数据量。
是不是你查询条件过于复杂啊?
------解决方案--------------------
围观。。。围观
------解决方案--------------------
探讨

是的哦,数据比较分散,有五张表四次left join。结构有点杯具,所以速度不堪设想。

------解决方案--------------------
索引+缓存对于这种数据量庞大的项目这两个必用!
------解决方案--------------------
探讨

OK 如果用lucene 做搜索引擎。数据的准确性如何保证呢??据我所知不论是lucene自带的分词器还是用谷歌的分词器又或是中科院的分词器。都达不到很好的效果。还有一个很悲催的问题就是即时性。小索引的生成不能够频繁的生成。否则锁得问题都解决不了。并且改变了索引之后还要去维护lucene的searchreader对象。求如何达到即时,准确的搜索。

------解决方案--------------------
当你用like的时候,是用不了索引的,所以只要你用like,就无法优化,
可以用solr或lucene可以建立小索引,当你只把ID和你要like的字段索引就行了,当有写操作的时候更新索引就完了啊