elasticSearch原理浅尝

终于等到你 马上就要放弃

开个玩笑 ,进入正题 on fire

基础的咱不说了,一搜一麻袋

全文检索:

协调节点广播查询请求到相关分片 并 将其响应 整合 全局排序 返回结果集合

带路由:具体文档

shard = hash(document_id) % (num_of_primary_shards)

平衡负载,协调节点每个请求分发到不同分片

协调节点 hash算法 得出主分片,路由对应节点 执行请求 ,成功 转发请求到副本节点

更新:

协调节点找到主分片 修改_source.json 重新索引主分片文档 并转发到node1 node2副本

如果另一个进程修改则重复 直到retry_on_conflict次放弃

put:更新将json完全替换掉,需要指定id

post:自动创建id,更新相同字段的值,非幂等deng

一致性保障

consistency:自定义处理一次增删改请求

one 写操作 一个主分片active可执行

all写操作,所有主分片和副本都是活跃 可执行

quorum默认值,大部分分片活跃可用

近实时搜索

分词器

字符串拆分独立词或词汇单元token,输出token stream

字符过滤器:接受原始文本 各种转换:去除HTML标签 数字转换成文字等

分词器:切分上面处理后的文本,一系列词项

词项过滤器:处理词项 小写化 过滤掉停用词 处理同义词 stemming提取词根

分析器:字符串转换为一串tokens/terms

索引时分析器顺序

字段映射定义的分析器 > 索引设置中的 > 标准分析器

搜索分析器顺序

全文查找定义的 > 字段映射搜索分析器 >字段映射分析器>索引配置默认>索引配置>标准的

写入时分词:

句子 单词 小写 删过滤词 单词转词干 term存储倒排索引中

映射中每个text类型字段指定自己的analyzer,写入索引时 没有指定analyzer 默认分析器

IK分词器:ik_smart ik_max_word

相关推荐
大树8812 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
大志哥12312 小时前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
果丁智能14 小时前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
ApacheSeaTunnel14 小时前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
weixin_3975740915 小时前
PDF复杂表格的1:1还原引擎:跨页表格自动拼接技术实战
大数据·人工智能·pdf
TableRow15 小时前
参数化搜索的实现原理:从多维索引到查询优化
elasticsearch·全文检索
极光代码工作室15 小时前
基于数据仓库的电商数据分析平台
大数据·hadoop·python·spark·数据可视化
秋名山码民15 小时前
Graph RAG 深度解析:从向量检索到知识推理的技术演进
大数据·人工智能·rag
m0_3801671416 小时前
面向开发者的Top10加密货币数据API(2026年最新)
大数据·人工智能·区块链
yyxx41212316 小时前
上海企业如何选择专业的钉钉服务商
java·大数据·人工智能·钉钉