ElasticSearch索引的操作

1.1 索引的操作

1.1 创建一个索引

语法如下

# 创建一个索引
PUT /person
{
 "settings": {
   "number_of_shards": 5,
   "number_of_replicas": 1
}
}
1.2 查看索引信息

语法如下

# 查看索引信息
GET /person
 

 

 

1.3 删除索引

语法如下

# 删除索引
DELETE /person
 

1.2 创建索引并指定数据结构

语法如下

# 创建索引,指定数据结构
PUT /book
{
 "settings": {
   # 分片数
   "number_of_shards": 5,
   # 备份数
   "number_of_replicas": 1
},
 # 指定数据结构
 "mappings": {
   # 类型 Type
   "novel": {
     # 文档存储的Field
     "properties": {
       # Field属性名
       "name": {
  # 类型
         "type": "text",
  # 指定分词器
         "analyzer": "ik_max_word",
  # 指定当前Field可以被作为查询的条件
         "index": true ,
  # 是否需要额外存储
         "store": false
      },
       "author": {
         "type": "keyword"
      },
       "count": {
         "type": "long"
      },
       "on-sale": {
         "type": "date",
          # 时间类型的格式化方式
         "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
      },
       "descr": {
         "type": "text",
         "analyzer": "ik_max_word"
      }
    }
  }
}
}

1.3 文档的操作

文档在ES服务中的唯一标识,_index_type_id三个内容为组合,锁定一个文档,操作是添加还是修改。

1.3.1 新建文档

自动生成_id

# 添加文档,自动生成id
POST /book/novel
{
 "name": "盘龙",
 "author": "我吃西红柿",
 "count": 100000,
 "on-sale": "2000-01-01",
 "descr": "山重水复疑无路,柳暗花明又一村"
}

手动指定_id

# 添加文档,手动指定id
PUT /book/novel/1
{
 "name": "红楼梦",
 "author": "曹雪芹",
 "count": 10000000,
 "on-sale": "1985-01-01",
 "descr": "一个是阆苑仙葩,一个是美玉无瑕"
}

 

1.3.2 修改文档

覆盖式修改

# 添加文档,手动指定id
PUT /book/novel/1
{
 "name": "红楼梦",
 "author": "曹雪芹",
 "count": 4353453,
 "on-sale": "1985-01-01",
 "descr": "一个是阆苑仙葩,一个是美玉无瑕"
}

doc修改方式

# 修改文档,基于doc方式
POST /book/novel/1/_update
{
 "doc": {
    # 指定上需要修改的field和对应的值
   "count": "1234565"
}
}

 

1.3.3 删除文档

根据id删除

# 根据id删除文档
DELETE /book/novel/_id
 
posted @ 2022-07-21 23:43  forever226  阅读(46)  评论(0)    收藏  举报