首页 > 其他分享 >03-Elasticsearch-基本语法

03-Elasticsearch-基本语法

时间:2022-10-03 05:11:40浏览次数:53  
标签:03 index doc GET 语法 索引 Elasticsearch my id

查询[ES]

查询ES信息

GET /

查询集群健康状态

GET /_cluster/health

增删改索引

创建索引并指定主分片和副本数

PUT /my_doc
{
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 0
  }
}

创建索引并指定映射

PUT /index_mappings
{
  "mappings": {
    "properties": {
        # 字段名称
      "realname":{
          # 字段类型
        "type": "text",
          # 是否被索引, 默认为true
        "index": true
      },
      "username":{
        "type": "keyword",
        "index": false
      }
    }
  }
}

修改索引Mappings

不支持

增加索引Mappings字段

POST /index_mappings/_mapping
{
  "properties": {
    "id": {
      "type": "long"
    },
    "age": {
      "type": "integer"
    }
  }
}

自动设置Mappings

新增index

PUT /my_doc
{
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 0
  }
}

新增索引记录

# 可以指定ID, 也可以不指定
POST /my_doc/_doc/
{
  "id": 1001,
  "name": "imooc-1",
  "desc": "imoocisverygood,慕课网非常牛!",
  "create_date": "2019-12-24"
}

新增记录有如果index没有mapping就会自动映射

修改索引记录

# 增量修改
POST /my_doc/_update/Fxu1NYMBTxHwTTCGbOwO
{
  "doc":{
    "name":"我是慕课网2"
  }
}
# 全量修改
PUT /my_doc/_doc/Fxu1NYMBTxHwTTCGbOwO
{
  "name":"我是delete"
}

基于乐观锁修改记录

# 查询数据
GET /my_doc/_doc/zBu3NYMBTxHwTTCGLewF
# 返回结果
{
  "_index" : "my_doc",
  "_type" : "_doc",
  "_id" : "zBu3NYMBTxHwTTCGLewF",
  "_version" : 1,
  "_seq_no" : 2,
  "_primary_term" : 1,
  "found" : true,
  "_source" : {
    "id" : 1003,
    "name" : "imooc-3",
    "desc" : "imooc is niubility, 慕课网很好很强大!",
    "create_date" : "2019-12-26"
  }
}
# 基于版本修改 正确的版本
POST /my_doc/_update/zBu3NYMBTxHwTTCGLewF?if_seq_no=2&if_primary_term=1
{
  "doc":{
    "name":"imooc-31"
  }
}
# 返回结果 修改成功 版本升级
{
  "_index" : "my_doc",
  "_type" : "_doc",
  "_id" : "zBu3NYMBTxHwTTCGLewF",
  "_version" : 2,
  "result" : "updated",
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "failed" : 0
  },
  "_seq_no" : 13,
  "_primary_term" : 2
}
# 基于版本修改 错误的版本
POST /my_doc/_update/zBu3NYMBTxHwTTCGLewF?if_seq_no=2&if_primary_term=2
{
  "doc":{
    "name":"imooc-31"
  }
}
# 返回结果 修改失败 版本不一致
{
  "error": {
    "root_cause": [
      {
        "type": "version_conflict_engine_exception",
        "reason": "[zBu3NYMBTxHwTTCGLewF]: version conflict, required seqNo [2], primary term [2]. current document has seqNo [13] and primary term [2]",
        "index_uuid": "OQtxdWrTQRCVsOZFKLrPqA",
        "shard": "0",
        "index": "my_doc"
      }
    ],
    "type": "version_conflict_engine_exception",
    "reason": "[zBu3NYMBTxHwTTCGLewF]: version conflict, required seqNo [2], primary term [2]. current document has seqNo [13] and primary term [2]",
    "index_uuid": "OQtxdWrTQRCVsOZFKLrPqA",
    "shard": "0",
    "index": "my_doc"
  },
  "status": 409
}

删除索引记录

# 根据_id删除记录, 只是逻辑删除, 后续ES会自动清理
DELETE /my_doc/_doc/{_id}

删除索引

DELETE /索引名称

字段类型汇总

查询索引

索引管理里面查看

查询索引信息

GET /索引名称

查询索引列表

# 不携带列头
GET /_cat/indices
# 携带列头
GET /_cat/indices?v

索引字段分词

GET /index_mappings/_analyze
{
  "field": "realname",
  "text": ["imooc is very good!"]
}

在增加索引时, 字段index为TRUE时才会被分词

根据ID查询记录

# 根据_id查询记录
GET /my_doc/_doc/{_id}

查询全部记录

GET /my_doc/_search

查询记录是否存在

HEAD /my_doc/_doc/{_id}

 

标签:03,index,doc,GET,语法,索引,Elasticsearch,my,id
From: https://www.cnblogs.com/flower-dance/p/16749928.html

相关文章

  • 04-Elasticsearch-ES集成IK分词器
    分词器分词器汇总分词器拆分方式standard空格simple非字母whitespace空格stop去除英文的助词(atheis)keyword不拆分......
  • 03-Elasticsearch-基本语法模拟数据
    模拟数据增删改数据POST/my_doc/_doc/{"id":1001,"name":"imooc-1","desc":"imoocisverygood,慕课网非常牛!","create_date":"2019-12-24"}P......
  • 01-Elasticsearch[简介, 核心术语, 架构原理, 倒排索引]
    什么是分布式搜索引擎搜素引擎分布式存储与搜索Lucene,Solr,ES倒排序索引Lucene是类库solr基于LuceneES基于LuceneES核心术语ES集群架构原理倒排索引......
  • 02-Elasticsearch-基于Linux安装ES
    基于Linux安装ES下载官网https://www.elastic.co/cn/downloads/past-releases#elasticsearch使用7.4.2安装上传到Linux#解压tar-zxvfelasticsearch-7.4.2-......
  • 03-分布式会话[动静分离会话, 集群分布式系统会话]
    动静分离会话用户请求服务端,由于动静分离,前端发起HTTP请求,不会携带任何状态,当用户第一次请求以后,我们手动设置一个Token,作为用户会话,存入Redis中,如此作为......
  • Dockerfile常用语法
    FROM功能为指定基础镜像,并且必须是第一条指令。如果不以任何镜像为基础,那么写法为:FROMscratch。同时意味着接下来所写的指令将作为镜像的第一层开始语法:FROMFROM:......
  • nginx访问静态资源文件报错403的解决方案
    问题描述访问linux服务器得到文件路径正确,但是访问的时候就是报403错误,初步判断应该是权限不够导致的!解决方案给需要访问的文件分配读写权限执行下面的命令给需要......
  • 「HDU4035」 Maze
    \(\texttt{「HDU4035」Maze}\)\(\texttt{Describe}\)迷宫有\(n\)个房间,由\(n-1\)条隧道连通起来形成了一棵树,从结点\(1\)出发,在每个结点\(i\)都有\(3\)种可能......
  • day03-MySQL基础知识02
    MySQL基础知识024.CRUD数据库CRUD语句:增(create)、删(delete)、改(update)、查(Retrieve)Insert语句(添加数据)Update语句(更新数据)Delete语句(删除数据)Select语句......
  • ABAP语法笔记08 - 事件2和GUI状态
    ATLINE-SELECTION."双击行的时候触发的事件一般用来跳转TOP-OF-PAGEDURINGLINE-SELECTION."双击行显示的次级表单的抬头执行逻辑 GETCURSORFIELDfi......