愚者求师之过,智者从师之长。

给Zblogphp插上Elasticsearch的翅膀

发表了文章 • 0 个评论 • 1825 次浏览 • 2021-10-11 23:00 • 来自相关话题

# 给Zblogphp插上Elasticsearch的翅膀



找遍了zblog的应用中心,未发现有使用Elasticsearch搜索引擎的插件。国庆闲来无事,根据zblogphp的机制,开发了一个基于Elasticsearch的插件。

本插件使用简单,需要有一个Elasticsearch7.x的环境(基于7.x版本开发),Elasticsearch 安装[IK](https://github.com/medcl/elasticsearch-analysis-ik)、[pinyin](https://github.com/medcl/elast ... pinyin),[中文简繁體转换](https://github.com/medcl/elast ... onvert) 插件。安装好该插件后,只需要配置好账号密码,点击创建索引模板即可。发布和编辑文章时,会自动根据索引模板,创建post索引,同步文章数据。搜索时,直接接管原有的搜索逻辑,无需调整程序和模板。

后台配置截图:


123.jpg



配置好连接,端口,账号和密码,点击“测试连接”,弹出连接成功,展示版本号,即可点击保存配置,如果这4项错误,连接不上Elasticsearch,获取不到ES的版本号,将无法保存配置。



Dingtalk_20211009115321.jpg




看到这个提示,便可以点击“保持配置”。这里有一项“切换搜索 Elasticsearch”,开启,前端搜索即切换到了Elastisearch搜索引擎。


234.jpg



在配置好了基本设置以后,点击索引模板,可以预览到索引模板,点击“创建索引模板”,即可在Elasticsearch服务器创建好索引模板,成功后,会在说明栏展示绿色的“已创建”,如果未创建,展示红色的“未创建”。发布和编辑文章时,会根据该索引模板,自动创建好索引,同步文章。



以下是搜索效果截图:

345.jpg

请问大数据量的索引执行forcemerge会有问题吗

laoyang360 回复了问题 • 3 人关注 • 2 个回复 • 1224 次浏览 • 2021-10-24 11:39 • 来自相关话题

Elasticsearch 节点间时间不同步问题

回复

ywxk 发起了问题 • 1 人关注 • 0 个回复 • 1562 次浏览 • 2021-10-11 22:59 • 来自相关话题

elasticsearch 针对同一个索引下 不同嵌套类型的关键字搜索,出现数据紊乱

lijianghu 回复了问题 • 2 人关注 • 1 个回复 • 1087 次浏览 • 2021-10-15 15:03 • 来自相关话题

elasticsearch能用代码修改停用词吗?

回复

FYYPL 回复了问题 • 1 人关注 • 1 个回复 • 1115 次浏览 • 2021-10-11 18:17 • 来自相关话题

基量导入 导致增量数据积压

回复

zlg7788925 发起了问题 • 1 人关注 • 0 个回复 • 1219 次浏览 • 2021-10-10 02:08 • 来自相关话题

hive on es 在hiveserver2执行建hive-es映射表时报错Unsupported major.minor version 52.0

回复

bluebird168 发起了问题 • 1 人关注 • 0 个回复 • 1772 次浏览 • 2021-10-09 16:13 • 来自相关话题

Ik_max_word分词结果为空

waywu 回复了问题 • 2 人关注 • 1 个回复 • 1640 次浏览 • 2021-10-09 14:25 • 来自相关话题

Elasticsearch 聚合分组查询性能问题

cap_ljf 回复了问题 • 3 人关注 • 1 个回复 • 1174 次浏览 • 2021-10-10 18:19 • 来自相关话题

索引分片失败,[shard creation] trying to lock for [shard creation]

Charele 回复了问题 • 3 人关注 • 1 个回复 • 2047 次浏览 • 2021-10-08 17:31 • 来自相关话题

elasticsearch搜索评分调整

FYYPL 回复了问题 • 3 人关注 • 3 个回复 • 1595 次浏览 • 2021-10-09 13:51 • 来自相关话题

fore_merge 如何做到 segments 均衡?

flyingpot 回复了问题 • 4 人关注 • 4 个回复 • 2012 次浏览 • 2021-10-11 22:59 • 来自相关话题

关于es中同步检查点的执行疑问

回复

Charele 发起了问题 • 1 人关注 • 0 个回复 • 1488 次浏览 • 2021-10-03 16:13 • 来自相关话题

通过python脚本迁移ES的template模板

发表了文章 • 0 个评论 • 2474 次浏览 • 2021-09-30 09:30 • 来自相关话题

通过python脚本迁移ES的template模板


通过python脚本迁移ES的template模板,从192.168.0.1 迁移到 192.168.0.2



json<br /> import base64<br /> import json<br /> <br /> import requests<br /> <br /> <br /> def putTemplate(templateName, templateDslJson):<br /> print("{0} 索引模板正在迁移中".format(templateName))<br /> <br /> res = requests.put("<a href="http://192.168.0.2:9200/_template/" rel="nofollow" target="_blank">http://192.168.0.2:9200/_template/</a>{0}".format(templateName), json=templateDslJson)<br /> print(res.status_code)<br /> print(res.content)<br /> <br /> <br /> def getTemplateDslJson():<br /> username = "elastic"<br /> password = "123456"<br /> user_info_str = username + ":" + password<br /> user_info = base64.b64encode(user_info_str.encode()) # 这个得到是个字节类型的数据<br /> headers = {<br /> "Authorization": "Basic {0}".format(user_info.decode()) # 这个就是需要验证的信息<br /> }<br /> url = "<a href="http://192.168.0.1:9200/_template/" rel="nofollow" target="_blank">http://192.168.0.1:9200/_template/</a>*_template"<br /> res = requests.get(url, headers=headers)<br /> print(res.status_code)<br /> return json.loads(res.content)<br /> <br /> <br /> if __name__ == '__main__':<br /> jsonTemplate = getTemplateDslJson()<br /> if isinstance(jsonTemplate, dict):<br /> for templateName in jsonTemplate:<br /> templateDslJson = jsonTemplate[templateName]<br /> putTemplate(templateName, templateDslJson)<br /> <br />

一个看似简单的问题,没有搞明白

pzw9696 回复了问题 • 5 人关注 • 8 个回复 • 2139 次浏览 • 2021-10-03 16:57 • 来自相关话题