索引构建
创建索引
首先在solr目录下建立一个名字为test的core,后面的-force是因为是root账户创建的core,所以要加的,而这个core在solr的./solr-7.3.1/example/techproducts/solr/test目录下。
bin/solr create -c test -force
test索引目录如下,conf文件夹主要是修改配置文件,主要配置和修改里面的managed-schema和solrconfig.xml,data文件夹下的index就是我们上传的数据和索引都在里面,而剩下的两个,其中lib文件夹里面是mmseg4j的压缩包,dic文件夹就是mmseg4j分词包的一些词库,有常用词词库、停用词词库等。
目录结构配置schema,schema里面的每个field定义一个元数据,而这些数据都是根据之前的元数据描述的excel表格来的,来确定他的名字,类型,是否索引,储存,多值等。
schema因为要对在搜索框中所输入的词进行处理,所以要加载中文分词包进行分词,首先加载mmseg4j分词包,通过fieldtype来定义几个字段类型,有textComple、textMaxWord、textSimpe,后面再tokenizer就是调用分词包,mode是分词类型,有完全分词和简单分词等,在之后就是调用分词包的路径。不过因为在solr-7.3.1版本里面,如果被索引的字段是多值的,那么他的分词效果就会出现一些问题,所以对于要被索引的字段类型中是多值的,要用其他分词包,后面我就直接用了solr自带的分词包,在./solr7.3.1/example/techproduct/solr/text/conf下的solrconfig.xml中添加如下语句,加载smartcn包,这dir里面的就是smartcn在solr的路径。
mmseg4j smartcn在之后就是通过solr浏览器界面里的docments导入数据,直接把整理好的json数据往里面灌,数据文件有两个,一个是view.json,另一个是bytravel.json。
docment案例 json文件 view.json bytravel.json把上面的步骤完成之后,就可以在浏览器界面端,通过用solr的query来进行一下基础的查询,看看搭建的索引能不能用,可以进行各种测试,在之后进入刚刚搭建的索引的browse界面,可以进行一些基本的自然语言查询,结果如下图所示
query查询 browse界面