Elasticsearch 常用功能

Elasticsearch适合海量数据(PB级别的)搜索,最多延迟1秒,实施高可用。现在公司里的商品信息、门店信息都使用ES了。

  • Elasticsearch常用术语

  1. Index索引:可以理解为MYSQL里的数据库
  2. Type索引中的数据类型:可理解为mysql里的表table
  3. json格式的Documetn文档数据:就是存在ES里的一条数据,type里存可存放多个文档
  4. Field字段,文档里的属性,例如性能年龄;mapping描述相关属性
  5. Query DSL查询语法
  6. index索引(数据库)-->type类型(表)-->document记录-->field 字段   mapping字段的描述
  7.  常用查询语言:ES 支持RESfulweb接口,可以用json格式对文档进行get/post/put/delete(查询/增加 修改/删除);es是基于索引来搜索的,倒排索引

  • 操作入口

  

  • Elasticsearch的增删改查

  • 新增索引、查看索引

  

  #match_all查询所有记录;includes显示指定的属性 

  

  

  

  match为分词查找,可以找到skuName里有 ”鸡蛋“、”鸡“、或”蛋”  的记录 

  

  #match_phrase短语匹配查询,先分词 分词后位置 不变进行匹配

  

 

  term精确查询 并不知道分词器的存在,指定一个关键词;term指定多个关键词;from,size控制返回的数量;from从第几个文档开始(索引从0开始);size结果取几个文档

  

          

  • 更新记录:

  •  根据id整条覆盖

  put /索引名/_doc/{id} 入参为”_source”的整个值域 如下所示

  

 

  

  •  根据id 修改部分属性

  POST /索引名/_update/{id} 入参里的doc内容为”_source”的值域里的某个属性

  

  • 根据查询条件更新

  query通过查询条件指定要更新的文档范围,script是要执行的脚本内容,"source":"ctx._source.skuName ='XXX' " 其中skuName是要更新的字段名

  

 

posted @ 2023-12-02 10:02  LCX测试小姐姐  阅读(20)  评论(0编辑  收藏  举报