【ElasticSearch】(一)—— 初识ES

本文为博客 VIP 文章,开通 VIP 后可阅读全文

开通 VIP

 

目录

一、了解ES

1、elasticsearch的作用

2、ELK技术栈

3、elasticsearch和lucene

4、为什么不是其他搜索技术? 

5、总结

二、倒排索引

1、正向索引

2、倒排索引

3、正向和倒排

三、ES的一些概念

1、文档和字段

2、索引和映射 

3、mysql与elasticsearch 


一、了解ES

1、elasticsearch的作用

elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容

例如:

  • 在百度搜索答案

  • 在电商网站中搜索商品

  • 在打车软件搜索附近的车

2、ELK技术栈

elasticsearch结合kibana、Logstash、Beats,也就是elastic stack(ELK)。被广泛应用在日志数据分析、实时监控等领域:

ELK基本流程包含:数据采集 -> 数据清洗 -> 存储 -> 可视化分析。Elastic Stack通过完整的日志解决方案,帮助用户完成对日志处理全链路管理。

而elasticsearch是elastic stack的核心,负责存储、搜索、分析数据。

3、elasticsearch和lucene

elasticsearch底层是基于lucene来实现的。

Lucene是一个Java语言的搜索引擎类库,是Apache公司的顶级项目,由DougCutting于1999年研发。官网地址:Apache Lucene - Welcome to Apache Lucene

Lucene的优势:

  • 易扩展
  • 高性能(基于倒排索引)

Lucene的缺点:

  • 只限于Java语言开发
  • 学习曲线陡峭
  • 不支持水平扩展

elasticsearch的发展历史:

  • 2004年Shay Banon基于Lucene开发了Compass

  • 2010年Shay Banon 重写了Compass,取名为Elasticsearch。

官网地址: https://www.elastic.co/cn/ 

相比与lucene,elasticsearch具备下列优势:

Elasticsearch倒排索引详解 1. 倒排索引常被称为反向索引、置入档案或反向档案,是种索引方法,被用来存储在全文搜索下某个单词在个文档或者组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。通过倒排索引,可以根据单词快速获取包含这个单词的文档列表。2. 倒排索引 VS正排索引特性正排索引(Forward Index)倒排索引(Inverted Index)存储内容文档到词的映射关系词到文档的映射关系存储结构每个文档记录包含的所有词每个词记录包含它出现的所有文档 ID查询效率。 阅读详情

相关推荐

算法篇--倒排索引

文章目录、前言二、单词——文档矩阵 、前言   见其名知其意,有倒排索引,对应肯定,有正向索引。正向索引(forward index),反向索引(inverted index)更熟悉的名字是倒排索引。   在搜索引擎中每个文件都对应个文件ID,文件内容被表示为系列关键词的集合(实际上在搜索引擎索引库中,关键词也已经转换为关键词ID)。例如“文档1”经过分词,提取了20个关键词,每个关键词都会记录它在文档中的出现次数和出现位置。   得到正向索引的结构如下:般是通过key,去找value。 “文档1

小强签名设计 的博客 7462

什么是倒排索引?

为什么需要倒排索引 倒排索引,也是索引。 索引,初衷都是为了快速检索到你要的数据。 每种数据库都有自己要解决的问题(或者说擅长的领域),对应的就有自己的数据结构,而不同的使用场景和数据结构,需要用不同的索引,才能起到最大化加快查询的目的。 对 Mysql 来说,是 B+ 树,对 Elasticsearch/Lucene 来说,是倒排索引。 Elasticsearch 是建立在全文搜索引擎库 Lucene 基础上的搜索引擎,它隐藏了 Lucene 的复杂性,取而代之的提供套简单致的 RESTf

u013008898的博客 2万+

ElasticSearch学习专题(初识ES及安装、基本指令

二者安装都很简单。1、Solr利用Zookeeper进行分布式管理,而Elasticsearch 自身带有分布式协调管理功能。2、Solr支持更多格式的数据,比如JSON、XML、CSV,而 Elasticsearch 仅支持 json文件格式。3、Solr在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于。​​分布式搜索和分析引擎,负责存储、检索和分析数据核心功能:全文搜索、结构化搜索、数据分析​​数据处理管道工具,用于收集、解析和转换数据。

2303_80933038的博客 958

倒排索引原理

下图是个相对复杂些的倒排索引,与上图的基本索引系统比,在单词对应的倒排列表中不仅记录了文档编号,还记载了单词频率信息(TF),即这个单词在某个文档中的出现次数,之所以要记录这个信息,是因为词频信息在搜索结果排序时,计算查询和文档相似度是很重要的个计算因子,所以将其记录在倒排列表中,以方便后续排序时进行分值计算。这样每个文档就转换为由单词序列构成的数据流,为了系统后续处理方便,需要对每个不同的单词赋予唯的单词编号,同时记录下哪些文档包含这个单词,在如此处理结束后,我们可以得到最简单的倒排索引。

meser88的博客 1万+

ElasticSearch】(初识ES

       接触ElasticSearch段时间了,前期调研、项目接入、数据同步、列表查询这些阶段都已经经历了,但是ES在脑海中的整体映像还是模模糊糊,做个梳理,认真地思考ElasticSearch中模糊的思维。        前提:        如图,是从github上学习到了,宏观总结阶段的流程化思考,很科学的学习习惯,我按照这个思路来总结下目前阶段我理解到的ElasticS...

暂七师师长常乃超 4219

ESElasticSearch 初识

部分来自于 ElasticSearch 参考的Getting started章节 1. 简介: ElasticSearch个基于 Lucence 的搜索引擎。它提供了个可以 使用 HTTP web 接口 和 无模式 JSON 文档的 分布式的,多用户能力的全文搜索引擎ES 是使用 Java 开发的 开源框架。官方提供的可用的客户端 支持包括 Java,.NET(C#),...

lihuapiao的专栏 1833

Elasticsearch系列实战初识全文检索工具es

1.简介及使用场景 Elasticsearch个分布式可扩展的实时搜索和分析引擎, 同时Elasticsearch种面向文档型数据库,条数据就是个文档,用JSON作为其文档序列化的格式 主要使用在以下场景中: 1.检索数据: 对海量数据的应用进行快速搜索 2.数据分析: ELK生态圈支持对大规模的日志实时进行收集、分析和展示 3.分布式存储:ES提供的分片/持久化方案相对于传统存储解决方案不论是存储速度与规模都有很好提升 2.集群节点 1.集群(Cluster): 每个集群以个唯的名称标

blackomen的博客 364

ElasticSearch 初识ElasticSearch

ElasticSearch修改默认分词器 ElasticSearchPUT与POST区别 ElasticSearch与Lucene、Solr的关系

东风麦芽糖 797

Elasticsearch初识

Elasticsearch个分布式、高性能、高可用、可伸缩的搜索和分析系统。 功能 (1)分布式的搜索引擎和数据分析引擎 搜索:百度,网站的站内搜索,IT系统的检索 数据分析:电商网站,最近7天牙膏这种商品销量排名前10的商家有哪些;新闻网站,最近1个月访问量排名前3的新闻版块是哪些 分布式,搜索,数据分析 (2)全文检索,结构化检索,数据分析 全文检索:我想搜索商品名称包含牙膏...

一朵的专栏 183

Elasticsearch):初识Elasticsearch

1、什么是搜索? 百度:我们比如说想找寻任何的信息的时候,就会上百度去搜索下,比如说找部自己喜欢的电影,或者说找本喜欢的书,或者找条感兴趣的新闻(提到搜索的第印象)但是:百度 != 搜索 垂直搜索(站内搜索) 搜索,就是在任何场景下,找寻你想要的信息,这个时候,会输入段你要搜索的关键字,然后就期望找到这个关键字相关的有些信息 2、如果用数据库做搜索会怎么样? 数据都是存储在数...

zuo_h_dr的博客 366

ES6学习手册()——初识ES6

ES6是什么 ECAMScrpit定义了: 语言语法——语法解析规则、关键词、语句、声明、运算符; 类型——布尔型、数字、字符串、对象等; 原型和继承 内建函数和函数的标准库——JSON、Math、数组方法、对象自省方法等 2.ES5——2009年发布 这版本引进了Object.create()、Object.defineProperty()、getters和setters、严格模式以及JS

Daisy花园 1021

ES初识

什么是elasticsearch个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能什么是elastic stack(ELK)?是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch什么是Lucene?是Apache的开源搜索引擎类库,提供了搜索引擎的核心API。

fzcd3的博客 153

倒排索引

倒排索引的概念 倒排索引(inverted index),是种数据库索引,用于存储从内容到文档的映射。使用倒排索引可以很好的支持全文搜索,被广泛应用于信息检索(搜索引擎、数据库)中。 wiki中定义如下: In computer science, an inverted index (also referred to as a postings file or inverted file) ...

NULL 3575

ES高频面试问题:张图带你读懂 Elasticsearch 中“正排索引(正向索引)”和“倒排索引(反向索引)”区别

文章目录1、正排索引和倒排索引1.1 正排索引1.2 倒排&正排2、张图看懂正排&倒排2.1 图解2.2 区别3、个通俗易懂的比喻4、正排索引的数据结构4.1 doc values4.2 fielddata:5、总结 1、正排索引和倒排索引 1.1 正排索引 从广义来说,doc values 本质上是个序列化的 列式存储 。列式存储 适用于聚合、排序、脚本等操作,所有的数字、地理坐标、日期、IP 和不分词( not_analyzed )字符类型都会默认开启,不支持text和annota

Elastic开源社区 5321

数据处理---之---倒排索引---讲解

. 倒排索引 二. 倒排索引原理 1 词语和文档的关系 2 倒排索引的数据结构 3 倒排索引的建立实例 4 倒排索引的更新策略 . 倒排索引 倒排索引(Inverted Index) 也被称为“反向索引”或“反向文件”,是种索引数据结构。倒排索引在“内容”(例如,单词、数字)和存放内容的“位置”(例如,数据库、文件、组文件)之间建立映射,其目的在于快速全文检索和使用最小处理代价将新文件添加进数据库。通过倒排索引,可以快速地根据“内容”查找到包含它的文件。倒排索引是目..

csdn_bajie 3160

Elasticsearch数据结构——倒排索引

先介绍下正向索引: 当用户发起查询时(假设查询为个关键词),搜索引擎会扫描索引库中的所有文档,找出所有包含关键词的文档,这样依次从文档中去查找是否含有关键词的方法叫做正向索引。互联网上存在的网页(或称文档)不计其数,这样遍历的索引结构效率低下,无法满足用户需求。 正向索引结构如下: 文档1的ID→单词1的信息;单词2的信息;单词3的信息… 文档2的ID→单词3的信息;单词2的信息;单词4的信息… 为了增加效率,搜索引擎会把正向索引变为反向索引(倒排索引)即把“文档→单词”的形式变为“单词→文档”的形式。

qq_40277163的博客 3965

倒排索引:ES倒排索引底层原理及FST算法的实现过程

这也许是你全网你能找到的最详细的倒排索引的底层解读。博主把倒排索引的讲解划分为以下七个部分,理解难度递增,可根据自身需要选择依次阅读或者针对性阅读。通常来说,应付般的面试,理解第部分即可。如果需要面试搜索相关业务的岗位,需要深层次理解倒排索引,可根据自身情况选择阅读。本文花费了作者大量的精力来论证和整理,如果你喜欢作者的文章,请帮忙点个赞和关注吧 O(∩_∩)O ~。谢谢大家的支持。提到ES,大多数爱好者想到的都是搜索引擎,尽管这是个误区,但是也不得不提。大数据搜索最重要的三个要素分别是 “快”、“准”

Elastic开源社区 2万+

正排索引 vs 倒排索引 - 搜索引擎具体原理

本文全面解析了数据检索中的核心索引技术:正排索引和倒排索引,以及它们在搜索引擎中的应用。正排索引以文档的自然顺序组织数据,便于快速访问特定文档,而倒排索引则按关键词索引数据,优化了全文搜索的效率。文章通过实例阐释了两种索引的工作原理,比较了它们的优缺点,并讨论了各自的适用场景。此外,文章还深入探讨了搜索引擎的工作原理,从宏观的角度描述了搜索引擎的整体流程,以及从具体的角度分析了搜索引擎如何处理查询和呈现结果的详细步骤,展现了搜索引擎如何通过结合正排索引和倒排索引技术,为用户提供快速准确的搜索体验。

Yawesh的博客 8950
上一篇: 【微服务】(十六)—— 分布式事务Seata
下一篇: 【ElasticSearch】(二)—— 安装elasticsearch
机智兵
博客等级 码龄9年 1535粉丝 46原创
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机智兵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值