开发者学堂课程【Lucene 知识精讲与实战(上): 使用 luke 工具查看索引库内容】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/700/detail/12334
使用 luke 工具查看索引库内容
内容介绍:
一、简介
二、工具使用方法
一、简介
创建了索引文件文档文件后,这些文件长什么样,包含哪些内容,怎么来看,要通过一个小工具来进行查看里面的内容。点击右键,不管是用文本编辑器,还是用什么记事本来打开,都是乱码的,还有它的格式,需要通过一个工具来查看。即 luke 工具
打开这个文件夹之后,这里面有 luke,里面提供了两个版本,一个是 luke 8.0,还有一个是 luke 7.0的小工具,通过这个工具,那么可以查看索引库里面的一些结构,查看里面的数据,那么还有一些其他的小功能。
luke在e盘根目录这里面,这里面可以用 luke 8.0,把 luke 8.0解压之后是这样一个文件夹。
把这个文件夹里面的内容复制粘贴到硬盘根目录下边,或者说根目录下边的一个文件夹当中。复制粘贴之后,选择硬盘根目录下边的一个文件夹,原因是这个文件夹它这个名不能有中文或者是空格,要不然的话会造成工具出错。
粘贴进来之后,它这里有 sh 还有 bat,选择 bat windows 系统用的,双击打开,等一会,然后它就会弹出一个界面,在弹出的界面当中,看 luke 8.0怎么用。首先这个位置展示的就是所拥护的位置,刚启动起来之后,它有可能不对,在这里面点击 brother 找到索引库的位置,即 e 盘 dir 这个目录,然后打开。
之后,这里面它的勾选项,如图勾选,点击 ok 进入。
二、工具使用方法
里面分为几个菜单,
第一个菜单看索引。第二个展示的是文档,即正文内容,而这个菜单用作搜索。就是说可以在这里面测试一下查询。然后 underless 这里面是分词器的然后等等,只用前三个即可。
Index Path: E:\dir
Number of Fields:6
Number of Documenits:937864
Number of Terms:1080627
Has deletions?/Optimized?:No/No
Index Version: 22
Index Format:Lucene 7.4 or later
Directory implementation:org.apache.lucene.store.MmapDirectory
Currently opened commit point:segments_1(generation=1segs=10)
Current commit user data:0
看 Index Path 指的是索引库的位置,
Number of Fields 指的是这里面的域, 1个文档,里面有6个域,那6个分别为 AD 价格,图片名称,品牌名,分类名等。
number of documents 是有多少个文档。那么有多少个文档,其实就相当于有多少条数据。这里面有小100万条数据。差不多98万条小100万条?
Number of Terms:terms 是词,一共切分出来多少个词。1080627个。有一个标准分子器,对于英文它分子效果很对于中文他认为一个字就是一个词,所以切出来这么多,那么以后会换成其他的分词器,切出来可能就没有这么多词汇量了。切出来这个词汇量的多少,会影响查询的效果、查询的效率。
那么再来往下看,下边这里面这个叫AD点上它之后点 so Top times 这里面可以演示它切出来的词长什么样,那么这个是对数字、对 ID 这个数字的一个切分词,然后还有价格点开,还有对于名称的,对英文分词效果很好,中文一个字就是一个词。
name 叫做名称域的域名,name count 人是从当前域当中切分出来的词汇量,百分比总共加起来是100%,每一个域切分出来的值占总比的百分之多少。
然后再来看第二个菜单,第二个菜单是关于文档,那么这个文档当中就是保存的是正文内容,那么这里面某一个文档,文档当中包含6个域,然后每个域当中都有它的内容。
search 叫做搜索。用标准分支器进行查询,查询的时候,默认是星冒号,代表查询所有,前边的星代表查询所有的域,后边的星代表查询所有的关键字,所以说加起来就是查询所有。那么这里面点search去查出来有很多数据,分页的一共小小100万条数据,它不可能都给它展示出来,那样的话有可能就会卡死机。所以说它这里面进行了分页,默认分成多少?从一第一个文档是不是查询到第十个1~10,然后然后11~20,然后21~30可以进行翻页来进行查看。
这里面看着是不是乱得到一堆数据,还可以进行过滤,点击 field value,在这里面默认所有的域,假如说有一些域不想看,比如说图片域太长了不看,只看ID名称和价格,这个时候再来查,数据量就少了。这个是查询的时候还可以直接写关键字,比如说查 Default field 的默认,根据哪个域来进行查。那么如果查手机肯定是根据它的名称这个域来进行查,比如说名称字段、点击 name 名称,点搜索,全是包含手机的东西。
举例,这里面对查询的关键字在查的时候也是要进行切分词的,那么如果用的是标准分词器,他认为是一个字就是一个词。并且求并集。
如果说这里面选择的是and,它会对4个分别对4个词去查询出来的4个结果集进行求交集,然后合并出来。那么把中间的空格删了,andearch。然后这个事去它应该求的是什么?求的是交集。那么交集的话3968条,这个是出来的结果的总数。如果求并集的话,点击 search,13,493条。
选择 and 然后一查3000多条,然后这个是求交集,然后求并集就比较多,就是1万多条,查出来就1万多条。
那么这个小工具可以借助小工具进行查看索引里面的内容,查看文档里面的内容,并且来还可以在测试查询的时候来使用。