elasticsearch7.x

发布时间 2023-03-22 21:14:03作者: trump2

相比6.x,去掉了type,默认都是_doc

参见https://www.bilibili.com/video/BV1pV4y1K7WL?p=8&vd_source=b879d4ff10c4ff63bbd44d7f0839ffa2

几个小知识: 1. filter会最先执行; 2.分配相当于分表,分表可以在1台机器上,也可以在不通的机器上(只是我们一般分片数设为节点数的整数倍);  3.分片数不可修改

kibana操作es:

0.查看xxx下type的结构:

1.添加表结构

2.添加

 

3.删除del

4.修改

  

5.查询get, 可以查一个/xxx/xxx/id;  可以查多个/xxx/xxx/_search

  {

    "query"{  

      "match_all"{} // 查全部

      "term""orientation""value""东南" } // 按分词在orientation中查询, 只有text才会分词,其他的都是"等于"

      "range""id""gte"5, "lte"} // 范围查询

      "prefix": { "houseType": { "value": "两" } } // 相当于like "两%"

      "wildcard": { "orientation": { "value": "东*" } } // 模糊查询,注意所查字段不能分词, 相当于like

      "ids": { "values": ["5","8"] } // id范围

      "bool":{"must":[{"range":{"id":{"gte":5,"lte":8}}},{"wildcard":{"renovation":{"value":"精*"}}}],"must_not":[{"wildcard":{"ownerShip":{"value":"comm?"}}}]} // bool查询must=and, mustnot=not, should=or

      "highlight":{"pre_tags":["<span style='color:red'>"],"post_tags":["</span>"],"require_field_match":false,"fields":{"*":{}}} // 高亮, require_field_match默认是true(true表示只高亮查询的字段, false 表示只要高亮所有字段中匹配到的)

      "multi_match""query""你好", "fields"["info","details"} // 多字段查询(指定字段中只要有1个能查询到内容, 就会显示出来!) 可以通过should实现.

    },

    "_source"["houseType", "area"], // 查字段

    "sort""id""order""desc" ], // 排序

    "from"1, "size"3, // 分页

  }