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 --->欢迎大家和博主讨论问题

相关推荐
电商软件开发小辛12 分钟前
我店生活平台是不是 “圈钱平台”?揭开消费补贴新模式的面纱
大数据
青云交35 分钟前
Java 大视界 -- 基于 Java 的大数据实时流处理在智能电网分布式电源接入与电力系统稳定性维护中的应用(404)
java·大数据·分布式·智能电网·flink 实时流处理·kafka 数据采集·iec 61850 协议
jayzhang_36 分钟前
SPARK入门
大数据·开发语言
上海控安1 小时前
上海控安:GB 44495-2024《汽车整车信息安全技术要求》标准解读和测试方案
大数据·人工智能·汽车
GeminiJM3 小时前
Elasticsearch数据迁移方案深度对比:三种方法的优劣分析
大数据·elasticsearch·jenkins
项目題供诗5 小时前
Hadoop(四)
大数据·hadoop·github
TDengine (老段)7 小时前
TDengine 数据订阅支持 MQTT 协议用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
专注数据的痴汉7 小时前
「数据获取」《中国城市建设统计年鉴》(1998-2023年)(获取方式看绑定的资源)
大数据
计算机源启编程7 小时前
为什么Python做大数据分析这么香?基于python+大数据的全球能源消耗量分析可视化系统告诉你答案
大数据
lingling0097 小时前
艾利特石油管道巡检机器人:工业安全的智能守护者
大数据·网络·人工智能