- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
常见的elastic search(弹性搜索)
走近 elastic search
分享人 林云霞
概念解释
01
概念解释
RESTful
API
full text search
real time
search and
analytics engine
Elasticsearch
JSON
over HTTP
distributed
Lucene
based
multi tenancy
open - source
hign availability
scales massively
schema free
概念解释
Elastic Search 是一个基于 Lucene 构建的开源,分布式,RESTful 搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。支持通过 HTTP 使用 JSON 进行数据索引,它能够快速搜索数十亿的文件以及 PB 级的数据,结构化或者非结构化的数据都可以。
简介
概念解释
节点
一个节点就是集群中的一个服务器
集群
点多台Es服务器的结合的统称叫ES集群,一个集群包含多台服务器,多个节点。
分片
主分片和副本分片
主分片
1 N
复制分片
概念解释
索引
中的索引是组织数据的逻辑空间,一个索引就是一个拥有几分相似特征的文档的集合
类型
在一个索引中,你可以定义一种或多种类型
文档
一个文档是一个可被索引的基础信息单元
数据库
表
行
概念解释
索引 ( index )
类型( type)
文档
( doc )
1 N
1 N
点此添加标题
集群
节点
主分片
副本分片
索引
概念解释
文档
概念解释
主节点
控制集群,负责集群中的操作,协调创建索引、查询请求
客户端节点
负载 均衡,组装返回的数据给客户端
节点类型
对应节点
相关配置
主节点
Node1
node.master=true
数据节点
Node2
node.date=true
客户端节点
Node3
node.data=false;
node.master=false
集群中有很多结点,可以配置为3种不同的角色
系统原理
02
系统原理
Elasticsearch使用了Apache Lucene,其内部使用的是被称为倒排索引的数据结构。
存储模型
倒排索引源于实际应用中需要根据属性的值来查找记录。这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因而称为倒排索引(inverted index)。
倒排索引
系统原理
文档是Elasticsearch的数据单位,对文档中的词项进行分词,并创建去重词项的有序列表,将词项与其在文档中出现的位置列表关联,便形成了倒排索引。
我们来看下如下2个文档是如何被倒排索引的:
文档1(Doc 1): 零售应用开发一室主题分享
文档2(Doc 2): 数据仓库团队主题分享
文档1(Doc 1): 零售/应用/开发/一室/主题/分享
文档2(Doc 2): 数据/仓库/团队/主题/分享
系统原理
倒排索引
词项
文档
零售
doc1
应用
doc1
开发
doc1
一室
doc1
主题
doc1、doc2
分享
doc1、doc2
数据
doc2
仓库
doc2
团队
doc2
文档1(Doc 1): 零售/应用/开发/一室/主题/分享
文档2(Doc 2): 数据/仓库/团队/主题/分享
系统原理
当我们查询“数据分享”这一个中文分词时,只需要知道他在哪个文档即可。
Terms
doc1
doc2
数据
X
分享
x
X
SCORE(相关度)
1
2
两个文档都匹配,但是DOC2比其它的有更多的匹配项。相关度评分为2,如果我们加入简单的相似度算法(similarityAndlgorithm),计算匹配单词的数目,这样我们就可以说DOC2这个 文档比其它的匹配度更高,这对于我们的查询结果具有更多相关性。
系统原理
当我们发送索引一个新文档的请求到协调节点后,将发生如下一组操作:
Elasticsearch集群中的每个节点都包含了改节点上分片的元数据信息。协调节点(默认)使用文档ID参与计算,以便为路由提供合适的分片。Elasticsearch使用MurMurHash3函数对文档ID进行哈希,其结果再对分片数量取模,得到的结果即是索引文档的分片。
shard = hash(document_id) % (num_of_primary_shards)
新建索引
系统原理
coordinating
node
shard
memory
builder
translog
filesys
您可能关注的文档
最近下载
- 2024年中国石油东方地球物理勘探有限责任公司秋季高校毕业生招聘270人(甘肃有岗)笔试备考试题及答案解析.docx
- 天马旅游汽车公司管理职责、制度汇编.doc
- 从领导力角度说耿彦波——.ppt
- 唐山介绍PPT(唐山简介经典版).pptx
- 《我的家庭贡献与责任》第一课时小学道德与法治四年级上册PPT课件.pptx VIP
- 保养手册_迈腾b7l使用说明书.pdf
- 2024-2025人教版3三年级数学上册(全册)优秀测试卷(附答案).doc
- (2024年1月)广西各市房屋工程造价指标.doc VIP
- 2022年11月苏州城市学院下半年公开招聘27名管理岗位工作人员笔试参考题库含答案解析.docx
- 2023年义务教育初中英语新课标《英语新课程标准》解读ppt课件.pptx VIP
文档评论(0)