Es 基础操作 增删改查

ES想知道大家应该都很熟悉了,今天就来稍微介绍入门下 也是为了帮助自己记忆

一. ES专属名称

看上面图就知道了 具体分片副本的就不讲那么细了 还有个倒排索引可以了解下 相当于把内容拆分成分词 然后每个分词都对应哪些内容对应的id 这样查到了分词就能查到哪些内容有这个词

ps :特别强调7.x版本后就没有type了 差不多就相当于索引 = 表 文档=数据了

二**. ES基本操作 (直接学这个就好了 版本7.x)**

1.创建索引(表)

复制代码
PUT /my_index
{
  "settings": {
    "number_of_shards": 1,  // 指定索引的分片数
    "number_of_replicas": 1  // 指定每个主分片的副本数
  },
  "mappings": {
    "properties": {
      "title": {
        "type": "text"  // 标题字段,全文搜索类型
      },
      "author": {
        "type": "keyword"  // 作者字段,适合精确匹配,不用于全文搜索
      },
      "published_date": {
        "type": "date"  // 出版日期字段,存储日期类型
      },
      "content": {
        "type": "text"  // 内容字段,全文搜索类型
      },
      "tags": {
        "type": "keyword"  // 标签字段,适合存储多个标签,支持精确匹配
      }
    }
  }
}

删除修改等后面遇到了再查吧

2.文档操作增删改查 (同样只写个最基础的)

新增修改

复制代码
PUT /user/user/1
{
  "id":1,
  "name":"战三",
  "age":18
}

post全量新增修改 可以不指定id(不指定记得返回保存id)

put全量新增修改 必须指定id

post修改单独某个doc列 需要改成 post /user/user/1/_update

删除

复制代码
// 条件删
POST /my_index/_delete_by_query
{
  "query": {
    "term": {
      "author": "张三"
    }
  }
}
// id删除
DELETE /my_index/_doc/id

三**.查询(比较重要)**

ES主要就是解决查询问题 这个当然是重点

复制代码
{
  "query": {                               // 查询对象
    // 使用 "match_all" 查询,获取所有文档
    "match_all": {}                        
    // 使用 "term" 查询,精确查询
    "term": {
      "price": {
        "value": "1899.99"                 
      }
    }
    // 使用 "match" 查询,匹配列 分词查询文档
   "match": {
      "title": "小米 手机"
    }

    // 使用 "match_phras" 查询,匹配列 不分词查询文档
   "match_phras": {
      "title": "小米 手机"
    }

    // 使用 "range" 查询,匹配范围 查询文档
    "range": {
      "price": {
        "gte": 1600,
        "lte": 2800
      }
    }


  },
  "from": 0,                               // 从第0个结果开始,表示第一页
  "size": 10,                              // 返回10条结果,表示每页显示10条文档
  "sort": [                                // 排序数组,用于指定结果的排序
    {
      "timestamp": {                       // 按照timestamp字段进行排序
        "order": "desc"                   // 降序排列,最新的文档排在前面
      }
    }
  ]
}
相关推荐
贝多芬也爱敲代码7 小时前
如何减小ES和mysql的同步时间差
大数据·mysql·elasticsearch
异次元的星星8 小时前
智慧新零售时代:施易德系统平衡技术与人力,赋能门店运营
大数据·零售
深思慎考10 小时前
ElasticSearch与Kibana 入门指南(7.x版本)
大数据·elasticsearch·jenkins
银行数字化转型导师坚鹏10 小时前
如何设计优秀的企业微信私域运营实战培训方案
大数据·python·企业微信
悠闲蜗牛�11 小时前
人工智能时代下的全栈开发:整合AI、大数据与云原生的实践策略
大数据·人工智能·云原生
ml魔力信息12 小时前
活体检测与防伪技术的安全与隐私分析
大数据·人工智能·安全·隐私保护·生物识别·活体检测
数据要素X13 小时前
寻梦数据空间 | 架构篇:从概念到落地的技术实践与突破性创新
大数据·运维·数据仓库·微服务·数据治理·数据中台·可信数据空间
IT学长编程14 小时前
计算机毕业设计 基于EChants的海洋气象数据可视化平台设计与实现 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
大数据·hadoop·python·毕业设计·课程设计·毕业论文·海洋气象数据可视化平台
呆呆小金人15 小时前
SQL入门: HAVING用法全解析
大数据·数据库·数据仓库·sql·数据库开发·etl·etl工程师
problc16 小时前
PostgreSQL + Redis + Elasticsearch 实时同步方案实践:从触发器到高性能搜索
redis·elasticsearch·postgresql