版本 ES 1.7.1 pyes 0.99.6
- ES 2.x版本不兼容_head等插件,因此先用1.7.1(這和Python2/3相似)
- pyes 0.99.5 沒有FunctionScoreQuery.FieldValueFactor, 0.99.6有
- RTF版本(免配置的中文搜索)
- 插件head: 圖形化web管理頁面
中文分詞插件--IK
- 編譯好的zip文件解壓到 ES根目錄/plugin/analyzerIK
- 拷貝IK的config/ik 到 ES根目錄/config/
- ES根目錄/config/elasticsearch.yml 中追加
index.analysis.analyzer.default.type : "ik"
index:
analysis:
analyzer:
ik:
alias: [ik_analyzer]
type: org.elasticsearch.index.analysis.IkAnalyzerProvider
ik_smart:
type: ik
use_smart: true
ik_max_word:
type: ik
use_smart: false
重啓ES便可 java
- RTF版本有編譯好的,但我移植到本身的ES上就報錯了,但官方給出的解決方案我是醉了(見https://github.com/medcl/elasticsearch-analysis-ik/issues/48)
- 測試 http://localhost:9200/your_index/_analyze?analyzer=ik&pretty=1&text=我要信耶穌,得永生
查詢 | pyes使用
- _score的算法,通常來說了解便可,ES暴露出API來給咱們調整score TF/IDF... 詳見http://blog.csdn.net/dm_vincent/article/category/2718099
- boosting in query-time是經常使用的干預手段(TODO爲何不boost in index-time)
- FunctionScoreQuery能夠讓咱們更加大力度影響最終score,也就是排序(TODO一共有哪些?)
- FunctionScoreQuery.FieldValueFactor 能夠用文檔中某一字段來影響score
TODO 部署ES