`
imjl
  • 浏览: 156231 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

30分钟搭建一个百万全文搜索

阅读更多

公司重心转移,不再是搜索。所以比较有空写写博。

 

solr是lucene的企业级扩展,很好很强大。solr的性能 http://wiki.apache.org/solr/SolrPerformanceData, 现在使用solr的网站 http://wiki.apache.org/solr/PublicServers

 

我习惯使用tomcat,安装参考:http://wiki.apache.org/solr/SolrTomcat,当然你也可以使用其他Contains来安装。(现在的wiki真详细,以前都靠自己摸索) 如果安装成功,浏览器地址栏输入: http://localhost:8080/solr/admin/, 看到管理界面,那么继续。

 

找个支持lucene的中文analyzer,,比如lucene自带的cjk,修改solr的schema.xml中的 field,比如德国的(记得把注释去掉) 你可以参考修改成 然后在搜索filed,改成自己的field,比如全文检索简单的是id, title, body 比如我将原来的 修改成 保存好,重新启动tomcat,输入 http://localhost:8080/solr/admin/analysis.jsp?name=title&verbose=on&highlight=on&val=aa&qval= 如果一切正常,那么你就能看到title给cjk分词的处理效果。

 

使用solr非常简单,从数据库取出数据, 包个含程序字段有id, title, body的xml扔给solr做索引。参考:http://wiki.apache.org/solr/UpdateXmlMessages。除了xml还有csv格式数据做索引,参考:http://wiki.apache.org/solr/UpdateCSV 索引完了,我们用用看。

 

比如我要搜索关键词:测试中文,搜索字段是title,跑到地址栏输入 http://localhost:8080/solr/select?indent=on&version=2.2&q=%E6%B5%8B%E8%AF%95%E4%B8%AD%E6%96%87&start=0&rows=10&fl=*%2Cscore&qt=title&wt=standard&explainOther=&hl.fl= 根据自己情况输入关键词和字段,如果得到你要的结果,那么恭喜你,你能搭建一个百万搜索了。

 

百万搜索真的这么简单么?没啦,不同业务不一样,复杂的很复杂。

 

大家看下教程 http://lucene.apache.org/solr/tutorial.html,wiki: http://wiki.apache.org/solr solr

 

现在的release版本是1.2, 1.3还在开发中,现在还有少量bug还没解决,估计快要release了,如果不急于production的,先用1.2熟悉,用1.3上production。如果大家急着用solr的svn版本,其lucene是最新版本。

 

 

分享到:
评论
8 楼 niule 2008-10-23  
你好,我是按照步骤来部署的,不过是用的jeasy的分词,应该差不多了。
在analyze里已经可以分词了,但是在query的时候,还是没有分词,

比如索引里有“中文分词终于”这句,我查询“中文终于”的时候,在query中是没有分词,得不到结果
请问是哪里没有配置正确呢,谢了
7 楼 jfxia 2008-03-16  
Compass其实就是在Lucene外面包了一层持久化的壳
6 楼 imjl 2008-03-13  
引用

fengzl 1 天前
主要是索引在什么时候创建?
是不是支持事务?
索引的修改是在什么时候,
我记得compass是在DAO操作数据库的时候干这些事情的


你什么时候做索引就什么时候创建索引。
不支持事务。
所有lucene的索引都遵循一个规则,没有什么修改概念,所谓的修改在lucene就是删掉旧的追加新的。

我不知道compass干嘛的,如果它是基于lucene,那么所谓包含事务,那我可以肯定的告诉你事务是在compass这层完成的,而不是在lucene这块完成。

我猜想数据操作流程:数据-》compass-》lucene,,


5 楼 fengzl 2008-03-12  
主要是索引在什么时候创建?
是不是支持事务?
索引的修改是在什么时候,
我记得compass是在DAO操作数据库的时候干这些事情的
4 楼 chenjinlai 2008-03-12  
恩,solr真是特别方便
3 楼 wangfengmadking 2008-03-12  
<div class='quote_title'>imjl 写道</div><div class='quote_div'><p>公司重心转移,不再是搜索。所以比较有空写写博。 </p><p> </p><p>solr是lucene的企业级扩展,很好很强大。solr的性能 http://wiki.apache.org/solr/SolrPerformanceData, 现在使用solr的网站 http://wiki.apache.org/solr/PublicServers </p><p> </p><p>我习惯使用tomcat,安装参考:http://wiki.apache.org/solr/SolrTomcat,当然你也可以使用其他Contains来安装。(现在的wiki真详细,以前都靠自己摸索) 如果安装成功,浏览器地址栏输入: http://localhost:8080/solr/admin/, 看到管理界面,那么继续。</p><p> </p><p>找个支持lucene的中文analyzer,,比如lucene自带的cjk,修改solr的schema.xml中的 field,比如德国的(记得把注释去掉) 你可以参考修改成 然后在搜索filed,改成自己的field,比如全文检索简单的是id, title, body 比如我将原来的 修改成 保存好,重新启动tomcat,输入 http://localhost:8080/solr/admin/analysis.jsp?name=title&amp;verbose=on&amp;highlight=on&amp;val=aa&amp;qval= 如果一切正常,那么你就能看到title给cjk分词的处理效果。</p><p> </p><p>使用solr非常简单,从数据库取出数据, 包个含程序字段有id, title, body的xml扔给solr做索引。参考:http://wiki.apache.org/solr/UpdateXmlMessages。除了xml还有csv格式数据做索引,参考:http://wiki.apache.org/solr/UpdateCSV 索引完了,我们用用看。</p><p> </p><p>比如我要搜索关键词:测试中文,搜索字段是title,跑到地址栏输入 http://localhost:8080/solr/select?indent=on&amp;version=2.2&amp;q=%E6%B5%8B%E8%AF%95%E4%B8%AD%E6%96%87&amp;start=0&amp;rows=10&amp;fl=*%2Cscore&amp;qt=title&amp;wt=standard&amp;explainOther=&amp;hl.fl= 根据自己情况输入关键词和字段,如果得到你要的结果,那么恭喜你,你能搭建一个百万搜索了。</p><p> </p><p>百万搜索真的这么简单么?没啦,不同业务不一样,复杂的很复杂。</p><p> </p><p>大家看下教程 http://lucene.apache.org/solr/tutorial.html,wiki: http://wiki.apache.org/solr solr</p><p> </p><p>现在的release版本是1.2, 1.3还在开发中,现在还有少量bug还没解决,估计快要release了,如果不急于production的,先用1.2熟悉,用1.3上production。如果大家急着用solr的svn版本,其lucene是最新版本。 </p><p> </p><p> </p></div>
2 楼 imjl 2008-03-11  
我不知道compass。还是让用过这两者的xd告诉你差别把。
1 楼 pango 2008-03-11  
比compass怎样?

相关推荐

    sphinx社区全文搜索平台配置手册.pdf

    总之,Sphinx作为一个强大的全文搜索引擎,为大型论坛系统如Discuz!提供了高效的全文检索解决方案,解决了MySQL原生功能的局限性,提升了用户体验,并且具备良好的可扩展性和稳定性。通过合理的配置和维护,可以有效...

    贞龙(BIZOSSCMS)高性能内容管理系统JAVA版 v4.1.rar

    BIZOSS-CMS的静态化机制和全文检索机制支持数十万、上百万的数据量快速查找和检索,目前依然在不断优化中。 2. 多种服务器操作系统支持 Linux开源操作系统在服务器应用领域已经普及开来,很多大型网站都使用的开源...

    贞龙jsp版本CMS(BIZOSSCMS)高性能内容管理系统正式版

    BIZOSS-CMS的静态化机制和全文检索机制支持数十万、上百万的数据量快速查找和检索,目前依然在不断优化中。 2. 多种服务器操作系统支持 Linux开源操作系统在服务器应用领域已经普及开来,很多大型网站都使用的开源...

    新款仿趣闲赚牛帮赚了钱众人帮悬赏猫悬赏兔赏金赚每日任务平台app运营版

    不必拿这些几百元和几十块废弃物源代码bug程序流程与我的比照, 不必贪便宜买这些几百元划算版,压根经营不上,都是系统漏洞,这个是经营版,有一个上百万级的服务平台,全是用这套源代码的核心,安全系数十分高,...

    火端搜索源码最新官方版

    搭建一个搜索引擎网站十分钟就够了! 主要特色功能: ★全自动抓取百度热搜榜,和百度或者好搜的搜索结果,支持只搜索某个站点 ★强大的扩展功能,可以让搜索指定关键词指定网站排名第几,还可以根据关键词显示不同...

    藏经阁-基于混合云的大数据精准运营实践.pdf

    然而单独的一个业务库,在高压的情况下,可能不满足需求,需要进一步进行读写分离,将主库的数据同步到多个备库上,读取数据等查询操作可通过不同备库进行,实现读写分离,增加系统的稳定性;数据库整体使用多种...

    飞飞影视导航系统 v4.1.190209.zip

    飞飞影视导航系统FeiFeiCms是一套专为不同需求的站长而设计的视频点播系统,灵活,方便是最大的特色,为初学者快速架设网站首选,只需5分钟即可建立一个海量的视频讯息的行业网站。 FeiFeiCms采用PHP MYSQL架构,...

    C++网络爬虫项目

    下图展示了一个通用搜索引擎的基本结构。商业级别的搜索引擎通常由很多相 互独立的模块组成,各个模块只负责搜索引擎的一部分功能,相互配合组成完 整的搜索引擎: 搜索引擎的信息源来自于互联网网页,通过“网络...

    飞飞影视导航系统-PHP

    飞飞影视导航系统(FeiFeiCms)是一套专为不同需求的站长而设计的视频点播、聚合导航系统,灵活,方便,采集快是最大的特色,为初学者快速架设网站首选,只需5分钟即可建立一个海量的视频讯息的行业网站。...

Global site tag (gtag.js) - Google Analytics