首页 » Web前端 » php接入es技巧_关于运用elascticsearch的两个小技巧

php接入es技巧_关于运用elascticsearch的两个小技巧

访客 2024-12-06 0

扫一扫用手机浏览

文章目录 [+]

elasticsearch-analysis-ik分词:

es自带分词,但是没有中文分词,在一众elasticsearch的中文分词插件中,我推举利用analysis-ik。
ik可以对中文语义化分词,有粗略力度分词和最大化分词。
最大化可以将一小段句子拆分成单个字,词语的幂集,如果本地的es没有安装该插件,对某文档的字段利用则会报下面缺点。

以是,安装方法就来了,以下全部以elasticsearch7.8.0版本进行先容和演示。
本地安装了es后,找到其安装的根目录,会创造有一个plugins目录,里面便是放分词插件的地方。
接下来便是按下面地址,选择与自己es版本相对的下载。

php接入es技巧_关于运用elascticsearch的两个小技巧

php接入es技巧_关于运用elascticsearch的两个小技巧
(图片来自网络侵删)

下载完成后,将解压包放入es的plugins目录中,重启es,通过postman测试分词就标识成功了。

elasticsearch-head:

elasticsearch-head是一个大略的es web面板,可以连接指定地址,查看es节点状况,创建索引,查看索引列表,文档,仿照搜索等。
下面就大略先容一下这个工具的安装。
工具地址可以网络上搜索,我这里就不贴,在github也有。

由于这个工具是基于NodeJs,以是安装的条件须要有Node环境,而且还要安装了cnpm,cnpm详细的方法可以网络自行查找。
这些都准备好了之后,通过cmd进入到elasticsearch-head根目录。

第一步先实行cnpm install。
等待将所有的依赖包安装完毕后,实行cnpm run start就默认开启了本地的一个端口为9100的 http做事,末了访问浏览器就可以了。

浏览器进入到127.0.0.1:9100,就可以看到下面这个页面,默认是没有连接9200的(es的默认端口)。
但是第一次连接会报跨域的缺点,以是须要找到es的配置,也便是config目录下elasticsearch.yml,在结尾添加两行代码,末了重启es再用面板连接就可以成功了。

http.cors.enabled: truehttp.cors.allow-origin: ""

由于这个工具有创建索引的功能,以是接下来我就紧张通过postman演示创建文档和批量创建的方法,然后刷新面板的对应索引查看数据。

1. 创建索引:

2. 给指定索引添加一个文档:

3. 给指定索引批量添加文档:

通过postman批量添加文档有两种办法,一种因此参数办法,另一种因此上传json文件办法。
但是二者在书写文档时(也便是json),在末了一定要加一个换行,不然会报错。

(1). 传参办法。

(2). 上传文件办法。

4. 搜索:

以下便是通过postman测试添加的文档,还有一个是es从7.0版本后,一个索引只能有一个type,并且都为_doc,以是面板中的类型都是_doc。

相关文章