设为首页 收藏本站
查看: 1237|回复: 0

[经验分享] 不错的 solr 使用安装介绍

[复制链接]

尚未签到

发表于 2015-7-16 12:24:07 | 显示全部楼层 |阅读模式
  前些日子做了个 apache solr 应用的入门介绍,也在博客记录下,方便新手看看。以搜索论坛帖子为示例。
  1、先下载 Apache Solr 1.3 http://apache.etoak.com/lucene/solr/1.3.0/apache-solr-1.3.0.zip,解压到如 E:\apache-solr-1.3.0。
  2、下载 Apache Tomcat 6.0.18 http://labs.xiaonei.com/apache-mirror/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.zip,解压到如 E:\apache-tomcat-6.0.18。
  3、solr 安装到 tomcat。修改 E:\apache-tomcat-6.0.18\conf\server.xml,加个 URIEncoding="UTF-8",把 8080 的那一块改为:






  •   


  把下面的内容保存到 E:\apache-tomcat-6.0.18\conf\Catalina\localhost\solr.xml,没有这个目录自行创建。






  •   
  •       
  •   


  solr 的更多方式请看:solr install
  4、现在安装好,启动 tomcat,并打开 http://localhost:8080/solr/admin/ 看看界面。
  5、为搜索论坛帖子应用设计索引结构:


字段说明


id
帖子 id


user
发表用户名或UserId


title
标题


content
内容


timestamp
发表时间


text
把标题和内容放到这里,可以用同时搜索这些内容。
  6、上面的索引结构告诉 solr,把下面的内容覆盖 E:\apache-solr-1.3.0\example\solr\conf\scheam.xml,(可以先备份这文件,方便以后看官方示例):






  •   
  •   
  •   
  •   
  •     
  •       
  •       
  •   
  •       
  • text  
  •   
  •    
  •   
  •   
  •    
  •      
  •      
  •   
  •   


  7、重启 tomcat,然后手动在 E:\apache-solr-1.3.0\example\exampledocs 创建两个 xml 数据文件。分别保存为 demo-doc1.xml 和 demo-doc2.xml:






  •   
  •   
  •       
  •         1  
  •         chenlb  
  •         solr 应用演讲  
  •         这一小节是讲提交数据给服务器做索引,这里有一些数据,如:服务器,可以试查找它。  
  •       
  •   







  •   
  •   
  •       
  •         2  
  •         bory.chan  
  •         搜索引擎  
  •         搜索服务器那边有很多数据。  
  •         2009-02-18T00:00:00Z  
  •       
  •       
  •         3  
  •         other  
  •         这是什么  
  •         你喜欢什么运动?篮球?  
  •         2009-02-18T12:33:05.123Z  
  •       
  •   


  8、提交数据做索引,到 E:\apache-solr-1.3.0\example\exampledocs,运行:

E:\apache-solr-1.3.0\example\exampledocs>java -Durl=http://localhost:8080/solr/update -Dcommit=yes -jar post.jar demo-doc*.xml
SimplePostTool: version 1.2
SimplePostTool: WARNING: Make sure your XML documents are encoded in UTF-8, other encodings are not currently supported
SimplePostTool: POSTing files to http://localhost:8080/solr/update..
SimplePostTool: POSTing file demo-doc1.xml
SimplePostTool: POSTing file demo-doc2.xml
SimplePostTool: COMMITting Solr index changes..
  9、查看搜索结果:
  所有内容 http://localhost:8080/solr/select/?q=*%3A*&version=2.2&start=0&rows=10&indent=on






  •   
  •   
  •   
  •   
  • 0  
  • 0  
  •   
  •   on  
  •   0  
  •   *:*  
  •   10  
  •   2.2  
  •   
  •   
  •   
  •   
  •   这一小节是讲提交数据给服务器做索引,这里有一些数据,如:服务器,可以试查找它。  
  •   1  
  •   2009-05-27T04:07:54.89Z  
  •   solr 应用演讲  
  •   chenlb  
  •   
  •   
  •   搜索服务器那边有很多数据。  
  •   2  
  •   2009-02-18T00:00:00Z  
  •   搜索引擎  
  •   bory.chan  
  •   
  •   
  •   你喜欢什么运动?篮球?  
  •   3  
  •   2009-02-18T12:33:05.123Z  
  •   这是什么  
  •   other  
  •   
  •   
  •   


  bory.chan 用户的:http://localhost:8080/solr/select/?q=user%3Abory.chan&version=2.2&start=0&rows=10&indent=on






  •   
  •   
  •   
  •   
  • 0  
  • 0  
  •   
  •   on  
  •   0  
  •   user:bory.chan  
  •   10  
  •   2.2  
  •   
  •   
  •   
  •   
  •   搜索服务器那边有很多数据。  
  •   2  
  •   2009-02-18T00:00:00Z  
  •   搜索引擎  
  •   bory.chan  
  •   
  •   
  •   


  时间 http://localhost:8080/solr/select/?q=timestamp%3A%5B%222009-02-18T00%3A00%3A00Z%22+TO+%222009-02-19T00%3A00%3A00Z%22%5D&version=2.2&start=0&rows=10&indent=on






  •   
  •   
  •   
  •   
  • 0  
  • 16  
  •   
  •   on  
  •   0  
  •   timestamp:["2009-02-18T00:00:00Z" TO "2009-02-19T00:00:00Z"]  
  •   10  
  •   2.2  
  •   
  •   
  •   
  •   
  •   搜索服务器那边有很多数据。  
  •   2  
  •   2009-02-18T00:00:00Z  
  •   搜索引擎  
  •   bory.chan  
  •   
  •   
  •   你喜欢什么运动?篮球?  
  •   3  
  •   2009-02-18T12:33:05.123Z  
  •   这是什么  
  •   other  
  •   
  •   
  •   


  常用的 solr 查询参数请看:solr 查询参数说明
  简单的示例已经完成了,索引文件(默认)会在 CWD/solr/data/index 目录下,要改为 solr.home/data目录下,在 F:\apache-solr-1.3.0\example\solr\conf\solrconfig.xml 把 dataDir 注释掉,如:






  •   

  

  说明:上面没有使用中文分词,用官方的 CJK 分词,另外有 mmseg4j 中文分词的示例,请看:solr 中文分词 mmseg4j 使用例子

13 条评论 »



  • lemonhall 于 2009-06-02 @ 13:48:07 留言 :


      看了很长时间你的博客了,中文的SOLR资料太少了。
      下载了MM,用JAVA -JAR的方式运行分词没有问题。
      但在UBUNTU 9.10,JETTY方式下,不会安装MM....
      这个步骤总是语焉不详。
      系统提示无法加载COM.CHENLB.COM.MM......................
      我把所有的JAR包都放在CMD/EXAMPLE/LIB下面了。JETTY可以看见这些JAR文件,但总是说无法加载。
      1.6.2,好多个JAR包,我不知道该怎么放,只好把全部的JAR包都解压到同一个目录下了。
    回复


      chenlb 回复: on June 2nd, 2009@15:09
      solr 1.3 新的加载 lib 方式, 把 mmseg4j 相关的 *.jar 放到 solr.home/lib 目录下,solr 会正确加载。
    回复


      chenlb 回复: on June 2nd, 2009@15:14
      如果是 solr 1.3 就可以只要 mmseg4j-all-1.6.2.jar 放到 solr.home/lib 就行了。
    回复


  • lemonhall 于 2009-06-02 @ 15:52:12 留言 :


      多谢你的快速回复,但是发觉还是不行。
      我是用JETTY哪个测试用的容器做得。
      apache-solr-1.3.0/lib
      apache-solr-1.3.0/example/lib
      这两个LIB我都放上了MMSEG和DATA文件,使用默认的目录树,这回变成报错无法启动SOLR。。。
      我再调调吧,新手的痛苦。
      另外我看到一篇帖子是讲默认的CJK的,那个倒是很好配置。以下引用我找到的一个配置实例,因为你的配置文件我配好后分词无法运行。他还提到某个报错,死马当火马医吧。
      ==============================
      默认情况下 Apache Solr 是不支持中文检索的,如果文档中包含中文,必须用完整的一句中文才能检索出内容。
    下面以 Apache Solr 的演示程序为例,注意:粗体部分是需要修改的地方。
    找到如下三行:
      修改为:
      找到如下两行:
      修改为:
      修改完毕,重新运行 Apache Solr 就可以对中文进行检索了,原先已经导入的文档需要重新导入。
    记住原先的配置中有个 positionIncrementGap="100" 一定要删除了,否则会有异常。
    回复


      chenlb 回复: on June 2nd, 2009@16:04
      F:\apache-solr-1.3.0\example\solr 作为 solr.home 的话
      是 F:\apache-solr-1.3.0\example\solr\lib, 没有这个目录的,自己创建,不是放到
      apache-solr-1.3.0/lib
      apache-solr-1.3.0/example/lib
      如果 直接用  (也即是说 用 Analyzer 类的话),positionIncrementGap="100" 是一定要删除,
    回复


      chenlb 回复: on June 2nd, 2009@16:06
      这里: http://blog.chenlb.com/2009/04/solr-chinese-segment-mmseg4j-use-demo.html
    回复


  • lemonhall 于 2009-06-02 @ 16:16:15 留言 :


      哈哈,非常感谢,搞定了。确实是不理解什么是SOLR.HOME这个东西。竟然在这里卡了半天时间。。。
      调试通过了,分词正确。
      再次感谢,准备在企业环境下部署SOLR。
      中文这下子不怕了。
    回复


  • lemonhall 于 2009-06-03 @ 13:31:41 留言 :


      又来讨饶作者了,想问一下,据您所知
      现有的、正在使用中的最大的词库,大概有多大?
      我现在加载了一个50W的医学名词词库~~速度有些慢了。当然和测试用机器不好可能也有关系。
      发觉词库是中文搜索的最大的关键点。
    回复


      chenlb 回复: on June 3rd, 2009@15:50
      不是专业/业行词库 22W
    回复


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-87299-1-1.html 上篇帖子: 全文检索Solr + Solrnet 下篇帖子: Solr4:Solr查询结果JSP分页显示(每次查询只返回指定记录数)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表