十八、初识elasticsearsh (索引)

news2024/11/16 15:48:04

目录

一、Elasticsearch的介绍:

二、正向索引和倒排索引

1、正向索引

2、倒排索引

3、索引(index) :相同类型的文档的集合

4、映射(mapping):索引中文档的字段约束信息,类似表的结构约束


一、Elasticsearch的介绍:

  1. Elasticsearch是一个全文搜索引擎,建立在Lucene搜索库之上。

  2. Elasticsearch是一个分布式系统,可以处理大量数据、高并发和高可扩展性

  3. Elasticsearch可以对不同类型的数据进行搜索和分析,包括文本、数字和坐标数据等。

  4. Elasticsearch支持近实时搜索,可以将数据在几秒钟内索引到搜索引擎中。

  5. Elasticsearch可以通过简单的REST API进行搜索和查询,可以使用各种编程语言进行开发和集成。

  6. Elasticsearch提供了强大的搜索和过滤功能,包括全文搜索、精确搜索、模糊搜索、聚合和过滤器等。

  7. Elasticsearch可以与其他开源软件集成,如Logstash、Kibana和Beats等,构建完整的日志分析和数据可视化平台

  8. Elasticsearch的社区活跃,提供了大量的文档、教程和支持资源,可以帮助开发者更好地使用和开发Elasticsearch。

二、正向索引和倒排索引

1、正向索引

正向索引是指从左往右,以0开始递增的索引方式,也是最常用的索引方式。例如,在一个字符串"Hello, world!"中,正向索引从0开始,可以表示为:

Hello,world!
0123456789101112

在下面的例子中,程序需要一个个的查表,效率低下。

2、倒排索引

  • 倒排索引是一种数据结构,它将文档中的每个单词或术语映射到包含该单词或术语的文档列表中。
  • 这样就可以快速地通过单词或术语来查找包含它们的所有文档。
  • 倒排索引可用于全文搜索引擎,文档管理系统等。
  • 其优点是快速的搜索速度,但缺点是需要较高的存储空间和复杂的更新逻辑。

文档( document) :每条数据就是一个文档

词条( term) :文档按照语义分成的词语

以下是倒排索引的示意图:

将一个title分解成为几个具有意义的词语,并将含有该词的title编号存入倒排索引中

3、索引(index) :相同类型的文档的集合

  1. 索引可以被理解为一种数据结构,它可以将文本或其他类型的数据组织起来,以便于快速查找、访问和处理。
  2. 在计算机科学和信息技术领域,索引通常用于对大量数据进行高效的查询和搜索。
  3. 例如,搜索引擎中的网页索引,数据库中的索引等。

4、映射(mapping):索引中文档的字段约束信息,类似表的结构约束

  1. 映射可以被理解为将一种数据形式转换为另一种数据形式的过程。
  2. 在索引的情境下,映射通常是将索引词或术语映射到包含这些词或术语的文档列表。
  3. 例如,在搜索引擎中,当用户输入关键词时,搜索引擎会将这些关键词映射到包含这些关键词的网页列表,然后返回给用户。

在文本处理和信息检索中,索引和映射通常是紧密相关的。通常会使用倒排索引的方法,将每个单词或术语映射到包含该单词或术语的文档列表。这种映射方式可以使得检索和查询更加高效。

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

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

相关文章

2-Linux学习环境搭建

1 Linux学习环境搭建 1.1 虚拟化介绍 # win 机器----》装一个虚拟化软件----》虚拟化出linux操作系统# kvm vmware openstack docker k8s # kvm vmware 虚拟化软件 -运行在linux上,做虚拟化的软件 -vmware运行在win,linux,商业软件…

软件测试岗位与职业发展

一、软件测试岗位有哪些? 在企业中,软件测试领域的几个典型的职位有:功能测试工程师(也叫手工测试)、自动化测试工程师、性能测试工程师、测试开发等。 1、功能测试(手工测试)工程师 主要工作内…

tomcat国密ssl测试

文章目录 程序包准备部署配置访问测试 程序包准备 下载 tomcat8.5 https://www.gmssl.cn/gmssl/index.jsp 下载 tomcat 国密组件及证书 本次测试所有的程序文件均已打包,可以直接 点击下载 部署配置 自行完成 完成centos 的jdk配置。 部署tomcat,将 gmssl4t.jar…

人机交互模块的发展

人机交互(Human-Computer Interaction,HCI)是指人与计算机之间进行交互和信息交换的过程。人机交互模块的发展经历了多个阶段,从早期的命令行界面到现在多样化的交互方式,不断发展和创新。以下是一些人机交互模块的发展…

【成功案例】7日ROI超65%!注册率超85%!雷霆网络 联手 NetMarvel 实现效果翻倍增长!

雷霆网络旗下多款角色扮演手游在国内长期霸占买量榜前列,而这股“买量大户”的风依旧吹到了海外,其中《地下城堡3》依靠买量在境外业务收入上增长明显,目前市场潜力巨大。 然而,面对竞争激烈的PRG游戏出海局面,打开市…

如何设置实现本地JumpServer远程访问管理界面

文章目录 前言1. 安装Jump server2. 本地访问jump server3. 安装 cpolar内网穿透软件4. 配置Jump server公网访问地址5. 公网远程访问Jump server6. 固定Jump server公网地址 前言 JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpS…

在 CentOS 7 上安装 MySQL 8

在 CentOS 7 上安装 MySQL 8 步骤 1: 添加 MySQL Yum 存储库 首先,我们需要添加 MySQL Yum 存储库。打开终端并执行以下命令: sudo yum install -y https://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm步骤 2: 导入 MySQL GPG 公钥 …

消息中间件——RabbitMQ(五)快速入门生产者与消费者,SpringBoot整合RabbitMQ!

前言 本章我们来一次快速入门RabbitMQ——生产者与消费者。需要构建一个生产端与消费端的模型。什么意思呢?我们的生产者发送一条消息,投递到RabbitMQ集群也就是Broker。 我们的消费端进行监听RabbitMQ,当发现队列中有消息后,就进…

Django之cookie和session

文章目录 Cookie的介绍Cookie的由来什么是CookieCookie原理Cookie覆盖浏览器查看Cookie 在Django中操作Cookie设置Cookie查询浏览器携带的Cookie删除Cookie Cookie校验登录sessionSession的由来Session设置查看、更新Session值删除Session值Seesion的其他方法Session的其他配置…

Atlassian Confluence 路径遍历和命令执行漏洞 (CVE-2019-3396)

漏洞描述 Confluence 是由澳大利亚软件公司 Atlassian 开发的基于 Web 的企业 wiki。 Atlassian Confluence 6.14.2 版本之前存在一个未经授权的目录遍历漏洞,攻击者可以使用 Velocity 模板注入读取任意文件或执行任意命令。 漏洞环境及漏洞利用 启动docker环境…

主播产品塑造话术

产品卖点 一、品质卓越 我们的产品始终坚持高品质的标准,从原材料的选择到生产工艺的把控,每一个环节都经过严格的品质检测。我们注重产品的耐用性和稳定性,确保您在使用过程中无需担心质量问题。 二、功能强大 我们的产品不仅具备基本的…

HTTP ERROR 403 No valid crumb was included in the request

1、报错截图: 2、产生原因: 开启了csrf,即跨站请求伪造 3、新版本不支持页面修改,故需要修改jenkins配置文件 3.1 进入编辑配置文件 vim /etc/sysconfig/jenkins 3.2 修改JENKINS_JAVA_OPTIONS,并保存修改 JENKI…

获取地区天气

上网找了半天js获取天气的方法,试了好几个都不行,还是得用api才行 1.用的心知天气的api 很简单,注册就能用,调用api需要key,官方网站:https://gaofen.mlogcn.com/documentation/0/00 2.areacode 这个网页里面找 精确到县:https:/…

mysql允许远程连接

1. 检查服务器防火墙 防火墙若开启则需要开放mysql使用的3306端口才可远程访问; 若无安全性要求也可以直接关闭防火墙。 防火墙相关命令: # 检查防火墙状态 systemctl status firewalld # 开启防火墙 systemctl start firewalld # 停止防火墙 systemctl …

【医学图像处理】超详细!PET图像批量预处理

目录 一、单个PET图像预处理1、使用[MRIConvert](https://pan.baidu.com/s/1cn3kgeVRir8HvP6HHm0M0Q?pwd5rt5)处理DCM2、MRI和PET数据预处理过程1) 打开matlab命令行输入spm pet,打开SMP12,界面如下2) Realign,只需要…

分布式锁之基于zookeeper实现分布式锁(三)

3. 基于zookeeper实现分布式锁 实现分布式锁目前有三种流行方案,分别为基于数据库、Redis、Zookeeper的方案。这里主要介绍基于zk怎么实现分布式锁。在实现分布式锁之前,先回顾zookeeper的相关知识点 3.1. 知识点回顾 3.1.1. 安装启动 安装&#xff1a…

面试送分题!“商品分类浏览”如何测试?

电商项目无论是工作中,还是面试中,都是一个高频出现的词。 面试官非常热衷提问关于电商项目的问题。例如商品分类怎么测试?购物车怎么测试?订单怎么测试?优惠券怎么测试?支付怎么测试?等等。 …

linux通过串口传输文件

简介 在嵌入式调试过程中,我们经常会使用调试串口来查看Log或者执行指令,其实,调试串口还有另一种功能,就是传输文件,本文说明使用MobaXterm串口工具来传输文件。 环境要求 嵌入式系统需要安装lsz和lrz,…

汲古融新,字有乾坤—字体设计商业项目实践

《字迹:字体设计商业项目实践》主要内容为商业字体设计,对于字体设计的理论知识进行透彻讲解,并配以详尽的设计案例。全书包含6章:第1章为字体设计基础知识,以梳理字体设计理论知识为主要内容;第2章为字体设…