kibana的Dev Tools控制板 常用的es查询语句

2024-02-06 01:32

本文主要是介绍kibana的Dev Tools控制板 常用的es查询语句,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

--------------- 索引相关查询

//查询所有索引及容量

    GET _cat/indices

//查询索引映射结构
    GET my_index/_mapping

// 查询所有索引映射结构    

    GET _all

// 查询所有的相同前缀索引

    GET my-*/_search

// 查询所有索引模板   

    GET _template

// 查询具体索引模板

    GET _template/my_template

 

---------------集群相关

 

//查询集群健康状态

    GET _cluster/health

// 查询所有节点

    GET _cat/nodes

// 查询索引及分片的分布
    GET _cat/shards

// 查询所有插件

    GET _cat/plugins

 

-----------------写入模块

-----写入索引模板

PUT _template/my_template
{
    "template" : "my-*",
    "order" : 0,
    "settings" : {
         "number_of_shards" : 10,
 "number_of_replicas" : 0
    },
    "mappings": {

      "default": {

 
  1. "_all": {

  2. "enabled": false

  3. },

        "properties": {
          "name": {
            "type": "text"
          },
          "age": {
            "type": "long"
          }
        }
    }
  }

}

-----------创建索引映射结构

 
  1. PUT my_index

  2. {

  3. "mappings": {

  4. "doc": {

  5. "properties": {

  6. "name": {

  7. "type": "text"

  8. },

  9. "blob": {

  10. "type": "binary"

  11. }

  12. }

  13. }

  14. }

  15. }

-------------写入索引

 
  1. PUT my_index/doc/1

  2. {

  3. "name": "Some binary blob",

  4. "blob": "U29tZSBiaW5hcnkgYmxvYg=="

  5. }

-------------删除

// 索引

DELETE my-index

// 模板

DELETE  _template/my_template 

 

--------------DSL query查询

---------使用本地插件查询

{

"size": 10,

"from": 0,

"query": {
"function_score": {
"script_score": {
"script": {
"inline": "featurescore",
"lang": "native",
"params": {
"name": "you",
"age": "20"
}
}
},
"query": {
"bool": {
"filter": {
"term": {
"name": "you"
}
}
}
}
}
},
"_source": {
"includes": ["name", "age"]
},
"sort": {
"_score": {
"order": "asc"
}
}

}

// 说明 inline 指定插件名   lang指定插件形式  native是本地插件   param定义参数  插件里使用XContentMapValues.nodeStringValue(params.get("name"), null)获取  ,  elasticseach里存储的字段值使用 source().get("name") 来获取,插件会并行处理es中每一条数据 ; 

_source 指定返回字段 , sort 指定插件处理结果的排序字段

---------基础query

//查询所有
GET _search
{
  "query": {
    "match_all": {}
  }
}

// 查询单个索引 的 固定属性

---精确匹配

GET _search
{
  "query": {
    "term": { "name" : "you" }
  }
}

 

---模糊匹配

GET _search
{
  "query": {
    "match": { "name" : "you" }
  }
}

---范围查找

GET _search
{
  "query": {
    "range": {

        "age":{ "gte" : 15 , "lte" : 25 }

    }
  }
}

// 功能性查询

-----过滤

GET my_index/_search
{
  "query": {
    "bool": {
      "filter": {
        "term":{"age":1095}
      }
    }
  }
}

---或  or

GET my - test / _search {
"query": {
"bool": {
"should": [{
"term": {
"name": "you"
}
}, {
"match": {
"age": 20
}
}]
}
}
}

---与 AND

GET my-test/_search
{
  "query": {
    "bool": {
      "must" : [{
        "match" : {
          "name" : "you"
        }
      },{
        "range":{
        "age":{
          "from" : 10 , "to" : 20
        } 
        }
      }]
    }
  }
}

---必须 =

GET my_index/_search
{
  "query": {
    "bool": {
      "must" : {
        "range" : {
          "age" : { "from" : 10, "to" : 20 }
        }
      }
    }
  }
}

---必须不 not

GET my_index/_search
{
  "query": {
    "bool": {
      "must_not" : {
        "term" : {
          "name" : "you"
        }
      }
    }
  }
}

----复合查找

GET my_index/_search 
{
"query": {
"bool": {
"should": [{
"match": {
"age": 40
}
}, 
{
"match": {
"age": 20
}
}],
"filter": {
  "match":{
    "name":"you"
  }
}
}
}
}

------索引迁移

---场景 从A索引 复制到B索引
POST _reindex
{
  "source": {
    "index": "my_index"
  },
  "dest": {
    "index": "new_my_index"
  }
}

 

-------------基于查询的删除

POST test-index/_delete_by_query
{
  "query":{
        "term": {
         "cameraId":"00000000002"
        }
  }

}

--查询

GET test-index/_search
{
  "query":{
        "term": {
         "cameraId":"00000000002"
        }
  }
}

这篇关于kibana的Dev Tools控制板 常用的es查询语句的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/682783

相关文章

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

浅谈mysql的sql_mode可能会限制你的查询

《浅谈mysql的sql_mode可能会限制你的查询》本文主要介绍了浅谈mysql的sql_mode可能会限制你的查询,这个问题主要说明的是,我们写的sql查询语句违背了聚合函数groupby的规则... 目录场景:问题描述原因分析:解决方案:第一种:修改后,只有当前生效,若是mysql服务重启,就会失效;

MySQL多列IN查询的实现

《MySQL多列IN查询的实现》多列IN查询是一种强大的筛选工具,它允许通过多字段组合快速过滤数据,本文主要介绍了MySQL多列IN查询的实现,具有一定的参考价值,感兴趣的可以了解一下... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析与优化1.

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

Java常用注解扩展对比举例详解

《Java常用注解扩展对比举例详解》:本文主要介绍Java常用注解扩展对比的相关资料,提供了丰富的代码示例,并总结了最佳实践建议,帮助开发者更好地理解和应用这些注解,需要的朋友可以参考下... 目录一、@Controller 与 @RestController 对比二、使用 @Data 与 不使用 @Dat

Mysql中深分页的五种常用方法整理

《Mysql中深分页的五种常用方法整理》在数据量非常大的情况下,深分页查询则变得很常见,这篇文章为大家整理了5个常用的方法,文中的示例代码讲解详细,大家可以根据自己的需求进行选择... 目录方案一:延迟关联 (Deferred Join)方案二:有序唯一键分页 (Cursor-based Paginatio

Python实现常用文本内容提取

《Python实现常用文本内容提取》在日常工作和学习中,我们经常需要从PDF、Word文档中提取文本,本文将介绍如何使用Python编写一个文本内容提取工具,有需要的小伙伴可以参考下... 目录一、引言二、文本内容提取的原理三、文本内容提取的设计四、文本内容提取的实现五、完整代码示例一、引言在日常工作和学

Redis中的常用的五种数据类型详解

《Redis中的常用的五种数据类型详解》:本文主要介绍Redis中的常用的五种数据类型详解,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis常用的五种数据类型一、字符串(String)简介常用命令应用场景二、哈希(Hash)简介常用命令应用场景三、列表(L

python中time模块的常用方法及应用详解

《python中time模块的常用方法及应用详解》在Python开发中,时间处理是绕不开的刚需场景,从性能计时到定时任务,从日志记录到数据同步,时间模块始终是开发者最得力的工具之一,本文将通过真实案例... 目录一、时间基石:time.time()典型场景:程序性能分析进阶技巧:结合上下文管理器实现自动计时

python之流程控制语句match-case详解

《python之流程控制语句match-case详解》:本文主要介绍python之流程控制语句match-case使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录match-case 语法详解与实战一、基础值匹配(类似 switch-case)二、数据结构解构匹