Elasticsearch基础操作

一、Restful接口

Elasticsearch通过RESTful接口提供与其进行交互的方式。在ES中,提供了功能丰富的RESTful API的操作,包括CRUD、创建索引、删除索引等操作。你可以用你最喜爱的 web 客户端访问 Elasticsearch 。事实上,你甚至可以使用 curl 命令来和 Elasticsearch 交互。

Elasticserch为大部分编程语言(诸如java/javascript/go/ruby等等)提供了官方客户端。所有这些可以在Elasticsearch Clients找到。

二、使用Kibana可视化操作

Kibana是一个用于数据可视化和分析的开源工具。它是Elasticsearch的一个组件,用于在Elasticsearch索引中搜索、分析和互动式地可视化数据。Kibana提供了丰富的图表和图形,可以帮助用户更好地理解和分析数据,从而支持数据驱动的决策和洞察力的发现。

启动之后,浏览器输入:   http://localhost:5601/  ,进入开发者工具控制台

官方学习教程传送门-->  elasticsearch入门教程

三、索引操作

3.1创建索引

PUT /employee?pretty

3.2查询所有索引

其中,employee是我们自己创建的索引,插入了0条数据。

3.3删除索引

四、文档操作

4.1插入新文档

PUT /index_name/_doc/document_id
{"field1": "value1","field2": "value2",...
}

其中:index_name代表索引名字,document_id代表文档的id。如果不指定,ES则自动创建一个。如果id已存在,则旧的数据被覆盖

4.2更新文档

POST /employee/doc/1
{"name": "Lily"
}

以上命令将索引为customer,id为1的文档,name属性进行更新。

4.3删除文档

4.4查询所有文档

GET /索引名/_search
{"query": {"match_all": {}}
}

4.5查询指定字段

五、query语法

5.1查询语句的基本语法结构

GET /索引名/_search
{"query": {"查询类型": {"字段名": "查询条件"}}
}
  • GET:请求的类型,表示发送一个GET请求。
  • /索引名/_search:指定要查询的索引和类型。
  • "query":查询的关键字,表示要进行查询操作。
  • "查询类型":查询的类型,如match、term、range等。
  • "字段名":要查询的字段名。
  • "查询条件":具体的查询条件。

5.2match和term的区别

  1. Match查询:Match是一种全文搜索查询,它会将查询字符串分词,并将分词后的项与文档中的词项进行匹配。它会根据查询字符串的分词结果来搜索包含任意匹配项的文档。Match查询使用的是全文搜索的相关性算法,会给每个匹配的文档一个相关性得分。适合text 类型的字段。
  2. Term查询:Term是一种精确匹配查询,它会将查询字符串作为一个整体与文档中的词项进行精确匹配。Term查询不进行分词,而是将查询字符串作为一个单独的术语进行搜索,不适合用于text类型的字段(官网原话Avoid using the term query for text fields
PUT my-index-001
{"mappings": {"properties": {"full_text": { "type": "text" }}}
}PUT my-index-001/_doc/1
{"full_text":   "Hello Elastic!"
}

新建一个索引,包含一个名为“full_text”的text字段。ES会将text字段拆分为["Hello","Elastic"]。使用term搜索,结果为空。(term为精确匹配,而text字段已被拆分,所以匹配不到)

使用match匹配,则可以查询得到(因为match属于模糊查询,查询前也会进行拆词)

新建一个索引,包含一个名为“full_text”的keyword字段。使用term查询,得到结果。ES不会对keyword类型的字段进行拆词。

5.3范围查询

GET /<index_name>/_search
{"query": {"range": {"<field_name>": {"gte": "<lower_limit>","lte": "<upper_limit>"}}}
}

其中范围量词有:

gte:大于等于 ;

gt:大于 ;

lte:小于等于;

lt:小于

示例代码:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/740310.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

k8s简单架构图

背景 k8s目前应用的很广泛&#xff0c;它其实也是采用分布式系统中最常见的一个master管理节点多个worker节点的方式构成的&#xff0c;本文就简单看下k8s的架构 k8s架构图 1.管理节点master&#xff0c;master节点主要有三个模块构成 1.1 APIServer模块&#xff1a;这个模块…

记录 Dubbo+Zookeeper 学习Demo

DubboZookeeper ZookeeperZookeeper 下载可能出现的问题 辅助程序下载dubbo-admin项目打包工程打包常见问题 SpringBoot集成Dubbo项目依赖定义服务接口服务端实现服务端配置依赖代码实现 消费端实现服务端配置依赖代码实现 启动 结合Dubbo官网学习如何完成SpringBootDubboZooke…

关于tomcat服务器配置及性能优化的20道高级面试题

1. 请描述Tomcat服务器的基本架构和组件。 Tomcat服务器的基本架构主要包括Server、Service、Connector和Container等组件。具体来看&#xff1a; Server&#xff1a;是Tomcat中最顶层的容器&#xff0c;代表着整个服务器。它负责运行Tomcat服务器&#xff0c;例如打开和关闭…

Mac上.bashrc转.zshrc时,设置PATH环境变量注意事项

由于最近系统坏了刚好就升级了&#xff0c;也就打算使用新的 zsh 了&#xff0c;反正平时在 WSL 和树莓派上用的都是 bash。按理来说应该没有什么困难&#xff0c;但还是遇到了一些问题&#xff0c;都是细节&#xff0c;需要记录一下&#xff0c;防止后续一些东西的更新比较麻烦…

React 教程

学习主要来源 React 教程 | 菜鸟教程 React 是一个用于构建用户界面的 JAVASCRIPT 库。 React 主要用于构建 UI&#xff0c;很多人认为 React 是 MVC 中的 V&#xff08;视图&#xff09;。 React 起源于 Facebook 的内部项目&#xff0c;用来架设 Instagram 的网站&#xff0…

学习笔记-华为IPD转型2020:2,IPD的核心思想

2&#xff0c;IPD的核心思想 以客户为导向&#xff1a;应该开发什么产品&#xff1f; 应该开发哪些产品&#xff1f;华为的“基本法”规定&#xff0c;其目的是为客户服务&#xff08;Huawei&#xff0c;1998&#xff09;。然而&#xff0c;在IPD实施后&#xff0c;对这种以客…

如何在mac下使用homebrew安装 mysql?

安装 Homebrew&#xff1a; 如果尚未安装 Homebrew&#xff0c;可以通过以下命令在终端中安装&#xff1a; /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"更新 Homebrew&#xff1a; 运行以下命令以确保 Homebr…

C#/.Net 多线程下载m3u8视频

C#/.Net 多线程下载m3u8视频 下载网络文件方法下载m3u8 .HttpGet() 是我自己封装的HTTP请求方法 下载网络文件方法 /// <summary> /// 下载网络文件 /// </summary> /// <param name"url">文件地址</param> /// <param name"savePa…

视频监控/云存储EasyCVR视频融合平台设备增删改操作不生效是什么原因?

国标GB28181协议EasyCVR安防平台可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力&#xff0c;平台支持7*24小时实时高清视频监控&#xff0c;能同时播放多路监控视频流&#xf…

安卓kotlin面试题 81-90

81. 简述 Kotlin 中泛型型变-协变、逆变、不变 ?Kotlin 中泛型引入了 in 和 out:逆变(In) 如果你的类是将泛型对象作为函数的参数,那么可以用 in:interface Consumer { fun consume(item: T) } 可以称其为 consumer class/interface,因为其主要是消费指定泛型对象…

手机App防沉迷系统C卷(JavaPythonC++Node.jsC语言)

智能手机方便了我们生活的同时,也侵占了我们不少的时间。"手机App防沉迷系统"能够让我们每天合理的规划手机App使用时间,在正确的时间做正确的事。 它的大概原理是这样的: 1、在一天24小时内,可注册每个App的允许使用时段; 2、一个时段只能使用一个App,举例说明…

[linux] socket 非阻塞模式使用注意事项

在使用 socket 的一些 api 的时候&#xff0c;默认情况下都是阻塞模式。比如使用 tcp socket 时&#xff0c;客户端调用 connect() 创建连接&#xff0c;connect() 返回的时候要么是创建连接成功了&#xff0c;要么是出现了错误&#xff0c;反正 connect() 返回的时候结果是确定…

Hadoop面经

hadoop原理 请说下 HDFS 的组织架构描述HDFS的读写流程HDFS 在读取文件的时候&#xff0c;如果其中一个块突然损坏了怎么办HDFS 在上传文件的时候&#xff0c;如果其中一个 DataNode 突然挂掉了怎么办 NameNode 在启动的时候会做哪些操作Secondary NameNode 了解吗&#xff0c;…

get命令使用提交代码

当你想要通过Git提交代码时&#xff0c;以下是一个详细的案例&#xff0c;包括从创建更改到推送到远程仓库的整个过程&#xff1a; 首先&#xff0c;确保你已经在本地仓库目录中进行了需要的更改。 添加更改到暂存区&#xff1a; git add . 这会将所有更改添加到Git的暂存区&…

微信小程序开发系列(二十九)·界面交互API·loading 提示框、showModal模态对话框、showToast消息提示框

目录 1. loading 提示框 1. 1 wx.showLoading()显示loading提示框 1.2 wx.hideLoading()关闭 loading 提示框 2. showModal 模态对话框 3. showToast 消息提示框 小程序提供了一些用于界面交互的 API&#xff0c;例如&#xff1a;loading 提示框、消息提示框、模态对…

高效的ElasticSearch Java API - my-elasticsearch-starter

ES Java Api有很多种&#xff0c;本文主要是基于Spring Boot进行封装的&#xff0c;为什么选择Spring Boot&#xff0c;可以看往期文章 Elasticsearch入门必读指南&#xff1a;到底选择哪个ES版本更合适 。 Spring Boot现在也是Java生态中主流的开发框架使用最广泛&#xff0c;…

信息系统项目管理师011:数字政府(1信息化发展—1.4数字中国—1.4.2数字政府)

文章目录 1.4.2 数字政府1.数字新特征2.主要内容 1.4.2 数字政府 信息技术的革新改变了人们传统的工作、学习、生活和娱乐方式&#xff0c;同时对政府提供信息服务&#xff0c;公民参与政府民主决策的方式提出了挑战。利用信息技术改进政府工作及服务的效率&#xff0c;形成新的…

python学习1:csv模块、time模块、random、jieba、worldcloud、pycharm的虚拟环境认识、black格式化文件

标准库与第三方库 模块&#xff08;modules&#xff09;&#xff1a;是包含python函数和变量的文件&#xff0c;名称符合Python标识符要求&#xff0c;并使用.py后缀 包&#xff08;package&#xff09;&#xff1a;是包含其他模块、包的文件夹。名称符合Python标识符要求&am…

安装配置HBase

HBase集群需要整个集群所有节点安装的HBase版本保持一致&#xff0c;并且拥有相同的配置&#xff0c;具体配置步骤如下&#xff1a; 1. 解压缩HBase的压缩包 2. 配置HBase的环境变量 3. 修改HBase的配置文件&#xff0c;HBase的配置文件存放在HBase安装目录下的conf中 4. 首…

蓝桥杯每日一题 走迷宫bfs 超超详细解释!!!

昨天学习了bfs的基本概念&#xff0c;今天来做一道经典习题练练手吧&#xff01; bfs常用的两类题型 1.从A出发是否存在到达B的路径(dfs也可) 2.从A出发到B的最短路径&#xff08;数小:<20才能用dfs&#xff09; 遗留的那个问题的答案- 题目&#xff1a;走迷宫 答案&…