ElasticSearch基础知识汇总

这篇具有很好参考价值的文章主要介绍了ElasticSearch基础知识汇总。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。官方客户端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby和许多其他语言中都是可用的。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene的搜索服务器。


一、认识ElasticSearch

1.正向索引和倒排索引

正向索引是最传统的,根据id索引的方式。但根据词条查询时,必须先逐条获取每个文档,然后判断文档中是否包含所需要的词条,是根据文档找词条的过程。
正排索引简单来说就是遍历全表,对逐条信息做模糊查询
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎
倒排索引则相反,是先找到用户要搜索的词条,根据词条得到保护词条的文档的id,然后根据id获取文档。是根据词条找文档的过程。
倒排索引是ES的独有的特色,简单来说将要所搜的数据利用分词器拆分成一个个的词条,将词条和文档id组成一个文档:
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎
倒排索引查询流程:
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎

2. MySql与ElasticSearc

Mysql:擅长事务类型操作,可以确保数据的安全和一致性
Elasticsearch:擅长海量数据的搜索、分析、计算
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎
Mysql与ElasticSearch的概念对比:
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎

3.IK分词器

分词器的作用是创建倒排索引时对文档分词,当用户搜索时,对输入的内容分词;

IK分词器的两种模式:

  • ik_smart:智能切分,粗粒度;
  • ik_max_word:最细切分,细粒度;

二、ES索引库操作

索引库就类似数据库表,mapping映射就类似表的结构。我们要向es中存储数据,必须先创建“库”和“表”。

1.mapping映射属性

mapping是对索引库中文档的约束,常见的mapping属性包括:

  • type:字段数据类型,常见的简单类型有:字符串:text(可分词的文本)、keyword(精确值,例如:品牌、国家、ip地址);
  • index:是否创建索引,默认为true;
  • analyzer:使用哪种分词器;
  • properties:该字段的子字段。

2.索引库的CRUD

测试工具:PostMan
2.1创建索引库:PUT /索引库名
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎
2.2查询索引库:GET /索引库名ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎
2.3修改索引库(添加新字段):PUT /索引库名/_mapping
倒排索引结构虽然不复杂,但是一旦数据结构改变(比如改变了分词器),就需要重新创建倒排索引,这简直是灾难。因此索引库一旦创建,无法修改mapping。
虽然无法修改mapping中已有的字段,但是却允许添加新的字段到mapping中,因为不会对倒排索引产生影响。
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎

2.4删除索引库:DELETE /索引库名
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎

三、ES文档库操作

3.1新增文档:POST /{索引库名}/_doc/文档id
新增文档内容与索引库内容保持一致
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎

3.2查询文档:GET /{索引库名称}/_doc/{id}
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎
3.3删除文档:DELETE /{索引库名}/_doc/id值
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎
3.4全局查询:GET/{索引库名}/_search
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎
3.5修改文档:
修改有两种方式:
全量修改:直接覆盖原来的文档PUT /{索引库名}/_doc/文档id
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎

增量修改:修改文档中的部分字段POST /{索引库名}/_update/文档id
ElasticSearch基础知识汇总,elasticsearch,大数据,搜索引擎文章来源地址https://www.toymoban.com/news/detail-680517.html


到了这里,关于ElasticSearch基础知识汇总的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SQL Server数据库基础知识汇总

    目录 目录 一、数据库概念 1.1 什么是数据库 1.2 为什么用数据库 1.3 数据库的发展历史 1.4 数据库分类 1.5 DBMS数据库管理系统 二、 SQL(Structured Query Language) 2.1  定义 2.2  SQL分类 2.3 SQL与T-SQL 三、SqlServer下载与安装 四、数据库表各类操作 1 创建数据库登录用户 2 使用DCL赋予数据

    2023年04月09日
    浏览(58)
  • Elasticsearch的高阶使用方法有哪些?,后端程序员必备的Linux基础知识+常见命令

    ③should 通用的道理:多个查询条件通过should连接,相当于以前常用的or,说白了也就是逻辑运算符“与”。 ps :关于其格式使用,不要看它图中好像挺复杂的样子,其实都可以通过工具有提示,并且这些写多了基本也就知道了。 2范围查询 商品都有自己的价格,用户可以通过

    2024年04月08日
    浏览(84)
  • HTTP基础知识汇总

    云原生(Cloud Native) 的兴起, 面向服务架构 ( Service-Oriented Architecture,SOA )、 微服务 ( Microservice) 、 容器 ( Container )等相关概念与技术正在逐渐影响 CAx ( CAD / CAE / CAM ) 软件 的架构设计与开发。 在 云原生CAx 软件中, 首先需要把系统按照功能划分成不同的 服务单元 , 然后再根

    2023年04月26日
    浏览(91)
  • Zookeeper 基础知识汇总

    中文教程:https://www.docs4dev.com/docs/zh/zookeeper/r3.5.6/reference/zookeeperOver.html ZooKeeper 是⼀种分布式协调服务,⽤于管理⼤型主机。在分布式环境中协调和管理服务是 ⼀个复杂的过程。ZooKeeper 通过其简单的架构和 API 解决了这个问题。ZooKeeper 允许开 发⼈员专注于核⼼应⽤程序逻辑

    2024年02月08日
    浏览(53)
  • Python基础知识汇总(集合)

    Python中的集合用于保存不重复元素,分为可变集合(set)和不可变集合(frozenset)两种。 本文主要是讲可变集合set的常用操作,包括创建集合、集合中添加元素和删除元素、集合的交集、并集和差集运算等。 set集合是无序可变序列,集合的所有元素都放在一对大括号“{}”中

    2023年04月26日
    浏览(33)
  • Matlab基础知识汇总(小白速成)

    1.矩阵运算符 运算 符号 说明 具体表现实现 转置 A.\\\' 矩阵转置 共轭转置 A\\\' 复矩阵共轭转置,当A为实数矩阵时等价于A.\\\' 加减 A+B、A-B 矩阵元素之间相互进行加减 数与矩阵加减 K+A、K-A 数与矩阵的加减操作 数乘以矩阵 k*A 数对矩阵中的每个元素进行相乘 矩阵相乘 A * B A.*B 乘法运

    2024年02月08日
    浏览(36)
  • 计算机网络——基础知识汇总(八)

    个人名片: 🦁作者简介:一名喜欢分享和记录学习的在校大学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755@qq.com 🦉个人WeChat:Vir2021GKBS 🐼 本文由妄北y原创,首发CSDN 🎊🎊🎊 🐨座右铭:大多数人想要改造这个世界,但却罕有人想改造自己。 专栏导航

    2024年02月03日
    浏览(62)
  • 信息与网络安全基础知识汇总

    1.网络信息安全基本概念 信息安全 :是指信息网络中的硬件、软件及其系统中的数据受到保护,不受偶然的或者恶意的原因而遭到破坏、更改、泄露、否认等,系统连续可靠正常的运行,信息服务不中断。 密码学: 是结合数学、计算机科学、电子与通信等学科于一体的交叉

    2024年02月03日
    浏览(43)
  • 计算机基础知识点汇总

    1、指令是指示计算机执行某种操作的命令,包括操作码和地址码两部分。 2、目前常见的指令系统有复杂指令系统(CISC)和精简指令系统(RISC)。 3、计算机的工作过程:取指令、分析指令、执行指令。 4、未配置任何软件的计算机叫裸机,注意不是指安装过操作系统的计算

    2024年02月10日
    浏览(53)
  • 数电模电基础知识学习笔记汇总

    文章目录: 数电和模电的关系 一:模电学习笔记 二:数电学习笔记 三:福利 1.NI Multisim14.0电路仿真软件的下载安装 2.进制转换 3.电路常用公式 4.好的参考笔记  4.1 笔记  3.1.1 模电 3.1.1 数电 4.2 网站 5.八股文 来源:一周搞(不)定数电模电全集,电子基础知识 11小时 模电基

    2024年02月15日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包