ElasticSearch接口

DSL语法

  • DSL为ES过滤数据时的语法,可用于查询、删除等操作

基本构成

  • 默认分页查询,size默认为10。ES查询默认最大文档数量限制为10000,可通过 index.max_result_window 配置来控制,建议考虑通过滚动查询或其他策略实现超过10000限制的查询
copy
{ "query": { "match": { } }, "from": 0, "size": 10 }

范围查询:terms

copy
{ "query": { "terms": { "fieldName": [ "value1", "value2" ] } } }

模糊查询:match查询

copy
{ "query": { "bool": { "must": [ { "match": { "字段名": "字段值" } }, { "terms": { "字段名": ["字段值"] } } ] } } }

文档操作

搜索文档

  • 接口:http://<ip>:<port>/<index_name>/_search
  • 请求方式:POST
  • 请求参数:DSL语法

删除文档

  • 接口:http://<ip>:<port>/<index_name>/_delete_by_query
  • 请求方式:POST
  • 请求参数:DSL语法

索引操作

查询索引的mapping

  • 接口:http://<ip>:<port>/<index_name>/_mapping
  • 请求方式:GET

删除索引

  • 接口:http://<ip>:<port>/<index_name>
  • 请求方式:DELETE

创建索引

  • 接口:http://<ip>:<port>/<index_name>
  • 请求方式:POST
  • 请求参数:
  • settings:设置索引的分片等配置
  • mappings:设置索引的字段,同时可设置字段的分词器,关键字为 analyzer
copy
{ "settings": { "number_of_shards": 3, "number_of_replicas": 2 }, "mappings": { "_doc": { "properties": { "commodity_id": { "type": "long" }, "commodity_name": { "type": "text", "analyzer": "ik_smart" }, "picture_url": { "type": "keyword" }, "price": { "type": "double" } } } } }
posted @ 2024-08-13 09:01  柯南小海盗  阅读(51)  评论(0编辑  收藏  举报
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起