es 简单实现增加,查询,分词 热词
看代码:
$params = ['index' => "goods",'body' => ['mappings' => ['properties' => [//之后可以进行搜索的字段'name' => ['type' => 'text',"analyzer" => "ik_max_word","search_analyzer" => "ik_max_word"]]]]];$this->client = ClientBuilder::create()->setHosts(['127.0.0.1:9200'])->build();
// 执行 只用执行一次即可
// $this->client->indices()->create($params);
添加es中的表,index 表示表名 body 表示主体部分,然后执行,可以创建一个es 中的表格,相当于数据库中的数据表,现在还是空的表格,需要添加数据后在进行查询
添加:
$goods = $goods->toArray();$params = ['index' => 'goods','type' => '_doc','body' => $goods];//执行添加return $this->client->index($params);
先查询出添加数据库的数据,转为数组格式添加进es中 方便在随后的搜索中实现搜索
搜索:
//判断用户是否搜索,如果没有则跳过if ($search != "") {$client = ClientBuilder::create()->setHosts(['127.0.0.1:9200'])->build();$params = ['index' => 'goods','type' => '_doc','body' => ['query' => ['match' => ['name' => $search]],'highlight' => ['fields' => ['name' => ['pre_tags' => "<em style='color: red'>",'post_tags' => "</em>",]]]]];
// dd($params);// 执行搜索$response = $client->search($params);
// dd($response);//高亮$data = $response['hits']['hits'];$res = [];//循环获取高亮字段foreach ($data as $v) {if (!empty($v['highlight']['name'][0])) {$v['_source']['name'] = $v['highlight']['name'][0];}array_push($res, $v['_source']);}
// 热词Redis::zincrby('search', 1, $search);return $res;}$res = Goods::get();
// dd($res);return $res;
基本实现
es 简单实现增加,查询,分词 热词相关推荐
- 创新实训【12】——热词查询功能
主要内容 这篇主要记录网页中热词查询功能,首先会展示所有热词的一个基本信息,包括它的名称,出现次数,来源网站,相关热词,可以通过查询搜索热词,也可以对结果按出现次数升序或降序排序. 页面展示如下: 使 ...
- mysql读数据入库es_ES 实现实时从Mysql数据库中读取热词,停用词
IK分词器虽然自带词库 但是在实际开发应用中对于词库的灵活度的要求是远远不够的,IK分词器虽然配置文件中能添加扩展词库,但是需要重启ES 这章就当写一篇扩展了 其实IK本身是支持热更新词库的,但是需要 ...
- 在热词中看舆论,摆脱“黑天鹅”效应
在互联网时代,热词往往反应了一段时间内公众普遍关注的事件.因此,热词计算是舆情系统中的核心模块,针对资讯.评论.弹幕等进行热词统计,可以快速对海量资讯提取核心词汇,帮助用户快速研判舆论舆情.然而海量数 ...
- 搜索输入框下拉列表热词搜索的实现
我们在百度时简单输入一些信息会在输入框的下面以列表的形式显示几条数据,这些都是与你所输入信息相关的热词,以提升用户的体验.下面我们做下简单的实现: 1. 热词: 这些词你可以从后台数据库中取,可以在c ...
- ik与拼音分词器,拓展热词/停止词库
说明:本篇文章讲述elasticsearch分词器插件的安装,热词库停止词库的拓展,文章后面提到elasticsearch ,都是以es简称. 以下分词器的安装以ik分词器和pinyin分词器为例说明 ...
- ik分词器的热词更新_ik与拼音分词器,拓展热词/停止词库
说明:本篇文章讲述elasticsearch分词器插件的安装,热词库停止词库的拓展,文章后面提到elasticsearch ,都是以es简称. 以下分词器的安装以ik分词器和pinyin分词器为例说明 ...
- es自建搜索词库_ElasticSearch-IK拓展自定义词库(2):HTTP请求动态热词内容方式...
上一章节(https://my.oschina.net/jsonyang/blog/1643032)我们介绍了使用热词文件形式拓展词库,这样的好处是方便简单,但是如果公司运营人员来直接管理这个东西的话 ...
- 一个热词推荐的简单实现
2019独角兽企业重金招聘Python工程师标准>>> 为什么想做这个东西 一直好奇像亚马逊这类网站的搜索是如何做到推荐的,最近刚好看到一篇文章:Redis 与搜索热词推荐,然而只写 ...
- 使用Docker快速安装部署ES和Kibana并配置IK中文分词器以及自定义分词拓展词库
使用Docker快速安装部署ES和Kibana的前提:首先需要确保已经安装了Docker环境 如果没有安装Docker的话,可以参考上一篇的内容:Linux上安装Docker 有了Docker环境后, ...
最新文章
- 前有教授被骗千万,后有某重点高校青年教师晒出月薪900的工资条,大学老师工资待遇如何?...
- 计算机应用基础165791,人大网大计算机应用基础试题答案资料.doc
- CSS3盒子模型(CSS3)
- CCF NOI1008 水仙花数
- gdb调试core文件
- 2016-1-8 windows 7下安装mysql及其配置和运用
- python机器学习-乳腺癌细胞挖掘(基于真实美国临床数据)
- 电子时钟课程设计报告
- MSN网页上点击连接
- 汉字录入到计算机的过程,如何快速把书中文字录入到电脑中
- Windows PE文件各个节(Section)分析
- js使用canvas画布画太极图案
- Workface通用核算项目的实现
- iPad的尺寸与分辨率
- matlab 转换为相对湿度
- 图片转换成代码的小工具Image2Lcd使用说明
- 【渗透测试笔记】之【MSF 信息搜集】
- nrf52832 蓝牙组网_nrf52832 蓝牙开发
- 斯坦福cs224n教程--- 学习笔记1
- Swift 使用NSRange 查找字符多次出现的位置处理
热门文章
- 河内塔算法java_河内递归塔Java
- 松弛迭代法matlab,逐次超松弛迭代法求解线性方程组的MATLAB实现
- 再读内核存储管理(7):icache支持
- 国产智多晶FPGA开发软件HqFPGA下载和安装方法
- php生成字母头像,php 按照中文字母名字排序,并把相应的头像显示出来
- ERP技术全接触:数据库、编程和前端技术
- 霍尼韦尔Honeywell MS5145和MS9540条码扫描枪如何设置成自动扫描?(长亮)
- 如何在Windows中开启上帝模式
- Audiobook Builder 2.0.1 中文特别版 Mac 有声读物制作软件
- 使用Java打开本地文件