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

[经验分享] SOLR安装与配置

[复制链接]

尚未签到

发表于 2015-7-16 13:52:49 | 显示全部楼层 |阅读模式
  apache-solr-3.2.0基于TOMCAT安装 以下是windows的安装方法,与linux安装是一样的
修改tomcat的server.xml文件

增加tomcat\conf\Catalina\localhost\solr.xml文件




访问地址http://localhost:8983/solr/admin/即可进入SOLR的查询页面
SOLR 中 Schema.xml 的filedType 的一些属性的理解
1.  dynamicField 的作用是什么?
如果你需要在schema.xml文件中的 ......部分定义多个(math_score,chinese_score,english_score,....),而恰好这些的type属性又相同(type="integer"),那么就可以借助 dynamicField 用一个句子完成
这样,在一个document中,就可以使用math_score,chinese_score,english_score 这些字段名,虽然在schema.xml文件中并未对它们进行一一定义。
dynamicField就是動態欄位, 要是你有太多欄位無法一一設定,你可以用dynamicField處理像下面這第一個dynamicField就是說, 所有欄位是以 _i做結尾的 (如 a_i, sss_i, id_i等等)都套用這個設定.










2. sortMissingLast 和  sortMissingFirst对的属性之一。只在对该进行排序时,才起作用。
·
sortMissingLast = true时,那些在该上没有值的documents将被排在那些在该上有值的documents之后。
·
sortMissingFirst = true时的情况正好相反。
·
如果两者都设为false,则使用Lucene的排序。
3. positionIncrementGap=100  只对 multiValue = true 的fieldType有意义。
http://svn.apache.org/repos/asf/ ... olr/conf/schema.xml
Suppose a document has a multi-valued "author" field.   Like this:
author: John Doe
author: Bob Smith
With a position increment gap of 0, a phrase query of "doe bob" would   
be a match.  But often it is undesirable for that kind of match across  
different field values.  A position increment gap controls the virtual  
space between the last token of one field instance and the first token  
of the next instance.  With a gap of 100, this prevents phrase queries  
(even with a modest slop factor) from matching across instances.
4.    omitNorms
什么是Norm,现在还不懂????
5. LowerCaseFilterFactory的作用。
例如Kobe Bryant在分词后 kobe 不能搜索到结果 Kobe可以,虽然这个是中文分词
法,但经常有中英混输的情况,如果在输入英文后,查不到结果,也是比较失望的,
另外我看了你的源代码,建议在词库的引进上采用单例模式,在web应用上会比较好,
谢谢你的帮助,另外我看了solol的mmseg的接口比较不错,你是否有意看看,另外再
次感谢你的solr分词
Comment 1 by chenlb2008, Aug 16, 2009 英文小写,好办,用  就行,详情请
看:http://blog.chenlb.com/2009/04/s ... seg4j-use-demo.html
solol 基本没看,我只是怕看了会影响我的设计思路。
也准备实现 http://chenlb.javaeye.com/blog/439843 提到的一些功能。
多谢你的关注。希望继续提出你的看法。
以下内容是从网上找到的
=====================
Solr schema.xml 的介紹
Tuesday, 1. April 2008, 07:23:25
solr
原來我是打算將Solr wiki裡的介紹直接翻譯成中文, 後來寫一寫覺得, 翻譯的內容太複雜, 很難懂. 所以在這裡我就直接拿一個schema.xml範例來介紹好了. 希望能幫助大家了解schema.xml

The Solr schema file. This file should be named "schema.xml" and should be in the conf directory under the solr home (i.e. ./solr/conf/schema.xml by default) or located where the classloader for the Solr webapp can find it.
For more information, on how to customize this file, please see… wiki.apache.org/solr/SchemaXml

資料型態, 你的資料可能要分很多不同型態做資料建置以便solr引擎做檢索, 就像一般資料庫一樣, 要對存入的資料做型態分類. 以下有string, boolean, integer, long, float, double 等等的資料型態, 就依你的須求做設定. 每一個fieldtype 都有幾個參數可設定, 其中name就是你給這個fieldtype的名子, 你可以隨你的方便取名. class是solr用的,就不可以亂取, 要針對你這個fieldtype的資料型態來告訴solr這個fieldtype裡的資料是什麼樣類型的資料,如 integer, text, string, long等等.
後面的sortMissingLast, omitNorms等設定你可以參考solr wiki schemalXml的介紹, 再依你的須求使用. 請參考下列範例.












如果是TextField的資料型態, 你可以用不同的Analyzer, Tokenizer, Filter對這個fieldtype的資料做處理. 像是中文切詞, 刪除前後空白, 或同義詞等等. 可依你的須求使用. 請參考下列範例.





































設置好資料fieldType的型態後, 就是將這些fieldType套入對應的document fields. 只能多不能少. 也就是說假設你有一個document裡有 id, name, default等資料, 你的schema.xml不可以只有id, default這兩個field. 你一定要還要有name這個field. 但是你schema.xml裡若有id, name, defualt, text這四個欄位, 你的document卻可以只有id, default這兩個欄位.


上面這個欄位(field)是給你document裡的id欄用, 型態為string, 要index, 也要儲存在你的資料庫裡


dynamicField就是動態欄位, 要是你有太多欄位無法一一設定,你可以用dynamicField處理像下面這第一個dynamicField就是說, 所有欄位是以 _i做結尾的 (如 a_i, sss_i, id_i等等)都套用這個設定.










uniqueKey就像一般database的primary key一樣, 也就是說整個資料庫裡的每一筆資料的id欄位不可以與另一筆資料的id欄位有相同值.
id
defaultSearchField就是你在做query搜尋時若不指定特定欄位做檢索時, Solr就會只查這個欄位.
default
copyField是用來複製你一個欄位裡的值到另一欄位用. 如你可以將name裡的東西copy到default裡, 這樣solr做檢索時也會檢索到name裡的東西.


這裡defaultOperator設為 "AND", 就是說當你輸入的查尋詞句有空白時 ex. "遠東 餐廳", Solr搜尋解析器會當做你的query指令為"遠東AND餐廳". 若是設為 "OR" 就會變成"遠東OR餐廳".


這就是一個簡單的schema.xml介紹
  SOLR安装路径
/home/download/apache-solr-3.2.0
开源PHP_SOLR类路径
/mnt/webroot/SolrPhpClient
TOMCAT安装路径
/usr/local/apache-tomcat-6.0.32
启动TOMCAT
/usr/local/apache-tomcat-6.0.32/bin/startup.sh
停止TOMCAT
/usr/local/apache-tomcat-6.0.32/bin/shutdown.sh

运维网声明 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-87349-1-1.html 上篇帖子: solr的facet解读 下篇帖子: solr dataimport 数据导入源码分析(十四)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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