Solr相关
1.Solr搭建
http://blog.csdn.net/zl3450341/article/details/12803189
2.Solr原理
http://www.importnew.com/12707.html
http://blog.csdn.net/babydavic/article/details/8678900
Solr全文搜索引擎,采用的是倒排索引:从关键字到文档的映射
- 左边保存的是字符串序列
- 右边是字符串的文档(Document)编号链表,称为倒排表(Posting List)
字段串列表和文档编号链表两者构成了一个字典。现在想搜索”lucene”,那么索引直接告诉我们,包含有”lucene”的文档有:2,3,10,35,92,而无需在整个文档库中逐个查找。如果是想搜既包含”lucene”又包含”solr”的文档,那么与之对应的两个倒排表取交集即可获得:3、10、35、92。
一.索引创建
文档1 文档2
1.分词,分词结果为Token:
去停用词 分词
2.语言处理,将Token转化为Term:
1)全转小写LowerCase
2) 单词缩减、转换cars-->car (去掉s,es,ing等) drove-->drive(字典中有映射)
3.得到的词(Term)传递给索引组件(Indexer)
1)创建Term到DocumentID的字典,分析每篇文档中单词出现的次数,并按字母排序,以相同单词合并该单词出现在哪些文章中,并统计其频率
用户查询
1.输入字符串str
2.对其分词,语言处理
3.按照TF/IDF排序
- Term Frequencey(tf),Term在此文档中出现的频率,tf越大表示越重要
- Document Frequency(df),表示有多少文档中出现过这个Trem,df越大表示越不重要