ElasticSearch基础入门,白话es

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

ElasticSearch是一个搜索服务器。以下简称es

作用: 进行搜索

那么问题来了,mysql不是也能搜索吗,为何要用es?

小数据量下,Mysql是完全可以胜任的,可以完成搜索,此时可以不用es;但是在 大数据量(百万千万甚至上亿) 的前提下,会有以下几个问题:

  1. 性能低:使用模糊查询,左边有通配符,不会走索引,会全表扫描,性能低
  2. 功能弱:如果以”华为手机“作为条件,可能查询不出来想要的数据

而es可以完美解决以上问题:

  1. es可以自动对条件进行分词。
    比如华为手机,可以分成华为手机、华为、手、手机等词语。这样,搜索匹配的范围就大多了。
  2. es的倒排索引,也叫反向索引。

倒排索引将文档进行分词,形成词条和id的对应关系即为反向索引。

以唐诗为例,请说出包含“前”的诗句
你可能一下子说不出来,但是,让你背一下《静夜思》,你肯定会。

正向索引:由《静夜思》–>窗前明月光—>“前”字

反向索引:“前”字–>窗前明月光–>《静夜思》
这种由诗名联想到诗句再到句中词的,就称为正向索引;
而反向索引正好相反,是由词到诗句再到诗名

反向索引的实现就是对诗句进行分词,分成单个的词,由词推句,即为反向索引

生成的倒排索引中,词条会排序,形成一颗树形结构(和mysql索引一样),提升词条的查询速度

既然es那么好用,是不是可以替换掉mysql之类的数据库呢?

先说下答案:不要,因为它们的分工是不一样的。 一般在工作中,都是由mysql负责存储数据,然后再将数据进行同步到es,然后再从es中进行搜索。

Mysql和Es的区别如下:

  1. mysql有事务性,而es没有事务性,所以,你删了的数据是无法恢复的。
  2. es没有物理外键,所以,对数据强一致性要求比较高时慎用
 总结:es和mysql分工不同,mysql负责存储数据,es负责搜索数据。
      es和mysql分工不同,mysql负责存储数据,es负责搜索数据。
      es和mysql分工不同,mysql负责存储数据,es负责搜索数据.

es在架构中的位置:

ElasticSearch基础入门,白话es

应用场景

•搜索:海量数据的查询

•日志数据分析

•实时数据分析文章来源地址https://www.toymoban.com/news/detail-404293.html

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

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

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

相关文章

  • 分布式搜索引擎Elasticsearch基础入门学习

    Elasticsearh 是 elastic.co 公司开发的分布式搜索引擎。 Elasticsearch(简称ES)是一个开源的分布式、高度可扩展的全文搜索和分析引擎。它能够快速、近乎实时的存储、搜索和分析大量数据。适用于包括文本、数字、地理空间、结构化和非结构化数据等在内的所有类型数据。 它通

    2024年02月03日
    浏览(38)
  • web3 solidity 基础 ERC20 大白话搞懂

    ERC20 是 eth 的一个标准,怎么理解标准一词呢? 标准是大家遵循的一个协议,根据这个协议大家都知道该怎么去做,例如去吃饭的时候人多,你就需要排队,然后去窗口跟阿姨说你要吃什么,阿姨就会帮你打;若你不准守这个标准,直接冲进后厨,翻开泔水,大喊着我要吃饭

    2024年01月22日
    浏览(49)
  • 使用阿里云试用Elasticsearch学习:1.7 基础入门——索引管理

    我们已经看到 Elasticsearch 让开发一个新的应用变得简单,不需要任何预先计划或设置。 不过,要不了多久你就会开始想要优化索引和搜索过程,以便更好地适合您的特定用例。 这些定制几乎围绕着索引和类型的方方面面,在本章,我们将介绍管理索引和类型映射的 API 以及一

    2024年04月12日
    浏览(41)
  • 使用阿里云试用Elasticsearch学习:1.5 基础入门——请求体查询

    简易 查询 —query-string search— 对于用命令行进行即席查询(ad-hoc)是非常有用的。然而,为了充分利用查询的强大功能,你应该使用 请求体 search API, 之所以称之为请求体查询(Full-Body Search),因为大部分参数是通过 Http 请求体而非查询字符串来传递的。 请求体查询 —下文简

    2024年04月10日
    浏览(52)
  • 使用阿里云试用Elasticsearch学习:1.3 基础入门——搜索-最基本的工具

    现在,我们已经学会了如何使用 Elasticsearch 作为一个简单的 NoSQL 风格的分布式文档存储系统。我们可以将一个 JSON 文档扔到 Elasticsearch 里,然后根据 ID 检索。但 Elasticsearch 真正强大之处在于可以从无规律的数据中找出有意义的信息——从“大数据”到“大信息”。 Elasticse

    2024年04月12日
    浏览(46)
  • Three入门 【基础知识,并搭建第一个场景】

    哈喽小伙伴们,最近工作比较忙一直没有给大家更新,这篇文章开始会开启新的专栏 Three.js ,记录一下博主学习Three.js的过程;一起来看下吧。 Parcel 是 Web 应用打包工具,适用于经验不同的开发者。它利用多核处理提供了极快的速度,并且不需要任何配置。 首先通过 Yarn 或

    2024年02月08日
    浏览(111)
  • 【Three.js基础入门】:创建你的第一个3D场景

    Three.js是一种强大的JavaScript库,用于在Web浏览器中创建交互式的3D图形和动画。无需熟练的图形编程经验,你也可以通过Three.js轻松地构建令人惊叹的3D场景。 本文将带你逐步学习如何入门Three.js,从创建一个简单的3D场景开始。 我们将介绍如何使用Three.js创建你的第一个3D场景

    2024年02月16日
    浏览(164)
  • FPGA/Verilog HDL/AC620零基础入门学习——第一个项目按键控制LED

    最近要考试了,所以我赶紧补习FPGA,我们用的是小梅哥的AC620开发板,软件是Quartus。推荐看这个视频教程:零基础轻松学习FPGA,小梅哥FPGA设计思想与验证方法视频教程 用按键控制LED灯的亮灭就是一个二选一多路器,两个IO,a、b,可以是高电平,也可以是低电平。 输入按键

    2024年02月05日
    浏览(57)
  • 如何做一个快速粉的小红薯ai绘画号?        教程篇:零基础小白如何从入门到精通

    2.1 mewxai绘画教程 2.1.1 什么是mewxai? mewxai是一款微信小程序,打开你的微信,搜索\\\"mewxai\\\"就可以找到,意为\\\"我的微信ai\\\",由于读音不太习惯,加上它的头像酷似一个一个小海豚,所以ai绘画圈子一般称它为\\\"小海豚\\\"。 mewxai的开发者为知乎大v\\\"程序员秋风\\\",开发完成时间为2022年

    2023年04月09日
    浏览(51)
  • 【Java基础教程】(二)入门介绍篇 · 下:从JDK下载安装到第一个“Hello World!”程序,解析PATH和CLASSPATH环境变量的妙用~

    JDK 安装与配置; 理解环境变量PATH和CLASSPATH的主要作用; 运行第一个Java程序。 要进行Java的程序开发,必须先有Java开发工具包( JavaDevelopmentKit,JDK )的支持。本节主要基于JDK1.8版本来介绍安装等知识,读者朋友可以直接登录 Oracle官网 去进行下载,也可以在下边链接(包含

    2024年02月13日
    浏览(61)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包