ElasticSearch基础知识

news2024/9/27 7:23:04

ElasticSearch是一个高扩展的分布式全文搜索引擎,基于Lucene作为核心实现所有索引和搜索的功能。

使用场景:

(1)搜索领域:如维基百科、谷歌,全文检索等。
(2)网站具体内容:访问统计、文章点赞、留言评论等。
(3)用户行为分析:记录员工行为数据、消费趋势、员工群体进行定制推广等。
(4)数据分析:访问日志数据分析等。

基本概念

Elasticsearch面向文档,类比传统数据库,例如MySQL:
MySQL -> Databases -> Tables -> Rows -> Columns
Elasticsearch -> Indices -> Types -> Documents -> Fields
Elasticsearch集群可以包含多个索引indices,每一个索引可以包含多个类型type,每一个类型包含多个文档documents,然后每个文档包含多个字段fields

索引
在ES中,索引是一个大型的相同属性的文档集合。ES把索引划分多个分片,每个分片在集群中不同服务器之间迁移。
文档
文档是索引和搜索数据的最小数据单位。一个文档同时包含字段和对应的值,每个文档由多个字段构成,具有层次性,可以文档中包含文档。
类型
类型是文档的容器,类型中对于字段的定义叫做映射(mapping),所有类型下的文档被储存在同一个索引下,但是类型的映射(mapping)会告诉Elasticsearch不同的文档如何被索引。
映射
类似于静态语言中的数据类型,一个number类型的mapping字段只能存储number类型的数据。

倒排索引

正向索引是以文档对象的唯一id作为索引,以文档内容作为记录的结构。而倒排索引指的是将文档内容中的单词作为索引,将包含该词的文档id作为记录的结构。
在这里插入图片描述
例如有如下三句话:
(1)博客真好用
(2)博客系统开发的不错
(3)博客网站开发很难
进行分词后如下所示:
在这里插入图片描述
如果要搜寻带系统二字的文章,相较于查找所有的数据而言,只需要看标签这一栏,就可以获取文章id了。

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

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

相关文章

计算机网络:传输层——多路复用与解复用

文章目录 前言一、Socket(套接字)二、多路复用/解复用三、多路解复用(1)多路解复用原理(2)无连接(UDP)多路解复用(3)面向连接(TCP)的多…

普通策略梯度算法原理及PyTorch实现【VPG】

有没有想过强化学习 (RL) 是如何工作的? 在本文中,我们将从头开始构建最简单的强化学习形式之一 —普通策略梯度(VPG)算法。 然后,我们将训练它完成著名的 CartPole 挑战 — 学习从左向右移动购物车以平衡杆子。 在此…

哈希与哈希表

哈希表的概念 哈希表又名散列表,官话一点讲就是: 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记…

MySQL的多表查询

多表关系 一对多(多对一)-> 多对多-> 一对一-> 概述 概述 多表查询分类 内连接 代码演示--> -- 内连接演示 -- 1.查询每一个员工的姓名,及关联的部门的名称(隐式内连接实现) select emp.name, dept.name from emp,dept where emp.dept_id dept.id; …

10、外观模式(Facade Pattern,不常用)

外观模式(Facade Pattern)也叫作门面模式,通过一个门面(Facade)向客户端提供一个访问系统的统一接口,客户端无须关心和知晓系统内部各子模块(系统)之间的复杂关系,其主要…

sql面试题之“互相关注的人”(方法三)

题目:某社交平台有关注这个功能,关注的同时也会被关注。现有需求需要找出平台上哪些用户之间互相关注。 文章目录 题目如下:一、数据准备二、建表并导入数据1.建表2.导入数据3.数据分析和实现思路小结: 题目如下: 某社…

[RK-Linux] 移植Linux-5.10到RK3399(三)| 检查eMMC与SD卡配置

这个专题主要记录把 RK Linux-5.10 移植到 ROC-RK3399-PC Pro 的过程。 文章目录 一、eMMC二、SD 卡三、两个接口的区别一、eMMC RK3399 的 eMMC 接口如图: datasheet 介绍: 实际上,连接 eMMC 存储器用的是 SDHCI 接口。SDHCI(Secure Digital Host Controller Interface)…

【数据结构】最短路径——Floyd算法

一.问题描述 给定带权有向图G(V,E),对任意顶点 V (ij),求顶点到顶点的最短路径。 转化为: 多源点最短路径求解问题 解决方案一: 每次以一个顶点为源点调用Dijksra算法。时间复杂…

香港虚拟信用卡如何办理,支持香港apple id

什么是虚拟信用卡? 虚拟信用卡,英文称之为Virtual Credit Card Numbers,就是指没有实体卡片,是基于银行卡上面的BIN码所生成的虚拟账号。通常用于进行网络交易,使用起来很方便,也很安全。 它与实体信用卡…

算法-01-递归

1-理解递归 斐波那契数列(Fibonacci sequence),又称黄金分割数列 ,以兔子繁殖为例子而引入,故又称“兔子数列”,其数值为:1、1、2、3、5、8、13、21、34……特点是 从第三个数开始,第…

HOST文件被挟持,无法上网,如何解决。

问题: 晚上开机,突然发现无法联网,提示网络异常 解决: 首先网络诊断,host文件被劫持,修复后,仍然不行。 然后测试手机热点,发现仍然无法联网 尝试用火绒修复,无果。 所有…

Linux Camera Driver(2):CIS设备注册(DTS)

一:MIPI接口 1、硬件接口 MIPI接口以rv1109和gc2053的硬件为例进行说明: 2、ISP驱动 注意配置事项: endpoint配置,必须指定data-lanes,否则无法识别为mipi类型 链接方式:sensor->csi_dphy->isp->ispp (1)sensor节点配置 根据原理图可知:mipicsi_clk0即引…

Linux系统安装Python3环境

1、默认情况下,Linux会自带安装Python,可以运行python --version命令查看,如图: 我们看到Linux中已经自带了Python2.7.5。再次运行python命令后就可以使用python命令窗口了(CtrlD退出python命令窗口)。 2…

STM32F407-14.3.11-01互补输出和死区插入

互补输出和死区插入 高级控制定时器(TIM1 和 TIM8)可以输出两路互补信号,并管理输出的关断与接通瞬间。 这段时间通常称为死区,用户必须根据与输出相连接的器件及其特性(电平转换器的固有延迟、开关器件产生的延迟...&…

MySQL之时间戳(DateTime和TimeStamp)

MySQL之时间戳(DateTime和TimeStamp) 文章目录: MySQL之时间戳(DateTime和TimeStamp)一、DateTime类型二、TimeStamp类型三、DateTime和TimeStamp的区别 当插入数据时,需要自动记录一个时间时候&#xff0c…

llama.cpp部署(windows)

一、下载源码和模型 下载源码和模型 # 下载源码 git clone https://github.com/ggerganov/llama.cpp.git# 下载llama-7b模型 git clone https://www.modelscope.cn/skyline2006/llama-7b.git查看cmake版本: D:\pyworkspace\llama_cpp\llama.cpp\build>cmake --…

git 本地改动无法删除

1. 问题 记录下git遇到奇怪的问题,本地有些改动不知道什么原因无法删除 git stash, git reset --hard HEAD 等都无法生效,最终通过强制拉取线上解决 如下图: 2. 解决 git fetch --all git reset --hard origin/master执行这两…

LeedCode刷题---双指针问题

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C/C》 《LeedCode刷题》 键盘敲烂,年薪百万! 双指针简介 常见的双指针有两种形式,一种是对撞指针,一种是左右指针。 对撞指针:一般用于顺序结构中&…

马斯克极简5步工作法 —— 筑梦之路

马斯克的五步流程法则: 第一步:确定需求 第二步:极力删除零件或过程 第三步:简化和优化 第四步:加快周期时间 第五步:自动化特别注意:完成前三步之前,千万不要考虑加速和自动化&…

JVM类加载全过程

Java虚拟机类加载的全过程,即加载,验证,准备,解析,初始化 一、加载 加载 是 类加载过程中的一个阶段, 有以下三部分组成 1)通过一个类的全限定名来获取定义此类的二进制流 2)将这…