原创

lucene全文检索的概念

数据的分类:

      结构化数据:有固定类型或者有固定长度的数据

                   例如:数据库中的数据(mysql,oracle等),元数据(就是windows中的数据)

      结构化数据的搜索方法:

                   数据库中数据通过sql语句可以搜索

                   元数据(windows中的通过windows提供的搜索 栏进行搜索)


      非结构化数据:没有固定类型和固定长度的数据

                   例如:word文档中的数据,邮件中的数据

      非结构化数据搜索方法:

                   Word文档使用ctrl+F来搜索

      顺序扫描法:

ctrl+F中是使用的顺序扫描法,拿到搜索的关键字,去文档中,逐一匹配,直道找到和关键字一致的内容为止。

                            优点:如果文档中存在要找的关键字,就一定能找到想要的内容

                            缺点:慢,效率低

      全文检索算法(倒排索引算法):

                            将文件中的内容提取出来,将文字拆分成一个一个的词(分词),将这些词组成索引(字典中的目录),搜索的时候先搜索索引,通过索引找到文档,这个过程就叫做全文索引

        

         分词:去掉停用词(a,an,the,的,得,嗯,呵呵,啊)等。因为搜索的时候这些词没有意义,将橘子拆分成词,去掉标点符号和空格。

         优点:搜索速度快

         缺点:因为创建索引需要占用磁盘空间,所以这个算法会使用掉更多的磁盘空间,这是用空间换时间


拆分示例:

         结构化数据:有固定类型或者有固定长度的数据


         灰色是去掉的分词

        

         相同的词去掉:

                   结构

                   结构化

                   数据

                   有

                   固定

                   类型

                   或者

                   有

                   固定

                   长度

                   数据


正文到此结束
本文目录