Es概念理解 ▎Es索引库操作 ▎Es文档操作

目录

Es下载安装教程

Es基本概念

[mysql Es Redis区别](#mysql Es Redis区别)

正向索引与倒排索引

Es索引库基本操作

创建索引库

查询索引库

删除索引库

修改索引库

ES文档操作

新增文档


Es下载安装教程

Es下载安装教程https://blog.csdn.net/Dreamkidya/article/details/143302773?sharetype=blogdetail&sharerId=143302773&sharerefer=PC&sharesource=Dreamkidya&spm=1011.2480.3001.8118

Es基本概念

elasticsearch是面向文档存储的,可以是数据库中一条数据记录.文档数据会被序列化为json格式后存储在elasticsearch中

  1. 索引---->mysql中的表
  2. 文档---->mysql中的一条记录
  3. 字段(属性)----->mysql中的列(字段)
  4. 映射----->mysql中的约束,建表时,定义的各种规则,约束

mysql Es Redis区别

mysql安全可靠的存储原始数据,以及数据之间的关系

ES负责进行数据搜索,分析,计算

Redis负责临时数据缓存储存

正向索引与倒排索引

正向索引:Mysql采用正向索引,正向索引基于文档id创建索引.查询词条时必须先找到文档,而后判断是否包含搜索的内容.

倒排索引:elasticsearch采用倒排索引

  1. 文档:每条数据就是一个文档
  2. 词条:文档按照语义分成的词语

存储:按照词条创建文档

倒排索引查询规则:

Es索引库基本操作

创建索引库

mapping 属性

mapping 是对索引库中文档的约束,常见的mapping属性包括:

type:字段数据类型,常见的简单类型有:

字符串:text(可分词的文本),keyword(精确值,例如:品牌,国家,邮箱)

数值:long,integer,short,byte,double,float

布尔:boolean

日期:date

对象:object

index:是否创建索引参与搜索,默认为true,如果不需要参与搜索设置为false

analyze:使用哪种分词器

代码演示:

{

"id":1",

"name":"张三丰",

"age":20,

"height":1.75,

"info":"我叫张三丰,是太极拳创始人",

"email":"6666999888.qq.com"

"state":true

}

创建索引库和mapping的语法如下:

PUT /索引库名

{

"mapping":{

"properties":{

"字段1":{

"type":"keyword"

"index":false

},

"字段2":{

"type":"text"

"analyzer":"ik_max_word"

}

}

}

}

查询索引库

语法: GET /索引库名

示例: GET /new

删除索引库

语法: DELETE /索引库名

实例: DELETE /news

修改索引库

索引库和mapping一旦创建无法修改,但是可以添加新的字段,语法如下:

PUT /news/ _mapping

{

"properties":{

"count":{

"type":"long"

}

}

}

ES文档操作

新增文档

新增文档

语法:

POST /索引库名/_doc/文档id

{

"字段名1":"值1",

"字段名2":"值2",

.....

}

查询文档

语法: GET /索引库名/_doc/文档id

删除文档

语法: DELETE /索引库名/_doc/文档id

修改文档

复制代码
POST /索引库名/_update/文档id

{

         "doc":{

                "要修改的字段":"新值"

        }

}

搜索文档

复制代码
GET /news/_search

{

         "query":{

                "match":{

                        "title":"美国"

                }

        }

}


感谢大家的观看,本次分享就到这里。希望我的内容能够对您有所帮助。创作不易,欢迎大家多多支持,您的每一个点赞都是我持续更新的最大动力!如有不同意见,欢迎在评论区积极讨论,让我们一起学习、共同进步!如果有相关问题,也可以私信我,我会认真查看每一条留言。期待下次再见!

希望路飞的笑容可以治愈努力路途中的你我!

博主vx:Dreamkid05 --->欢迎大家和博主讨论问题

相关推荐
Gofarlic_oms113 分钟前
跨国企业Cadence许可证全球统一管理方案
java·大数据·网络·人工智能·汽车
幂链iPaaS27 分钟前
制造业/零售电商ERP和MES系统集成指南
大数据·人工智能
触想工业平板电脑一体机32 分钟前
【触想智能】MES工位一体机在自动化生产线上的作用和市场应用前景分析
大数据·运维·自动化
重生之绝世牛码1 小时前
Linux软件安装 —— Redis集群安装(三主三从)
大数据·linux·运维·数据库·redis·数据库开发·软件安装
汽车仪器仪表相关领域1 小时前
双组分精准快检,汽修年检利器:MEXA-324M汽车尾气测量仪项目实战全解
大数据·人工智能·功能测试·测试工具·算法·机器学习·压力测试
a努力。2 小时前
宇树Java面试被问:数据库死锁检测和自动回滚机制
java·数据库·elasticsearch·面试·职场和发展·rpc·jenkins
厦门小杨2 小时前
汽车内饰的面料究竟如何依靠AI验布机实现检测创新
大数据·人工智能·深度学习·汽车·制造·ai视觉验布机·纺织
-大头.2 小时前
GIT教程系列(共3篇)---------第一篇:Git入门与核心概念完全指南
大数据·git·elasticsearch
roman_日积跬步-终至千里2 小时前
【大数据】Apache Calcite架构:从 SQL 到执行计划的转换框架
大数据·架构·apache