一.Elasticsearch快速入门及使用

news2025/4/11 23:47:29

Elasticsearch快速入门及使用

  • 一.Elasticsearch是什么
  • 二.基本概念
    • 1.index (索引)
    • 2. type (类型)
    • 3.Document (文档)
  • 三.为什么Elasticsearch可以从海量数据里快速检索出数据
  • 四.Elasticsearch安装
    • 1.解压
    • 2.运行
    • 3.显示以下内容就是启动成功1
    • 4.Kibana可视化软件安装
  • 五.入门(基本的操作)
    • 1.查看es基本信息
    • 2.索引一个文档(新增一条数据)
    • 3.查询一个文档(查询一条数据)
    • 4.更新一个文档(更新数据)
    • 5.删除索引或文档(删除数据库或数据)
    • 6.批量操作

一.Elasticsearch是什么

Elasticsearch 是一个免费且开放的分布式搜索和分析引擎,适用于包括文本、数字、地理空间、结构化和非结构化数据等在内的所有类型的数据。

Elasticsearch 是全文搜索引擎的首选。它可以快速地储存检索分析海量数据。

二.基本概念

1.index (索引)

相当于mysql你创建的某个数据库。

2. type (类型)

相当于mysql你创建的某个表。

3.Document (文档)

相当于mysql表里的数据 (json格式)

三.为什么Elasticsearch可以从海量数据里快速检索出数据

快速检索归功于 Elasticsearch的倒排索引(存入数据会维护一张倒排索引表)

倒排索引的步骤
举例:按顺序存入 A =《大话东游》、B =《爱坤大话东游》、C =《大话连篇东游》、D = 《大话西游》

(1) 分词
①《大话东游》会被分成 《大话》和《东游》并属于A。

②《爱坤大话东游》会被分成 《爱坤》《大话》和《东游》并属于B。

③《大话连篇东游》会被分成 《大话》《连篇》和《东游》并属于C。

④《大话西游》会被分成 《大话》和《西游》并属于D。

倒排索引表如下:

记录
《大话》A,B,C,D
《东游》A,B,C
《爱坤》B
《连篇》C
《西游》D

(2) 检索
例如:检索《爱坤大话西游》
① 分词成 《爱坤》《大话》和《西游》
②去倒序索引表去查,包含这几项的记录。
③ 查到如下

记录
《大话》A,B,C,D
《爱坤》B
《西游》D

④ 然后计算相关性得分
D最符合,因为D分成两个单词都命中(2/2)。然后B分成三个单词命中两个(2/3)。然后A…,最后会根据相关性得分从高到低返回。

四.Elasticsearch安装

Elasticsearch官方安装文章

下载即用elasticsearch-7.3.1和kibana-7.3.1 提取码:0221

1.解压

在这里插入图片描述

2.运行

在这里插入图片描述

3.显示以下内容就是启动成功1

在这里插入图片描述

4.Kibana可视化软件安装

安装教程 注意:版本号要对应

五.入门(基本的操作)

Apifox-2.3.0自测工具安装包
注意:因为es把命令都封装成RestApi,所以我们直接发请求就行。

1.查看es基本信息

GET/_cat/nodes   //查看所有的节点
GET/_cat/health  //查看es健康情况
GET/_cat/master  //查看所有的节点
GET/_cat/indices //查看所有索引(相当于查看所有数据库)
下面截图举例查询es健康情况:

在这里插入图片描述

2.索引一个文档(新增一条数据)

举例:http://localhost:9200/kunkun/ikun/2.5
含义:我们在kunkun索引下的ikun类型下保存id为2.5的数据。(相当于在kunkun数据库下的ikun表加一个id为2.5的数据,es里面存的是json数据)

异同点:
①POST和PUT请求新增如果重复发请求,如果存在就会更新。

②POST和PUT如果重复发请求更新时,不会对比原数据,版本号等会改变。

③POST请求不带id,会自动给你生成唯一id。PUT请求不带id会报错。

在这里插入图片描述

3.查询一个文档(查询一条数据)

在这里插入图片描述

4.更新一个文档(更新数据)

不适用: 大并发更新。
适用: 大并发查询偶尔更新。
在这里插入图片描述

注意:POST请求带 _update 关键字更新时会对比原来的数据,如果数据没有任何改变,不做任何操作,版本号等都不改变。

5.删除索引或文档(删除数据库或数据)

(1) 删除文档
在这里插入图片描述

(2) 删除索引
在这里插入图片描述

6.批量操作

注意:我们使用Kibana操作,批量操作时上一条命令失败不会影响下一条命令的操作。
在这里插入图片描述
(1) 简单测试

//给kunkun数据库下的ikun表导入两条数据
POST /kunkun/ikun/_bulk
{"index":{"_id":"1"}}
{"name":"chang"}
{"index":{"_id":"2"}}
{"name":"tiao"}

在这里插入图片描述

(2) 批量导入测试数据

es提供的测试数据 提取码:0221

在这里插入图片描述
好了入门到此结束。请期待后续的进阶文章。

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

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

相关文章

代码浅析Point-LIO

0. 简介 对于最近出来的Point-LIO(鲁棒高带宽激光惯性里程计),本人还是非常该兴趣的,为此花了一些时间重点分析了Point-LIO的代码,并研究了它相较于Fast-LIO2的区别 1. laserMapping.cpp 第一部分就是实现对激光雷达视场角的图像分割。首先…

Day01 项目简介分布式基础概念

最近在改进公司开发的商城项目,看到了尚硅谷的谷粒商城,就快速学习了下,因为之前的Kafka,Redis都是在这学习的,还有大数据的Flink。所以感觉一定不错,就开始了。 这里做一下学习笔记 一、项目简介 1 、项目背景 1 &…

UIAutomatorViewer工具的使用

目录 前言: 一、uiautomatorviewer介绍 二、启动uiautomatorviewer 三、uiautomatorviewer界面 四、连接手机 前言: UIAutomatorViewer是Android SDK提供的一个可视化界面分析工具,可以用于查看Android应用的UI界面结构、属性信息以及布…

元宇宙在技术大爆炸时代迎来链游新世界

元宇宙是从虚拟游戏、虚拟艺术收藏品开始兴起,然后逐步扩展到社交和金融领域的。元宇宙的终极形态就是一种“无限游戏”,也即打破边界、颠覆规则、不断迭代和进化发展的新世界。 政策落地,元宇宙未来才能充满潜力 2021 年以来,元…

SSM在线学习平台-计算机毕设 附源码85204

SSM在线学习平台 摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,在线学习平台当然也不能排除在外。在线学习平台是以实际运用为开发背景,运用软件工程原理和…

数字非洲,沐光而行

“华为是什么公司?我们不相信中国企业能有先进的通信技术!你们也不要总是来找我!”1998年,华为人刚踏上非洲所遇到的,不是来自阳光大陆的热情,而是来自刚果(金)客户冷冰冰的拒绝。 2…

国产崛起,继操作系统装机500w,又有软件平台用户突破600w

国产操作系统行业部署超500W 这次,国产操作系统终于扬眉吐气了! 国产的操作系统装机已达到500万,国产崛起的时刻已来! 近日,国产操作系统的佼佼者——统信UOS,召开见面会,宣布:目…

7DGroup性能实施项目日记2

壬寅年 己酉月 己卯日 秋高气爽 天气转凉 昨天大风昨天看到项目计划中已经有了很多内容。 也就是说计划感觉已经写得差不多了。我仔细看了一下之后觉得这个计划不可行,就是样子挺像。 然后我问管理组,这个是你们商量之后写的吗?他们说不…

Java互联网工程师1100题(总结最全面的面试题)

本来已经在为去大厂工作摩拳擦掌的 Java 朋友,社招又是需要 5 年以上的,今年显得格外艰难: 就业人数高达 874 万!人才竞争加剧! 大多数公司的招聘需求缩减!对社招来说,人才招聘要求愈来愈高&am…

Spring核心思想之IOC和AOP

IOC和AOP不是Spring提出的,在spring之前就已经存在,只不过更偏向于理论化,Spring在技术层次把这两个思想做了⾮常好的实现(Java)。 Spring核心思想 IOC(Inversion of Control)什么是IoC?IoC解决了什么问题…

unittest单元测试框架

目录 前言: 一、unittest模块的各个属性说明 二、使用unittest框架编写测试用例思路 三、使用unittest框架编写测试用例实例 前言: unittest是Python自带的单元测试框架,可以用于编写和执行单元测试。 一、unittest模块的各个属性说明 …

Linux内核4.14版本——drm框架分析(9)——DRM_IOCTL_MODE_GETCONNECTOR(drm_mode_getconnector)

目录 1. drm_mode_getconnector分析 1.1 找到connector 1.2 计算该connector的encoder数量 1.3 把connector支持的encoder和数量返回给用户 1.4 把找到的connector的参数返回给应用 1.5 填充mode(很重要) 1.6 把找到的connector的参数返回给应用 …

excel爬虫相关学习2:excel 和 vba 爬虫相关xmlhttp方法

目录 前言:vba 爬虫相关xmlhttp的方法 1 什么是xmlhttp 1.1 定义 1.2 特点 定义XMLHTTP对象: XMLHTTP方法: open(bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword) send(varBody) setRequestHeader(bstrHeader, bstrValue) …

Java 被挤出前三。。

TIOBE 2023 年 06 月份的编程语言排行榜已经公布,官方的标题是:Python 还会保持第一吗?(Will Python remain number 1?) 在过去的 5 年里,Python 已经 3 次获得 TIOBE 指数年度大奖,这得益于…

简述Spring中IOC核心流程

基础概念 IOC 和 DI IOC,即控制反转。是Spring的一种设计思想。传统程序设计中,我们创建一个对象是通过 new 关键字,是程序主动去创建依赖对象,而在spring中专门有一个容器来创建和管理这些对象,并将对象依赖的其他对…

rpm详解——原理,命令详细讲解

目录 三个问题 什么是RPM SRPM (Source RPM) RPM软件包 RPM 查询命令 查询已安装的RPM软件信息 查询文件/目录属于哪个RPM软件 查询未安装的RPM包文件 RPM 软件包的安装、卸载 安装 卸载 RPM 升级与更新 三个问题 先抛出三个问题,最后简单解释一下。 …

HiveSQL 电商场景TopK统计

数据准备 CREATE TABLE test.test2 ( user_id string, shop string ) ROW format delimited FIELDS TERMINATED BY \t; INSERT INTO TABLE test.test2 VALUES ( u1, a ), ( u2, b ), ( u1, b ), ( u1, a ), ( u3, c ), ( u4, b ), ( u1, a ), ( u2, c ), ( u5, b ), ( u4, b )…

基于人工智能的AI理发师能帮托尼老师做什么?

BarberGPT是一个人工智能理发师,它可以让您在照片上尝试不同的发型。您只需要上传您的照片,标记您的头发,然后就可以看到惊人的变化。BarberGPT使用了先进的深度学习技术,可以根据您的脸型、肤色和发质生成适合您的发型。BarberGP…

国产监控数据库产品lepus最新版学习和部署(V5.1)

目录 lepus是什么? 二进制安装(最新v5.1) 1.基础环境 2.安装NSQ 3.NSQ消息测试 4.安装lepus 5.初始化数据库 6.修改配置文件 7.启动服务组件 8.安装lepus-console 9.运行和访问控制台 lepus是什么? Lepus数据库监控系统…

Docker容器应用为工业连接提供了新选择

一 智能数据管理 Docker容器应用可灵活部署在异构计算平台上,且仅需占用少量的资源,这可为工业4.0提供一种新的数据集成方案。Docker容器应用程序是提供特定功能的小型软件模块,可在自动化领域中用于智能数据管理。而Softing推出的一个新产品…