Elasticsearch安装并使用Postman访问

news2024/11/20 10:22:49

Elasticsearch,一个强大的开源搜索和分析引擎,已经在全球范围内被广泛应用于各种场景,包括网站搜索、日志分析、实时应用等。由于其强大的功能和灵活性,Elasticsearch 已经成为大数据处理的重要工具。然而,对于许多初次接触 Elasticsearch 的人来说,如何正确安装和配置 Elasticsearch 可能会有些困惑。因此,本文将详细介绍如何在不同的操作系统上安装 Elasticsearch,帮助你快速搭建起 Elasticsearch 的开发或测试环境。


文章目录

        • 1、Elasticsearch安装步骤
          • 1.1、下载
          • 1.2、解压
          • 1.3、启动
          • 1.4、验证
          • 1.5、注意
        • 2、Postman交互
          • 1.1、检查 Elasticsearch 服务状态
          • 1.2、创建一个新的索引
          • 1.3、获取指定索引的信息
          • 1.4、添加文档
          • 1.5、查询指定索引中的所有文档
          • 2.6、其他


1、Elasticsearch安装步骤
1.1、下载

官网下载地址:https://www.elastic.co/cn/downloads/elasticsearch

选择对应配置与版本下载:

image-20231001145824044

1.2、解压

下载压缩包后解压

1.3、启动

其实不存在什么安装不安装,解压完之后 ES 就能直接用了,我们打开文件包,再打开 bin/ 目录,然后打开这个叫 elasticsearch 的文件,即可启动 ElasticSearch::

image-20231001150111456

打开之后等一等:

image-20231001144802593

1.4、验证

Elasticsearch 默认使用端口为 9200,我们打开浏览器,输入域名:

http://localhost:9200/

可以看到:

image-20231001145518914

至此,恭喜你,ElasticSearch 安装成功了。

1.5、注意

如果报错:

received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/[0:0:0:0:0:0:0:1]:9200

原因是 Elasticsearch 开启了安全认证,虽然 started 成功,但访问 http://localhost:9200/ 失败。

解决方案:

找到 config/ 目录下面的 elasticsearch.yml 配置文件,把安全认证开关从原先的 true 都改成 false,实现免密登录访问即可,修改这两处都为 false 后:

image-20231001150500333


2、Postman交互

Elasticsearch 可以与 Postman 交互。Elasticsearch 提供了 RESTful API,可以通过 HTTP 请求进行交互,而 Postman 是一个非常流行的 API 测试工具,可以用来发送 HTTP 请求,因此可以用来与 Elasticsearch 进行交互。

1.1、检查 Elasticsearch 服务状态
方法:GET
URL:http://localhost:9200/

这个 API 用于检查 Elasticsearch 服务的状态,它没有入参。

image-20231001154011320

出参 JSON 对象包含了以下信息:

  • name:节点名称;
  • cluster_name:集群名称;
  • cluster_uuid:集群的唯一标识符;
  • version:包含了关于 Elasticsearch 版本的一些信息,如版本号、构建类型、构建日期等;
  • tagline:Elasticsearch 的标语

通过这个 API,你可以快速检查 Elasticsearch 服务是否正常运行,以及获取服务的一些基本信息。

1.2、创建一个新的索引
方法:PUT
URL:http://localhost:9200/my_index

这个 API 用于创建一个名为 my_index 的新索引

image-20231001160807327

当你发送这个 PUT 请求后,如果索引创建成功,Elasticsearch 会返回一个 JSON 对象,包含了一些关于操作的信息。

这个 JSON 对象包含了以下信息:

  • acknowledged:如果为 true,表示索引创建请求已经被成功接收。
  • shards_acknowledged:如果为 true,表示索引创建操作已经在所有分片上成功完成。
  • index:创建的索引名称。
1.3、获取指定索引的信息
方法:GET
URL:`http://localhost:9200/my_index`

这个 API 用于获取名为 my_index 的索引的信息。

image-20231001161112051

当你发送这个 GET 请求后,如果索引存在,Elasticsearch 会返回一个 JSON 对象,包含了索引的一些信息。

这个 JSON 对象包含了以下信息:

  • my_index:索引的名称。
  • aliases:索引的别名;
  • mappings:索引的映射信息,包括字段名称、字段类型等;
  • settings:索引的设置信息,包括创建日期、分片数量、副本数量、UUID、版本等。

通过这个 API,你可以获取 Elasticsearch 索引的详细信息。

1.4、添加文档
方法:POST
URL:`http://localhost:9200/my_index/_doc`

这个 API 用于在 my_index 索引中添加一个新的文档。

image-20231001163113736

在这个例子中,我们添加了一个新的文档,包含两个字段:nameemail

当你发送这个 POST 请求后,如果添加成功,Elasticsearch 会返回一个 JSON 对象,包含了一些关于操作的信息。

这个 JSON 对象包含了以下信息:

  • _index:文档所在的索引名称。
  • _type:文档的类型(如果有的话)。
  • _id:新添加的文档的 ID。
  • _version:文档的版本号,新添加的文档的版本号为 1。
  • result:操作的结果,这里是 “created”,表示文档已被创建。
  • _shards:操作涉及的分片数量,包括总数、成功数和失败数。
  • _seq_no:操作的序列号。
  • _primary_term:操作的主要术语。

通过这个 API,你可以在 Elasticsearch 索引中添加新的文档。

1.5、查询指定索引中的所有文档
方法:GET
URL:http://localhost:9200/my_index/_search

这个 API 用于查询 my_index 索引中的所有文档

image-20231001163500496

当你发送这个 GET 请求后,Elasticsearch 会返回一个 JSON 对象,包含了查询结果。

这个 JSON 对象包含了以下信息:

  • took:查询操作花费的时间(毫秒)。
  • timed_out:如果为 true,表示查询操作超时。
  • _shards:查询操作涉及的分片数量,包括总数、成功数、跳过数和失败数。
  • hits:查询结果。
  • total:匹配的文档总数。
  • max_score:匹配文档的最大得分。
  • hits:一个数组,包含了匹配的文档。每个文档包括索引名称、文档类型、文档 ID、得分和源文档内容。

通过这个 API,你可以查询 Elasticsearch 索引中的所有文档。

2.6、其他
  1. 获取文档

    方法:GET

    URL:http://localhost:9200/my_index/_doc/1

  2. 更新文档

    方法:POST

    URL:http://localhost:9200/my_index/_update/1

    Body(选择 raw 和 JSON 格式):

    {
        "doc": {
            "name": "Jane Doe"
        }
    }
    
  3. 删除文档

    方法:DELETE

    URL:http://localhost:9200/my_index/_doc/1

  4. 查询所有文档

    方法:GET

    URL:http://localhost:9200/my_index/_search

  5. 复杂查询

    方法:GET

    URL:http://localhost:9200/my_index/_search

    Body(选择 raw 和 JSON 格式):

    {
        "query": {
            "match": {
                "name": "John Doe"
            }
        }
    }
    
  6. 删除索引

    方法:DELETE

    URL:http://localhost:9200/my_index

  7. 批量添加文档

    方法:POST

    URL:http://localhost:9200/my_index/_bulk

    Body(选择 raw 和 JSON 格式):

    { "index" : { "_id" : "1" } }
    { "name" : "John Doe", "email" : "john@example.com" }
    { "index" : { "_id" : "2" } }
    { "name" : "Jane Doe", "email" : "jane@example.com" }
    
  8. 获取多个文档

    方法:GET

    URL:http://localhost:9200/my_index/_mget

    Body(选择 raw 和 JSON 格式):

    {
        "ids" : ["1", "2"]
    }
    
  9. 统计文档数量

    方法:GET

    URL:http://localhost:9200/my_index/_count

  10. 范围查询

方法:GET

URL:http://localhost:9200/my_index/_search

Body(选择 raw 和 JSON 格式):

{
 "query": {
     "range" : {
         "age" : {
             "gte" : 10,
             "lte" : 20
         }
     }
 }
}
  1. 排序查询

方法:GET

URL:http://localhost:9200/my_index/_search

Body(选择 raw 和 JSON 格式):

{
 "query" : {
     "match_all" : {}
 },
 "sort" : [
     { "age" : "desc" }
 ]
}
  1. 聚合查询

方法:GET

URL:http://localhost:9200/my_index/_search

Body(选择 raw 和 JSON 格式):

{
 "aggs" : {
     "avg_age" : { "avg" : { "field" : "age" } }
 }
}
  1. 高亮查询

方法:GET

URL:http://localhost:9200/my_index/_search

Body(选择 raw 和 JSON 格式):

{
 "query" : {
     "match" : { "name" : "John Doe" }
 },
 "highlight" : {
     "fields" : {
         "name" : {}
     }
 }
}
  1. 删除所有文档

方法:POST

URL:http://localhost:9200/my_index/_delete_by_query

Body(选择 raw 和 JSON 格式):

{
 "query": {
     "match_all": {}
 }
}
  1. 创建别名

方法:POST

URL:http://localhost:9200/_aliases

Body(选择 raw 和 JSON 格式):

{
 "actions" : [
     { "add" : { "index" : "my_index", "alias" : "my_alias" } }
 ]
}
  1. 获取集群健康状态

    方法:GET

    URL:http://localhost:9200/_cluster/health

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

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

相关文章

C#,数值计算——Ranq2的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { /// <summary> /// Backup generator if Ranq1 has too short a period and Ran is too slow.The /// period is 8.5E37. Calling conventions same as Ran, above. /// </summary> …

算法题系列10·最长公共前缀

目录 题目描述 思路 实现 题目描述 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀&#xff0c;返回空字符串 ""。示例 1&#xff1a; 输入&#xff1a;strs ["flower","flow","flight"] 输出&#xff1a;&qu…

大数据Flink(九十六):DML:Deduplication

文章目录 DML:Deduplication DML:Deduplication Deduplication 定义(支持 Batch\Streaming):Deduplication 其实就是去重,也即上文介绍到的 TopN 中 row_number = 1 的场景,但是这里有一点不一样在于其排序字段一定是时间属性列,不能是其他非时间属性的普通列。在 ro…

python中实现定时任务的几种方案

目录 while True: sleep()Timeloop库threading.Timersched模块schedule模块APScheduler框架Celery框架数据流工具Apache Airflow概述Airflow 核心概念Airflow 的架构 总结以下几种方案实现定时任务&#xff0c;可根据不同需求去使用不同方案。 while True: sleep() 利用whil…

【2023年11月第四版教材】第17章《干系人管理》(合集篇)

第17章《干系人管理》&#xff08;合集篇&#xff09; 1 章节内容2 管理基础3 管理过程3.1 管理的过程★★★ &#xff08;22上44&#xff09;3.2 管理ITTO汇总★★★ 4 过程1-识别干系人4.1 数据收集★★★4.3数据分析4.4 权力利益方格4.5 数据表现&#xff1a;干系人映射分析…

【数据科学】Scikit-learn[Scikit-learn、加载数据、训练集与测试集数据、创建模型、模型拟合、拟合数据与模型、评估模型性能、模型调整]

这里写目录标题 一、Scikit-learn二、加载数据三、训练集与测试集数据四、创建模型4.1 有监督学习评估器4.1.1 线性回归4.1.2 支持向量机(SVM)4.1.3 朴素贝叶斯4.1.4 KNN 4.2 无监督学习评估器4.2.1 主成分分析(PCA)4.2.2 K Means 五、模型拟合5.1 有监督学习5.2 无监督学习 六…

全新UI彩虹外链网盘系统源码(前后端美化模板)

全新UI彩虹外链网盘系统源码前后端美化模板&#xff0c;支持所有格式文件的上传、生成文件外链、图片外链、音乐视频外链等功能&#xff0c;同时还可以自动生成相应的 UBB 代码和 HTML 代码&#xff0c;支持文本、图片、音乐、视频在线预览。这不仅仅是一个网盘&#xff0c;更是…

竞赛 机器视觉 opencv 深度学习 驾驶人脸疲劳检测系统 -python

文章目录 0 前言1 课题背景2 Dlib人脸识别2.1 简介2.2 Dlib优点2.3 相关代码2.4 人脸数据库2.5 人脸录入加识别效果 3 疲劳检测算法3.1 眼睛检测算法3.2 打哈欠检测算法3.3 点头检测算法 4 PyQt54.1 简介4.2相关界面代码 5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#x…

算法题系列9·最后一个单词的长度

目录 题目描述 实现 题目描述 给你一个字符串 s&#xff0c;由若干单词组成&#xff0c;单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。示例 1&#xff1a; 输入&#xff1a;s "Hello Worl…

WSL安装异常:WslRegisterDistribution failed with error: 0xc03a001a

简介&#xff1a;如果文件夹右上角是否都有两个相对的蓝色箭头&#xff0c;在进行安装wsl时&#xff0c;设置就会抛出 Installing WslRegisterDistribution failed with error: 0xc03a001a的异常 历史攻略&#xff1a; 卸载WSL WSL&#xff1a;运行Linux文件 WSL&#xff1…

关于MAC电脑无法正常登陆H3C iNodes登陆的解决办法

背景 前段时间&#xff0c;单位的网络在做升级改造&#xff0c;网络出口也进行彻底调整同时单位的网络出口设备做了机房物理迁移&#xff0c;迁移后网络正常使用&#xff0c;但是出现自己的MAC电脑无法登陆iNodes问题&#xff0c;总是出现“正在查询SSL 网关参数..查询SSL 网关…

【记录】IDA|IDA怎么查看当前二进制文件自动分析出来的内存分布情况(内存范围和读写性)

IDA版本&#xff1a;7.6 背景&#xff1a;我之前一直是直接看Text View里面的地址的首尾地址来判断内存分布情况的&#xff0c;似乎是有点不准确&#xff0c;然后才想到IDA肯定自带查看内存分布情况的功能&#xff0c;而且很简单。 可以通过View-Toolbars-Segments&#xff0c…

STM32复习笔记(四):独立看门狗IWDG

目录 &#xff08;一&#xff09;简介 &#xff08;二&#xff09;CUBEMX工程配置 &#xff08;三&#xff09;相关函数 总结&#xff1a; &#xff08;一&#xff09;简介 独立看门狗本质是一种定时器&#xff0c;其作用是监视系统的运行&#xff0c;当系统发生错误&…

linux命令行配置音频设备

linux命令行配置音频设备 TLTR在linux命令行播放音乐cmus需要开始声音条件功能才能调节播放的音量&#xff0c;看这个链接&#xff0c;继续折腾&#xff0c;have fun! TLTR 以archLinux为例&#xff0c;把下面软件都装一遍。 sudo pacman -S alsa-utils sudo pacman -S alsa-…

怎么才能实现一个链接自动识别安卓.apk苹果.ipa手机和win电脑wac电脑

您想要实现的功能是通过检测用户代理&#xff08;User Agent&#xff09;来识别访问设备类型并根据设备类型展示相应的页面。您可以根据以下步骤进行实现&#xff1a; 选择后端语言和框架&#xff0c;例如&#xff1a;Node.js、Express。 创建一个新的Express项目。 编写一个…

【单片机】16-LCD1602和12864显示器

1.LCD显示器相关背景 1.LCD简介 &#xff08;1&#xff09;显示器&#xff0c;常见显示器&#xff1a;电视&#xff0c;电脑 &#xff08;2&#xff09;LCD&#xff08;Liquid Crystal Display&#xff09;&#xff0c;液晶显示器&#xff0c;原理介绍 &#xff08;3&#xff…

Django基础讲解-路由控制器和视图(Django-02)

一 路由控制器 参考链接&#xff1a; Django源码阅读&#xff1a;路由&#xff08;二&#xff09; - 知乎 Route路由, 是一种映射关系&#xff01;路由是把客户端请求的 url路径与视图进行绑定 映射的一种关系。 这个/timer通过路由控制器最终匹配到myapp.views中的视图函数 …

[spring] spring core - 配置注入及其他内容补充

[spring] spring core - 配置注入及其他内容补充 上篇 [sping] spring core - 依赖注入 这里主要补一些 core 相关内容补充&#xff0c;同时添加了 java config bean 的方法 java config bean 是除了 XML、java 注解之外另一给实现 DI 的方法 java config bean 这个方法不…

Doctest:让你的测试更简单高效

简介&#xff1a;Doctest 是 Python 标准库的一部分&#xff0c;它允许开发者通过在文档字符串&#xff08;docstrings&#xff09;中编写示例来进行测试。这不仅可以在确保代码正确性的同时编写文档&#xff0c;还可以让读者更容易理解代码的用法和期望的输出。 历史攻略&…

(枚举 + 树上倍增)Codeforces Round 900 (Div. 3) G

Problem - G - Codeforces 题意&#xff1a; 思路&#xff1a; 首先&#xff0c;目标值和结点权值是直接联系的&#xff0c;最值不可能直接贪心&#xff0c;一定是考虑去枚举一些东西&#xff0c;依靠这种枚举可以遍历所有的有效情况&#xff0c;思考的方向一定是枚举 如果去…