Elasticsearch(三)使用 Kibana 操作 ES
文章目录
- 下载 Kibana 镜像
- 启动 Kibana 容器
- 索引、分片和副本
- 索引
- 索引分片
- 索引副本
- 创建索引
- 映射(数据结构)
- 字段的数据类型
- 创建映射
- 查看映射
- 添加文档
- 修改文档 - 替换
- 删除 products 索引
下载 Kibana 镜像
docker pull kibana:7.9.3
启动 Kibana 容器
docker run \
-d \
--name kibana \
--net es-net \
-p 5601:5601 \
-e ELASTICSEARCH_HOSTS='["http://node1:9200","http://node2:9200","http://node3:9200"]' \
--restart=always \
kibana:7.9.3
启动后,浏览器访问 Kibana,进入 Dev Tools
:
http://192.168.64.181:5601/
索引、分片和副本
索引
Elasticsearch索引用来存储我们要搜索的数据,以倒排索引结构进行存储。
例如,要搜索商品数据,可以创建一个商品数据的索引,其中存储着所有商品的数据,供我们进行搜索:
当索引中存储了大量数据时,大量的磁盘io操作会降低整体搜索新能,这时需要对数据进行分片存储。
索引分片
在一个索引中存储大量数据会造成性能下降,这时可以对数据进行分片存储。
每个节点上都创建一个索引分片,把数据分散存放到多个节点的索引分片上,减少每个分片的数据量来提高io性能:
每个分片都是一个独立的索引,数据分散存放在多个分片中,也就是说,每个分片中存储的都是不同的数据。搜索时会同时搜索多个分片,并将搜索结果进行汇总。
索引副本
对分片创建多个副本,那么即使一个节点宕机,其他节点中的副本分片还可以继续工作,不会造成数据不可用:
创建索引
我们有三个节点,在每个节点上都创建一个分片。每个分片在另两个节点上各创建一个副本。
# 创建索引,命名为 products
PUT /products
{"settings": {"number_of_shards": 3, "number_of_replicas": 2}
}
映射(数据结构)
类似于数据库表结构,索引数据也被分为多个数据字段,并且需要设置数据类型和其他属性。
字段的数据类型
数字类型:
- byte、short、integer、long
- float、double
- unsigned_long
字符串类型:
- text : 会进行分词
- keyword : 不会进行分词,适用于email、主机地址、邮编等
日期和时间类型:
- date
类型参考:
https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-types.html
创建映射
查询时,关键词优先使用 search_analyzer
设置的分词器,如果 search_analyzer
不存在则使用 analyzer
分词器。
# 定义mapping,数据结构
PUT /products/_mapping
{"properties": {"id": {"type": "long"},"title": {"type": "text","analyzer": "ik_max_word","search_analyzer": "ik_smart"},"category": {"type": "text","analyzer": "ik_smart","search_analyzer": "ik_smart"},"price": {"type": "float"},"city": {"type": "text","analyzer": "ik_smart","search_analyzer": "ik_smart"},"barcode": {"type": "keyword"}}
}
https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping.html
查看映射
GET /products/_mapping
添加文档
添加的文档会有一个名为_id
的文档id,这个文档id可以自动生成,也可以手动指定,通常可以使用数据的id作为文档id。
# 添加文档
PUT /products/_doc/10033
{"id":"10033","title":"SONOS PLAY:5(gen2) 新一代PLAY:5无线智能音响系统 WiFi音箱家庭,潮酷数码会场","category":"潮酷数码会场","price":"3980.01","city":"上海","barcode":"527848718459"
}PUT /products/_doc/10034
{"id":"10034","title":"天猫魔盒 M13网络电视机顶盒 高清电视盒子wifi 64位硬盘播放器","category":"潮酷数码会场","price":"398.00","city":"浙江杭州","barcode":"522994634119"
}PUT /products/_doc/10035
{"id":"10035","title":"BOSE SoundSport耳塞式运动耳机 重低音入耳式防脱降噪音乐耳机","category":"潮酷数码会场","price":"860.00","city":"浙江杭州","barcode":"526558749068"
}PUT /products/_doc/10036
{"id":"10036","title":"【送支架】Beats studio Wireless 2.0无线蓝牙录音师头戴式耳机","category":"潮酷数码会场","price":"2889.00","city":"上海","barcode":"37147009748"
}PUT /products/_doc/10037
{"id":"10037","title":"SONOS PLAY:1无线智能音响系统 美国原创WiFi连接 家庭桌面音箱","category":"潮酷数码会场","price":"1580.01","city":"上海","barcode":"527783392239"
}
POST /products/_doc
{"id":"10027","title":"vivo X9前置双摄全网通4G美颜自拍超薄智能手机大屏vivox9","category":"手机会场","price":"2798.00","city":"广东东莞","barcode":"541396973568"
}
GET /products/_doc/10037
查看指定文档title字段的分词结果:```
GET /products/_doc/10037/_termvectors?fields=title
[](https://wanght.blog.csdn.net/article/details/109265248)修改文档
==============================================================底层索引数据无法修改,修改数据实际上是先删除再重新添加。两种修改方式:* PUT:对文档进行完整的替换
* POST:可以修改一部分字段**修改价格字段的值:**
修改文档 - 替换
PUT /products/_doc/10037
{
“id”:“10037”,
“title”:“SONOS PLAY:1无线智能音响系统 美国原创WiFi连接 家庭桌面音箱”,
“category”:“潮酷数码会场”,
“price”:“9999.99”,
“city”:“上海”,
“barcode”:“527783392239”
}
查看文档:```
GET /products/_doc/10037
修改价格和城市字段的值:
# 修改文档 - 更新部分字段
POST /products/_update/10037
{"doc": {"price":"8888.88","city":"深圳"}
}
查看文档:```
GET /products/_doc/10037
[](https://wanght.blog.csdn.net/article/details/109265248)删除文档
==============================================================
DELETE /products/_doc/10037
清空
POST /products/_delete_by_query
{
“query”: {
“match_all”: {}
}
}
[](https://wanght.blog.csdn.net/article/details/109265248)删除索引
==============================================================
删除 products 索引
DELETE /products
> 可以尝试用不同的分片和副本值来重新创建 products 索引
Elasticsearch(三)使用 Kibana 操作 ES相关推荐
- Elasticsearch(三) 使用kibana 操作ES
文档中包含语句 1,索引(新增 查询 删除) 2, mapping 创建 3,文档(新增,修改,删除,批量新增) 4,文档查询(基本查询,高级查询,分页,高亮,排序) 1,使用kibana 新增 查询 ...
- Elasticsearch(一)——Es安装(三个必安工具、安装各种类型分词器)、Es 十大核心概念、通过 Kibana 操作 Es(中文分词、Es各种索引命令操作)
Elasticsearch(一)--Es安装(三个必安工具.安装各种类型分词器).Es 十大核心概念.通过 Kibana 操作 Es(中文分词.Es各种索引命令操作) 一.Elasticsearch ...
- elasticsearch 7.9.3知识归纳整理(二)之 es基本原理及使用kibana操作es的常见命令
es基本原理及使用kibana操作es的常见命令 一.es的基本原理与基础概念 1.1 倒排索引 倒排索引源于实际应用中需要根据属性的值来查找记录.这种索引表中的每一项都包括一个属性值和具有该属性值的 ...
- [ElasticSearch] 三种方式进行ES检索评分控制
一.概要 在使用ES进行搜索时,评分的控制是非常关键的. 而如何对搜索评分进行定制化控制,让其更符合我们想要的评分结果呢? 对boost参数进行控制 通过rescore对查询结果的评分进行二次控制 使 ...
- Elasticsearch 7.X SpringBoot 使用 ElasticsearchRestTemplate 操作 ES
一.ElasticsearchRestTemplate 前面学习了es rest接口对es进行操作的方式,并且还学习了es的分片及扩容,有讲解了几种常见的分词器,喜欢的小伙伴可以看下本专栏的其他文章, ...
- ElasticSearch入门简介、安装ES(安装Kibana和IK分词器)使用 Postman连接ES进行测、ESRestAPI(操作索引CRUD操作文档CRUD)、练习
要理解倒排索引 要能够使用DSL命令操作索引库 要能够使用DSL命令操作文档 要能够使用RestAPI操作索引库.文档 一.ES简介 理解倒排索引的概念和作用 理解es和MySql的区别和使用场景 1 ...
- elasticsearch数据备份与恢复(kibana操作)
一.kibana操作 流程: 创建仓库--->创建策略(自动备份)--->生成快照--->还原 解决: 1.在所有es节点下的elasticsearch.yml中添加以下配置: pa ...
- 【ElasticSearch】(四)—— RestClient操作ES
目录 编辑 一.RestClient操作索引 环境搭建 1.导入数据 2.导入项目 3.mapping映射分析 4.初始化RestClient 1)创建索引库 1.代码解读 2.完整示例 2)删除索 ...
- ElasticSearch(三)springboot整合ES
最基础的整合: 一.maven依赖 <parent><groupId>org.springframework.boot</groupId><artifactI ...
- Elasticsearch的介绍 以及使用python操作es详细步骤
一. 什么是 Elasticsearch 想查数据就免不了搜索,搜索就离不开搜索引擎,百度.谷歌都是一个非常庞大复杂的搜索引擎,他们几乎索引了互联网上开放的所有网页和数据.然而对于我们自己的业务数据来 ...
最新文章
- Web安全实战训练营
- mysql定位前后端问题_Web 前后端分离的意义大吗?
- 喜欢的一些话(不断更新)
- 电脑rar文件打开方式_新手使用苹果电脑Mac,知道这些让你用起来更舒心。
- php安装redis扩展'checking for igbinary includes... configure: error: Cannot find igbinary.h'解决方法...
- 苹果新专利曝光,可通过GPS和视觉识别器来识别车辆
- 简单实用的带引脚保护的RS232驱动电路
- 北理乐学c语言,北京理工大学2018年计算机考研889数据结构考试大纲
- Flexsim——初学AGV必看的知识点(如何解决AGV锁死的情况)
- 练习 用C语言编写一个程序,解释高等数学中的映射、单射和一一映射,并表示为函数。
- 货拉拉 Android 动态资源管理系统原理与实践(下)
- 军用无人机数据数据集_无人机和大数据
- 《情感分析、挖掘观点、情感和情绪》1
- java runnable main_【BUG】”main” prio=5 tid=1 RUNNABLE
- ORACLE取当天七点半
- Barsetto百胜图BAV02自助咖啡机——星巴克喝多了自助咖啡体验过吗?
- 美对华光伏双反复审终裁出炉 贸易变数让厂商第三地外移计划却步
- 【深度学习,NLP,LM】Alpaca-Lora ,Colab上部署与调用
- 预训练 Bert 【 VilBERT,LXMERT,VisualBERT,Unicoder-VL,VL-BERT,ImageBERT 】--- 记录
- 终于,抓到了勒索病毒作者!!