Kibana界面的API操作ES

1.创建索引

1.1 指定分片数量和备份数量

1.2 创建默认

2. 查看索引

2.1 查看单个索引设置

2.2 查看所有索引设置

3.文档管理

3.1 添加文档

3.1.1 PUT

3.1.2 POST方式

可以不指定ID,会自动生成一个ID

3.2 查看文档

3.2.1 查看文档全部内容

3.2.2 查看文档部分内容

3.3 修改文档

3.3.1 PUT方式

覆盖

3.3.2 POST方式

只修改部分数据,而不是覆盖

3.4 删除文档

4. 删除索引

5.批量操作

5.1. _mget

5.1.1 同时获取多个文档

5.1.2 同时获取多个文档的部分内容

索引相同的话,可以简写为如下形式

5.2. _bulk

{action:{metadata}}
{requestbody}

action:(行为)

  • create:文档不存在时创建

  • update: 更新文档

  • index:创建新文档或替换已有文档

  • delete:删除一个文档

metadata:_index,_type,_id

5.2.1 创建

6. Query查询

6.1 简单查询

GET /lib3/user/_search?q=name:lisi

# 筛选出包含唱歌的,并且按照年龄从大到小排序
GET /lib3/user/_search?q=internets:changge&sort=age:desc
6.2 term查询和terms查询

会根据倒排索引寻找确切的term,并不知道分词器的存在,适合keywordnumericdate

6.3 match查询

知道分词器的存在,会对field进行分词操作,然后再查询

6.3.1 multi_match

可以从多个字段中筛选出query包含的词

6.3.2 match_phrase

短语匹配

6.4 wildcard查询

支持使用通配符*?来进行查询 *代表0或多个字符 ? 表示任意一个字符

GET /lib3/user/_search
{
"query": {
"wildcard": {
"name": "zhao*"
}
}
}

GET /lib3/user/_search
{
"query": {
"wildcard": {
"name": "zhaol?u"
}
}
}
6.5 fuzzy查询

实现模糊查询,只能少一个字符,多个字符依然无法查询到

高亮

筛选字段和高亮字段要一致

6.6 基于中文的查询

安装ik插件

ik_max_word : 会将文本做最细粒度的拆分;尽可能多的拆分出词语 ik_smart: 做最粗粒度拆分;已经被分出的词语不会再被其他词语占有

# 环境构建
PUT /lib4
{
"settings": {
"number_of_replicas": 1,
"number_of_shards": 5
},
"mappings": {
"user" :{
"properties": {
"name" : {"type": "text","analyzer": "ik_max_word"},
"address" : {"type": "text","analyzer": "ik_max_word"},
"age" : {"type": "integer"},
"internets" : {"type": "text", "analyzer": "ik_max_word"},
"birthday" : {"type" : "date"}
}
}
}
}

from:指定初始位置,size表示长度

6.7 指定返回字段
GET /lib4/user/_search
{
"_source": ["address","name"],
"query": {
"match": {
"internets": "唱歌"
}
}
}

# include 包含
GET /lib4/user/_search
{
"query": {
"match": {
"internets": "唱歌"
}
},
"_source": {
"includes": ["name","address"]
}
}
# 不包含
GET /lib4/user/_search
{
"query": {
"match": {
"internets": "唱歌"
}
},
"_source": {
"excludes": ["age","birthday"]
}
}

6.8 排序

6.9 范围筛选

默认值都为true,包含边界值 "include_lower" : false 不包含下边界 "include_upper" : false 不包含上边界

命令行式API操作

2.xx

curl -XPUT localhost:9200/lib -d'{"number_of_replicas": 1}'

6.xx

curl -X PUT "localhost:9200/lib/" -H 'Content-type: application/json' -d '
{
"settings" : {
"number_of_shards" : 5,
"number_of_replicas" : 1
}
}
'

  

07_Kibana界面操作ES的更多相关文章

  1. SpringBoot操作ES进行各种高级查询

    SpringBoot整合ES 创建SpringBoot项目,导入 ES 6.2.1 的 RestClient 依赖和 ES 依赖.在项目中直接引用 es-starter 的话会报容器初始化异常错误,导 ...

  2. Entity Framework 实体框架的形成之旅--界面操作的几个典型的处理(8)

    在上篇随笔<Entity Framework 实体框架的形成之旅--数据传输模型DTO和实体模型Entity的分离与联合>里面,介绍了在Entity Framework 实体框架里面引入了 ...

  3. //四舍五入//得到倒序//比较字符串//拦截时间,实现超时锁屏//判断是否越狱//配置PodFile//Storyboard中跳转操作//处理不可逆的push界面操作

    //处理不可逆的push界面操作 VerifyRealNameViewController *verifyRealNameCtrl = [VerifyRealNameViewController vi ...

  4. SQL Server 索引的图形界面操作 <第十二篇>

    一.索引的图形界面操作 SQL Server非常强大的就是图形界面操作.关于索引方面也一样那么强大,很多操作比如说重建索引啊,查看各种统计信息啊,都能够通过图形界面快速查看和操作,下面来看看SQL S ...

  5. selenium2支持无界面操作(HtmlUnit和PhantomJs)

    selenium2支持无界面操作(HtmlUnit和PhantomJs) selenium2支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaD ...

  6. 谨慎能捕千秋蝉(三)——界面操作劫持与HTML5安全

    一.界面操作劫持 1)ClickJacking ClickJacking点击劫持,这是一种视觉上的欺骗. 攻击者使用一个透明的.不可见的iframe,覆盖在网页的某个位置上,诱使用户点击iframe. ...

  7. Elasticsearch笔记五之java操作es

    Java操作es集群步骤1:配置集群对象信息:2:创建客户端:3:查看集群信息 1:集群名称 默认集群名为elasticsearch,如果集群名称和指定的不一致则在使用节点资源时会报错. 2:嗅探功能 ...

  8. SpringBoot整合SpringDataElasticSearch操作ES

    (1).添加starter依赖 <dependency> <groupId>org.springframework.boot</groupId> <artif ...

  9. SpringBoot整合Jest操作ES

    (1).添加依赖 <dependency> <groupId>io.searchbox</groupId> <artifactId>jest</a ...

随机推荐

  1. stdmap 用 at() 取值,如果 key 不存在,不好意思,程序崩溃。QMap 用 value()取值,如果 key 不存在,不会崩溃,你还可以指定默认值

    我觉得 Qt6 最应该升级的是容器类 stdmap 在遍历的时候,同时获取 key 与 value 非常方便: for(auto& var:map){    qDebug()<<v ...

  2. 对称加密,非对称加密,数字签名,https

    对称加密和非对称加密 对称加密 概念:加密秘钥和解密秘钥使用相同的秘钥(即加密和解密都必须使用同一个秘钥) 特点:一对一的双向保密通信(每一方既可用该秘钥加密,也可用该秘钥解密,非对称加密是多对一的单 ...

  3. jmeter命令行执行脚本_动态参数设置

    从04月换公司开始,就没静下来心来学习,其中发生了比较多的事情吧,不过不管如何,没坚持学习还是因为懒.本周交接完,下周去入职新公司,该静下心来学点什么了. ---------------------- ...

  4. python火爆背后

    Python是一种非常好的编程语言,也是目前非常有前途的一门学科.有很多工作要做,而且薪水也很高,这已经成为每个人进入IT行业的首选.那么Python能做什么呢?为什么这么热? 那么Python能做什 ...

  5. 回忆一下Node(随时更改,想到什么写什么)

    什么是Node? Node.js 是一个基于Chrome V8 引擎的JavaScript运行环境 Node.js使用了一个事件驱动.非阻塞式I/O的模型,使其轻量又高效 事件驱动: 任务执行,发布者 ...

  6. css 设置overflow:scroll 滚动条的样式

    /* 定义滚动条样式 */ ::-webkit-scrollbar { width: 6px; height: 6px; background-color: rgba(240, 240, 240, 1 ...

  7. SDcms1.8代码审计

    由于工作原因,分析了很多的cms也都写过文章,不过觉得好像没什么骚操作都是网上的基本操作,所以也就没发表在网站上,都保存在本地.最近突然发现自己博客中实战的东西太少了,决定将以前写的一些文章搬过来,由 ...

  8. ChibiOS/RT移植到STM32F407

    官网地址:http://www.chibios.org/dokuwiki/doku.php 下载源码 找到STM32F407的demos程序(chibios\demos\STM32\RT-STM32F ...

  9. 写Django项目的开发工具或者编辑器

    pycharm是写django的最好的编辑器,优先使用pycharm.到官网下载pycharm →https://www.jetbrains.com/pycharm/download→ pycharm ...

  10. 每日一题-——最长公共子序列(LCS)与最长公共子串

    最长公共子序列(LCS) 思路: 代码: def LCS(string1,string2): len1 = len(string1) len2 = len(string2) res = [[0 for ...