全文检索-概念

我们生活中的数据总体分为两种:结构化数据和非结构化数据。

结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等。

非结构化数据:指不定长或无固定格式的数据,如 互联网数据、邮件,word文档等。非结构化数据又称全文数据

对非结构化数据也即全文数据的搜索主要有两种方法:顺序扫描法和反向索引法。

  顺序扫描法:所谓顺序扫描法,就是顺序扫描每个文档内容,看看是否有要搜索的关键字,实现查找文档的

        功能,也就是根据文档找词

  反向索引法:所谓反向索引,就是提前将搜索的关键字建成索引,然后再根据索引查找文档,也就是根据词

        找文档

全文检索:先建立索引,再根据索引搜索文档的过程

全文检索应用场景:站内搜索,搜索引擎

全文检索技术:Lucene, Solr, ElasticSearch

  ES与Solr比较:

  Solr需要借助Zookeeper进行分布式管理,ES自身带有分布式管理功能

  Solr支持多种格式个数据,ES只支持json格式

  Solr提供的功能更多,ES更注重核心功能,高级功能由第三方插件提供。

  Solr在传统的搜索应用(用户搜索的是从信息库里筛选的信息)中表现好于ES, 但在处理实时搜索应用时效率明显低于ES

全文检索的流程分为两大流程:索引创建、搜索索引

索引创建:将现实世界中所有的结构化和非结构化数据提取信息,创建索引的过程。

搜索索引:就是得到用户的查询请求,搜索创建的索引,然后返回结果的过程。

原文地址:https://www.cnblogs.com/yintingting/p/6747619.html