irpas技术客

Python之Elasticsearch8.2.0_十一姐_elasticsearch python 文档

irpas 5503

目录 一、Elasticsearch1、概念名词了解2、Elasticsearch安装3、ik分词插件安装4、kibana可视化安装5、Windows配置ElasticSearch服务 二、python操作Elasticsearch1、创建索引2、删除索引3、新增数据4、更新数据5、删除数据6、查询数据

一、Elasticsearch 1、概念名词了解 非常强大的搜索引擎,便于存储和检索,可以快速存储、搜索和分析海量数据,维基百科/Stack Overflow/GitHub都采用其实现一个分布式的实时文档存储库,每个字段都可以被索引与搜索一个分布式的实时分析搜索引擎能胜任上百个服务节点的扩展,并支持PB级别的结构化或者非结构化数据分布式数据库,允许多台服务器协同工作,每台服务器均可运行多个Elasticsearch实例节点Node:单个Elasticsearch实例集群Cluster:一组节点构成一个集群索引index:Elasticsearch会索引所有字段,经过处理后写入一个反向索引(inverted index),就相当于MongoDB/Mysql中的数据库概念,每个索引(数据库)的名字必须小写文档document:索引里的单条记录称为文档,许多条文档构成一个索引,一个索引里的文档结构可以不同,但是不建议这样做类型Types:文档可以分组,虚拟逻辑分组,用来过滤文档,类似MongoDB中的集合,MySQL中的数据表字段Fields:每个文档类似一个JSON结构,包含很多字段,每个字段都有值,多个字段组成一个文档总结:Elasticsearch: 索引index>类型Types>文档document>字段Fields,es8.x彻底删除了type!,es是面向文档的,es全部都是JSON,ELK是ElasticSearch, Logstash, Kibana三大开源框架首字母大写的简称 2、Elasticsearch安装

推荐参考安装文章

ElasticSearch是基于lucence开发的,也就是运行需要java jdk支持,所以要先安装JAVA环境,文档目录三JDK1.8安装 ,然后cmd窗口输入java -version如下展示代表java环境安装成功

Elasticsearch下载地址,然后解压

然后进入config目录下,修改如下两个文件,elasticsearch.yml修改部分配置,jvm.options修改es内存大小(添加两行这个-Xms1g)

elasticsearch.yml修改部分配置

# elasticsearch.yml文件下修改如下 cluster.name: mysy-es network.host: localhost http.port: 9200 # 是否启用ssl,若不改为false则无法连接端口,http访问 xpack.security.enabled: false

jvm.options修改es内存大小:添加两行这个-Xms1g

然后进入bin目录下,双击执行elasticsearch.bat,稍等片刻如下加载好,注意这个cmd窗口不要关,否则es不能连接成功,除非你已配置为服务自启

然后打开http://localhost:9200/,出现如下界面代表安装成功

设置ES_HOME环境变量

3、ik分词插件安装

Elasticsearch检索功能,对于中文来说,需要安装一个分词插件elasticsearch-analysis-ik,注意安装版本与Elasticsearch版本一致

到这里下载对应安装包https://github.com/medcl/elasticsearch-analysis-ik/releases,注意下载的版本和Elasticsearch一致

在Elasticsearch的plugins目录下,将刚刚下载的压缩包解压到该文件夹下,并重命名为ik(貌似也可以不用重命名)

然后再次重启elasticsearch.bat,如图已加载

4、kibana可视化安装 到https://·/zt2011/usa_iraq/index.htm', 'date': '2011-12-16'}, {'title': '公安部:各地校车将享最高路权', 'url': 'http://·/gn/2011/12-16/3536077.shtml', 'date': '2011-12-16'}, {'title': '中韩渔警冲突调查:韩警平均每天扣1艘中国渔船', 'url': 'https://news.qq.com/a/20111216/001044.htm', 'date': '2011-12-17'}, {'title': '中国驻洛杉矶领事馆遭亚裔男子枪击 嫌犯已自首', 'url': 'http://news.ifeng.com/world/detail_2011_12/16/11372558_0.shtml', 'date': '2011-12-18'} ] for data in datas: es.index(index='news', document=data) # 查询1 result = es.search(index='news') print(result) # 查询2 query = { 'match': { 'title': '平均' } } result = es.search(index='news', query=query) print(result)


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #ElasticSearch #Python #文档