Elasticsearch初步认识

Elasticsearch初步认识

  • ES概述
  • 基本概念
  • 正向索引和倒排索引
  • IK分词器
    • ik_smart最少切分
    • ik_max_word为最细粒度划分
  • ES索引库基本操作
    • 对索引库操作
    • 对文档操作

ES概述

Elasticsearch,简称为 ES,是一款非常强大的开源的高扩展的分布式全文检索引擎,可以帮助我们从海量数据中快速找到需要的内容,它可以近乎实时的存储、检索数据.还可以可以实现日志统计、分析、系统监控等功能

基本概念

ES是面向文档存储,可以是数据库中的一条商品数据,一个订单信息
注:文档数据会被序列化为 json 格式后存储在 elasticsearch 中
在这里插入图片描述索引:同类型文档的集合
文档:一条数据就是一个文档,es 中是 Json 格式
字段:Json 文档中的字段
映射:索引中文档的约束,比如字段名称、类型
注:常见的 mapping 属性包括
type:字段数据类型,常见的简单类型有:
字符串:text(可分词的文本),keyword(精确值,例如:品牌,国家,邮箱)
数值:long、integer、short、byte、double、float、
布尔:boolean
日期:date
对象:object
index:是否创建索引参与搜索,默认为 true,如果不需要参与搜索设置为 false
analyzer:使用哪种分词器
在这里插入图片描述关系行数据库 MySQL 和 elasticsearch 对比
在这里插入图片描述
Mysql:擅长事务类型操作,可以确保数据的安全和一致性
Elasticsearch:擅长海量数据的搜索、分析、计算

正向索引和倒排索引

Mysql 采用正向索引:
基于文档 id 创建索引。查询词条时必须先找到文档,而后判断是否包含搜索的内容.
在这里插入图片描述
elasticsearch 采用倒排索引:
文档(document):每条数据就是一个文档
词条(term):文档按照语义分成的词语
在这里插入图片描述
在这里插入图片描述

IK分词器

**分词:**即把一段中文或者别的划分成一个个的关键字,我们在搜索时候会把自己的信息进行分词,然后进行一个匹配操作,默认的中文分词器是将每个字看成一个词,比如"我爱中国"会被分为"我",“爱”,“中”,“国”,这显然不符合要求,所以我们需要安装中文分词器IK来解决这个问题
注:IK提供了两个分词算法:ik_smart和ik_max_word

ik_smart最少切分

在这里插入图片描述

ik_max_word为最细粒度划分

在这里插入图片描述
注:还可以自定义分词(参考安装部分)
在这里插入图片描述
在这里插入图片描述

ES索引库基本操作

对索引库操作

1.创建索引库
在这里插入图片描述
在这里插入图片描述
2.通过GET请求获得具体信息

Get /new

在这里插入图片描述
3.修改索引库:
注:索引库和 mapping 一旦创建无法修改,但是可以添加新的字段
在这里插入图片描述
在这里插入图片描述
4.删除索引库

//DELETE /索引库名
DELETE /new

在这里插入图片描述

对文档操作

1.添加文档

POST /索引库名/_doc/文档 id
{ “字段名 1”:”值 1”
“字段名 2”:”值 2..... 
}

在这里插入图片描述
2.查询文档

//GET /索引库名/_doc/文档 id
GET /new/_doc/1

在这里插入图片描述
3.修改文档

POST /索引库名/_update/文档 id
{ "doc":{ 
"要修改的字段":"新值"}
}

在这里插入图片描述
在这里插入图片描述
4.搜索文档

GET /news/_search
{"query":
{"match":{"title":"美国"}
}
}

在这里插入图片描述
在这里插入图片描述
5.删除文档

//DELETE /索引库名/_doc/文档 id
DELETE /new/_doc/1

在这里插入图片描述

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

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

相关文章

神经网络中的归一化

我们今天介绍一下神经网络中的归一化方法~ 之前学到的机器学习中的归一化是将数据缩放到特定范围内,以消除不同特征之间的量纲和取值范围差异。通过将原始数据缩放到一个特定的范围内,比如[0,1]或者[-1,1],来消除不同特征之间的量纲和取值范围…

【前沿模型解析】一致性模型CM(一)| 离散时间模型到连续时间模型数学推导

文章目录 1 离散时间模型2 连续时间模型 得到 SDE 随机微分方程2.1 从离散模型到SDE的推理步骤 3 补充:泰勒展开近似 1 − β i \sqrt{1-\beta_i} 1−βi​ ​ CM模型非常重要 引出了LCM等一系列重要工作 CM潜在性模型的数学公式推导并不好理解 一步一步&#xf…

Springboot框架web开发实用功能-02

在些模块中汇总了一些web开发常用的配置和功能。 涉及的模块 springboot-common-config, 端口号:17000 Springboot框架web开发常用功能 Restful接口定义 查询参数 Data public class QueryParam {private String key;private String value; }Control…

微软 VS Code(Visual Studio Code)简介

一,微软 VS Code(Visual Studio Code)简介: **起源**: - Visual Studio Code(简称 VS Code)是由微软开发的一款免费、开源的代码编辑器,它于2015年首次发布。 **开发背景**&#x…

C#上位机源程序 下位机单片机实现控制电机

基于C#的上位机编程程序&#xff0c;通过上位机控制下位机实现电脑操作控制步进电机的转动 程序 #include<reg52.h>#define uchar unsigned char#define uint unsigned int#include "2401.h"#include "delay.h"#include "ds18b20.h"sbit I…

SSM框架目录

ssm 知识相关目录主要参考尚硅谷 赵伟风老师的视屏&#xff0c;参考链接为 SSM视频_ SSM技术视频_SSM视频教程_尚硅谷 【注意】有些图片为了简便&#xff0c;所以就直接使用了视屏分析。 1、SSM框架相关知识 SpringFramework 基本概念 链接&#xff1a;SpringFramework 基本…

TypeScript学习日志-第二十二天(Mixins混入)

Mixins混入 一、对象混入 合并 当我们有两个或多个对象的时候&#xff0c;如何将这两个对象合并&#xff0c;如图&#xff1a; interface A {name:string } interface B {age:number } let a:A {name:小明 } let b:B {age:10 } // 1.扩展运算符 浅拷贝 返回新的类型 let c…

力扣每日一题110:平衡二叉树

题目 简单 给定一个二叉树&#xff0c;判断它是否是 平衡二叉树 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;true示例 2&#xff1a; 输入&#xff1a;root [1,2,2,3,3,null,null,4,4] 输出&#xff1a;false示例 3&#xff1a; …

Dubbo:高性能、轻量级的Java RPC框架详解

Dubbo&#xff1a;高性能、轻量级的Java RPC框架详解 文章目录 Dubbo&#xff1a;高性能、轻量级的Java RPC框架详解一、引言二、Dubbo概述三、Dubbo的核心特性高性能轻量级透明化远程方法调用软负载均衡及容错机制服务注册与发现 四、Dubbo的使用方式定义服务接口和实现类发布…

python从0开始学习(四)

目录 前言 1、算数运算符 1.1 //:整除运算符 1.2 %:取模操作 1.3 **&#xff1a;幂运算 2、赋值运算符 3、比较运算符 4、逻辑运算符 5、位运算符 5.1 &&#xff1a;按位与 5.2 |&#xff1a;按位或 5.3 ^&#xff1a;按位异或 5.4 ~&#xff1a;按位取反 5.5…

Linux学习笔记(3)---- Debian测试网速指令及查看是否千兆网卡

测试网速指令 在Debian系统中&#xff0c;测网速的指令主要有以下几种方法&#xff1a; 使用speedtest-cli工具&#xff1a; speedtest-cli是一个常用的网络速度测试工具&#xff0c;可以通过命令行进行安装和运行。首先&#xff0c;需要安装speedtest-cli&#xff1a; sud…

工业物联网技术在生产流程中的应用及优势与挑战——青创智通

工业物联网解决方案-工业IOT-青创智通 随着科技的不断发展&#xff0c;物联网技术逐渐渗透到各个行业中&#xff0c;尤其是在工业领域&#xff0c;工业物联网的应用正在逐步重塑生产流程。本文将探讨工业物联网如何影响生产流程&#xff0c;并分析其带来的优势和挑战。 一、工…

k8s保持pod健康

存活探针 Kubemetes 可以通过存活探针 (liveness probe) 检查容器是否还在运行。可以为 pod 中的每个容器单独指定存活探针。如果探测失败&#xff0c;Kubemetes 将定期执行探针并重新启动容器。 Kubemetes 有以下三种探测容器的机制&#xff1a; HTTP GET 探针对容器的 IP 地…

STC 12864LCD驱动

/*---2010 PAST LCD测试小板通过显示---12&#xff1a;3------*/ /*----S1按下显示-蔡沁钰小朋友--------*/ /*----S2按下显示-百草园小学校--------*/ #include <reg51.h> #include <intrins.h> /*定义管脚*/ sbit RS P1^7; …

java学习记录最后一篇

面向对象编程 封装 该露的露&#xff0c;该藏的藏 我们程序设计要追求“高内聚&#xff0c;低耦合”。高内聚就是类的内部数据细节由自己完成&#xff0c;不允许外部干涉&#xff1b;低耦合&#xff1a;仅暴露少量的方法给外部使用。 封装&#xff08;数据的隐藏&#xff0…

AI部署指南

部署指南 建议大家尽可能的自己去部署&#xff0c;如果实在懒得搞&#xff0c;可以找我来帮你部署&#xff0c;详情参考 服务器代部署说明。 由于时间仓促&#xff0c;文档可能尚未详尽&#xff0c;我将在后续逐步补充详细的说明文档。 架构草图 项目依赖 必选依赖 MySQ…

PCB机打孔机程序(三)

///<-检测STOP/ OUT41; delay(80); //延时 OUT10; //开检测光标下总线 if(!IN5) //光标下检测 …

5月3日江苏某厂冷却塔清洗工作汇报-智渍洁

5月3日 施工人员&#xff1a;张能超&#xff0c;张伟&#xff0c;刘平&#xff0c;曾巧 施工事项&#xff1a;空冷器脱脂 今日工作进度&#xff0c;清洗6台遇到的问题&#xff0c;就是那个喷雾器不经用&#xff0c;一会儿又坏了 重庆智渍洁环保科技有限公司专注于工业清洗&…

记录创建项目java version 没有8的问题

问题&#xff1a; 解决方案 java版本选择21&#xff08;21可以兼容jdk8&#xff09; SpringBoot选择3.2.5 进入项目后手动在pom.xml中修改版本

C# 事务- TransactionScop 类 如何使用

在C#中&#xff0c;TransactionScope 类位于 System.Transactions 命名空间下&#xff0c;用于简化跨多个资源管理器&#xff08;如数据库连接&#xff09;的事务处理。以下是一个基本的使用示例&#xff0c;展示了如何使用 TransactionScope 来确保一系列操作的原子性&#xf…