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

相关推荐
武子康1 小时前
大数据-239 离线数仓 - 广告业务实战:Flume 导入日志到 HDFS,并完成 Hive ODS/DWD 分层加载
大数据·后端·apache hive
洛森唛17 小时前
Elasticsearch DSL 查询语法大全:从入门到精通
后端·elasticsearch
字节跳动数据平台1 天前
代码量减少 70%、GPU 利用率达 95%:火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据
得物技术1 天前
深入剖析Spark UI界面:参数与界面详解|得物技术
大数据·后端·spark
武子康1 天前
大数据-238 离线数仓 - 广告业务 Hive分析实战:ADS 点击率、购买率与 Top100 排名避坑
大数据·后端·apache hive
武子康2 天前
大数据-237 离线数仓 - Hive 广告业务实战:ODS→DWD 事件解析、广告明细与转化分析落地
大数据·后端·apache hive
大大大大晴天2 天前
Flink生产问题排障-Kryo serializer scala extensions are not available
大数据·flink
Elasticsearch3 天前
如何使用 Agent Builder 排查 Kubernetes Pod 重启和 OOMKilled 事件
elasticsearch
Elasticsearch4 天前
通用表达式语言 ( CEL ): CEL 输入如何改进 Elastic Agent 集成中的数据收集
elasticsearch
武子康4 天前
大数据-236 离线数仓 - 会员指标验证、DataX 导出与广告业务 ODS/DWD/ADS 全流程
大数据·后端·apache hive