Lucene(全文检索)
Lucene 数据分类 非结构化数据查询方法 Lucene实现全文检索 分析器的使用 查询索引 索引库的维护 数据分类 结构化数据:指具有固定格式或有限长度的数据(例如数据库,元数据等) 非结构化数据:指不定长或无固定格式的数据(例如邮件,word文档等) 非结构化数据查询方法 顺序扫描法 从头到尾进行扫描,找到匹配的文件 全文检索 先建立索引,然后对索引进行搜索 Lucene实现全文检索 索引和搜索流程图 创建索引 获得原始文档 创建文档对象 我们可以将磁盘上的一个文件当成一个document,Document中包括一些Field(file_name文件名称、file_path文件路径、file_size文件大小、file_content文件内容) 分析文档 将原始内容创建为包含域(Field)的文档(document),需要再对域中的内容进行分析,分析的过程是经过对原始文档提取单词、将字母转为小写、去除标点符号、去除停用词等过程生成最终的语汇单元,可以将语汇单元理解为一个一个的单词。 创建索引( 倒排索引结构 ) 对所有文档分析得出的语汇单元进行索引,索引的目的是为了搜索,最终要实现只搜索被索引的语汇单元从而找到Document(文档) 创建索引代码 分析器的使用 Lucene 自带分词器 StandardAnalyzer:单字分词 SmartChineseAnalyzer