1 创建索引
PUT /lagou-company-index
PUT /索引名称
{
“settings”: {
“属性名”: “属性值”
}
}
settings:就是索引库设置,其中可以定义索引库的各种属性 比如分片数 副本数等,目前我们可以不设置,都走默认
**2 查询索引数据
GET /lagou-company-index
**3 批量查询索引数据
GET /lagou-company-index,lagou-employee-index
4 查看索引的状态
GET /_cat/indices?v
在这里插入图片描述

绿色:索引的所有分片都正常分配。
黄色:至少有一个副本没有得到正确的分配。
红色:至少有一个主分片没有得到正确的分配
5 验证索引是否创建成功
HEAD /lagou-company-index
6 关闭索引
POST /lagou-company-index/_close
7 打开索引
POST /lagou-company-index/_open
8 删除索引
DELETE /lagou-company-index/
9 一次性创建索引和映射字段(必须用put)
9.1 创建索引的mapping
PUT /索引库名/_mapping
{
“properties”: {
“字段名”: {
“type”: “类型”,
“index”: true,
“store”: true,
“analyzer”: “分词器”
}
}
}
9.2 一次性创建索引和映射字段
put /索引库名称
{
“settings”:{
“索引库属性名”:“索引库属性值”
},
“mappings”:{
“properties”:{
“字段名”:{
“映射属性名”:“映射属性值”
}
}
}
}

eg:
PUT /lagou-company-index
{
“settings”:{

}
, “mappings”: {
“properties”: {
“name”: {
“type”: “text”,
“analyzer”: “ik_max_word”
},
“job”: {
“type”: “text”,
“analyzer”: “ik_max_word”
},
“logo”: {
“type”: “keyword”,
“index”: “false”
},
“payment”: {
“type”: “float”
}
}
}
}
10 映射属性详解
10.1 type 类型
10.1.1 String类型
text:可分词,不可参与聚合
keyword:不可分词,数据会作为完整字段进行匹配,可以参与聚合
10.1.2 Numerical:数值类型
基本数据类型:long、interger、short、byte、double、float、half_float
浮点数的高精度类型:scaled_float(需要指定一个精度因子,比如10或100。elasticsearch会把真实值乘以这个因子后存储,取出时再原)
10.1.3 Date:日期类型
elasticsearch可以对日期格式化为字符串存储,但是建议我们存储为毫秒值,存储为long,节省空间
10.1.4 Array:数组类型
进行匹配时,任意一个元素满足,都认为满足
排序时,如果升序则用数组中的最小值来排序,如果降序则用数组中的最大值来排序
10.1.5 Object:对象
{
name:“Jack”,
age:21,
girl:{
name: “Rose”, age:21
}
}
10.1.6 geo_point 坐标类型
10.2 index 影响字段的索引情况.
true:字段会被索引,则可以用来进行搜索。默认值就是true
false:字段不会被索引,不能用来搜索
10.3 store 是否将数据进行独立存储
原始的文本会存储在 _source 里面,默认情况下其他提取出来的字段都不是独立存储的,是从_source 里面提取出来的。当然你也可以独立的存储某个字段,只要设置store:true即可,获取独立存储的字段要比从_source中解析快得多,但是也会占用更多的空间,所以要根据实际业务需求来设置,默认为false。
10.4 analyzer:指定分词器
一般我们处理中文会选择ik分词器 ik_max_word ik_smart
11 修改索引映射关系
PUT /索引库名/_mapping
{
“properties”: {
“字段名”: {
“type”: “类型”,
“index”: true,
“store”: true,
“analyzer”: “分词器”
}
}
}
修改映射增加字段 做其它更改只能删除索引 重新建立映射

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐