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

相关推荐
文火冰糖的硅基工坊13 小时前
[创业之路-702]:“第三次”与“第四次工业革命”的范式跃迁
大数据·人工智能·科技·嵌入式硬件·架构·嵌入式·gpu
TDengine (老段)13 小时前
TDengine 数据函数 LN 用户手册
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
TDengine (老段)16 小时前
连接 TDengine 遇到报错 “failed to connect to server, reason: Connection refused” 怎么办?
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
攻城狮7号16 小时前
AI+大数据时代:如何从架构到生态重构时序数据库的价值?
大数据·人工智能·时序数据库·apache iotdb·sql大模型
TDengine (老段)16 小时前
内网搭建邮件服务,打通 TDengine IDMP 通知途径
大数据·时序数据库·tdengine
AI数据皮皮侠17 小时前
中国博物馆数据
大数据·人工智能·python·深度学习·机器学习
JAVA学习通17 小时前
SpringOJ竞赛项目----组件ElasticSearch
大数据·elasticsearch·搜索引擎
xxxxxxllllllshi17 小时前
Java中Elasticsearch完全指南:从零基础到实战应用
java·开发语言·elasticsearch·面试·职场和发展·jenkins
武子康17 小时前
大数据-129 - Flink CEP详解:实时流式复杂事件处理(Complex Event Processing)全解析
大数据·后端·flink
视***间18 小时前
视程空间Pandora:终端算力破晓,赋能边缘计算未
大数据·人工智能·边缘计算·ai算力·视程空间