<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Elasticsearch 搜索引擎专题：从倒排索引到生产运维 on PlumePHP</title><link>https://plumephp.com/posts/elasticsearch/</link><description>Recent content in Elasticsearch 搜索引擎专题：从倒排索引到生产运维 on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Wed, 07 Oct 2026 14:25:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/posts/elasticsearch/index.xml" rel="self" type="application/rss+xml"/><item><title>组合模板与索引生命周期</title><link>https://plumephp.com/elasticsearch-composable-templates/</link><pubDate>Wed, 07 Oct 2026 14:25:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-composable-templates/</guid><description>讲解 Elasticsearch 组合模板与索引生命周期：组件模板的复用与版本化、组合模板的 composed_of 顺序与优先级合并规则、与 ILM 及数据流的配合、旧式模板迁移路径，以及用 _simulate 验证最终生效配置的排错方法，避免模板体系从减少重复变成制造困惑。</description></item><item><title>批量写入调优与背压</title><link>https://plumephp.com/elasticsearch-bulk-write-tuning/</link><pubDate>Wed, 07 Oct 2026 14:23:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-bulk-write-tuning/</guid><description>讲解 Elasticsearch 批量写入调优与背压：bulk 批次大小与并发度的取舍、refresh 与 translog 的持久化策略、分片与 routing 对写入的影响、429 拒绝的成因与重试退避，以及写入链路的监控指标与排错方法，帮助导入任务在吞吐与可靠性之间找到平衡。</description></item><item><title>相关性调优与离线评测</title><link>https://plumephp.com/elasticsearch-relevance-tuning/</link><pubDate>Wed, 07 Oct 2026 14:21:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-relevance-tuning/</guid><description>讲解 Elasticsearch 相关性调优与离线评测：人工判定集构建与分级标注、NDCG 与 MRR 等指标的计算方法、BM25 参数与字段权重调优、搜索模板参数化、A/B 实验与线上验证流程，以及把评测接入 CI 做回归防护的工程实践，减少拍脑袋调参带来的反复。</description></item><item><title>Elasticsearch 与 OpenSearch 对比</title><link>https://plumephp.com/elasticsearch-opensearch-comparison/</link><pubDate>Wed, 07 Oct 2026 14:19:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-opensearch-comparison/</guid><description>对比 Elasticsearch 与 OpenSearch：从许可变更与 fork 历史讲起，梳理两者在查询语言、安全、向量检索等功能上的差距，给出快照迁移与 reindex from remote 的落地步骤，并从生态、云托管与运维成本角度给出选型建议。</description></item><item><title>Transform 与物化聚合</title><link>https://plumephp.com/elasticsearch-transform-aggregation/</link><pubDate>Wed, 07 Oct 2026 14:17:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-transform-aggregation/</guid><description>讲解 Elasticsearch Transform 物化聚合：pivot 与 latest 两种模式、group_by 与聚合定义、连续转换的 sync 调度与 checkpoint 机制、历史数据回填与目标索引重建，以及 Transform 与 rollup 在时序降采样场景下的取舍。</description></item><item><title>EQL 事件查询与序列检测</title><link>https://plumephp.com/elasticsearch-eql-event-query/</link><pubDate>Wed, 07 Oct 2026 14:15:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-eql-event-query/</guid><description>讲解 Elasticsearch EQL 事件查询：事件序列语法与 until 边界、sequence 与 sample 模式、by 分组与 maxspan 取舍、与 Query DSL 的能力差异、安全检测场景建模，以及序列匹配的性能开销与常见报错。</description></item><item><title>可搜索快照与冻结层：把冷数据放进对象存储还能查</title><link>https://plumephp.com/elasticsearch-searchable-snapshots-frozen-tier/</link><pubDate>Fri, 02 Oct 2026 15:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-searchable-snapshots-frozen-tier/</guid><description>系统讲解 Elasticsearch 的可搜索快照与冻结层：快照目录直读原理、frozen tier 的共享缓存与部分索引机制、partial searchable snapshot 的用法，以及对象存储成本与查询延迟之间的权衡方法。</description></item><item><title>分页与深度分页：from/size、search_after、PIT 与 scroll</title><link>https://plumephp.com/elasticsearch-pagination-deep-paging/</link><pubDate>Fri, 02 Oct 2026 14:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-pagination-deep-paging/</guid><description>系统讲解 Elasticsearch 的分页机制：from/size 与 max_result_window 上限的由来、search_after 排序游标的用法与限制、PIT 如何保证跨页一致性、scroll 在导出场景的适用边界，以及四种方案的选型依据。</description></item><item><title>嵌套与父子关联查询：nested、join 字段与性能取舍</title><link>https://plumephp.com/elasticsearch-nested-parent-child-joins/</link><pubDate>Fri, 02 Oct 2026 13:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-nested-parent-child-joins/</guid><description>系统讲解 Elasticsearch 处理关联数据的三种方式：对象数组的扁平化陷阱、nested 类型与 nested 查询、join 字段的父子文档模型与 has_child/has_parent 查询，并给出三者在查询能力、写入成本与性能上的取舍依据。</description></item><item><title>磁盘水位与容量规划：三档水位、分片规划与扩容决策</title><link>https://plumephp.com/elasticsearch-disk-watermark-capacity-planning/</link><pubDate>Fri, 02 Oct 2026 12:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-disk-watermark-capacity-planning/</guid><description>系统讲解 Elasticsearch 的磁盘水位机制与容量规划方法：low/high/flood 三档水位的作用与默认值、只读索引块与写拒绝的触发条件、分片大小与数量的规划原则，以及基于增长趋势的扩容决策流程。</description></item><item><title>查询缓存与请求缓存：节点级、分片级与 fielddata 的取舍</title><link>https://plumephp.com/elasticsearch-query-cache-request-cache/</link><pubDate>Fri, 02 Oct 2026 11:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-query-cache-request-cache/</guid><description>系统讲解 Elasticsearch 的三层缓存：node query cache 缓存过滤器结果、shard request cache 缓存聚合与建议结果、fielddata 缓存支撑排序与聚合，并给出失效机制、内存配额与生产调优方法。</description></item><item><title>混合检索与重排序：BM25 与向量融合、RRF 与重排模型</title><link>https://plumephp.com/elasticsearch-hybrid-search-reranking/</link><pubDate>Fri, 02 Oct 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-hybrid-search-reranking/</guid><description>系统讲解 Elasticsearch 的混合检索与重排序：BM25 词法检索与 kNN 向量检索的互补性、RRF 倒数排名融合与加权线性组合、cross-encoder 重排模型接入，以及 nDCG、recall 等检索质量评估方法。</description></item><item><title>JVM 堆与 GC 调优：压缩指针、GC 选型、堆外内存与 OOM 排查</title><link>https://plumephp.com/elasticsearch-jvm-heap-gc-tuning/</link><pubDate>Thu, 01 Oct 2026 21:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-jvm-heap-gc-tuning/</guid><description>系统讲解 Elasticsearch 的 JVM 与 GC 调优：堆大小与压缩指针的约束、G1 与 ZGC 的选型取舍、堆外内存与文件缓存的关系、熔断器保护机制，以及 OOM 与长时间停顿的排查路径。</description></item><item><title>机器学习异常检测：作业与检测器、分桶分析、结果解读与告警联动</title><link>https://plumephp.com/elasticsearch-anomaly-detection-ml/</link><pubDate>Thu, 01 Oct 2026 20:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-anomaly-detection-ml/</guid><description>系统讲解 Elasticsearch 机器学习异常检测：作业与检测器的配置方式、数据源与分桶设计、模型训练与结果解读、异常分数调优，以及与告警体系的联动落地。</description></item><item><title>搜索模板与参数化：Mustache 模板、模板化查询聚合与版本管理</title><link>https://plumephp.com/elasticsearch-search-templates-mustache/</link><pubDate>Thu, 01 Oct 2026 19:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-search-templates-mustache/</guid><description>系统讲解 Elasticsearch 搜索模板：Mustache 语法与内置函数、模板化查询与聚合、与应用层 DSL 组装的取舍、模板版本管理与灰度，以及渲染性能与安全边界。</description></item><item><title>自定义分析器与分词：字符过滤器、分词器、过滤器链与拼音同义词</title><link>https://plumephp.com/elasticsearch-custom-analyzer-tokenizer/</link><pubDate>Thu, 01 Oct 2026 18:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-custom-analyzer-tokenizer/</guid><description>系统讲解 Elasticsearch 自定义分析器：字符过滤器、分词器与 token 过滤器链的组装方式，同义词与拼音插件配置，analyze API 调试手段，以及索引期与查询期分析器的分离设计。</description></item><item><title>快照与 SLM：仓库类型、增量快照、恢复流程与跨集群恢复</title><link>https://plumephp.com/elasticsearch-snapshot-restore-slm/</link><pubDate>Thu, 01 Oct 2026 17:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-snapshot-restore-slm/</guid><description>系统讲解 Elasticsearch 快照与快照生命周期管理：仓库类型选择、增量快照的段级复用原理、恢复与部分恢复流程、SLM 策略编排，以及跨集群恢复的落地方式。</description></item><item><title>路由与分片分配：自定义 routing、分配感知与热点分片治理</title><link>https://plumephp.com/elasticsearch-routing-shard-allocation/</link><pubDate>Thu, 01 Oct 2026 16:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-routing-shard-allocation/</guid><description>系统讲解 Elasticsearch 的路由与分片分配机制：自定义 routing 控制文档落点、分片分配感知与过滤规则、再平衡阈值调节、热点分片的诊断与治理手段。</description></item><item><title>「搜索服务架构：从索引到容错」</title><link>https://plumephp.com/elasticsearch-search-architecture-sync/</link><pubDate>Thu, 01 Oct 2026 15:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-search-architecture-sync/</guid><description>讲解搜索服务架构：搜索服务分层设计、索引更新策略与读写分离、CDC 同步与数据管道、多索引路由、缓存策略与容错降级，构建可扩展的搜索系统。</description></item><item><title>「连接器与数据同步：从 Connectors 生态到 CDC 一致性」</title><link>https://plumephp.com/elasticsearch-connectors-data-sync/</link><pubDate>Thu, 01 Oct 2026 15:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-connectors-data-sync/</guid><description>讲解 Elasticsearch 连接器与数据同步：Connectors 生态、增量同步与 API 写入、CDC 变更捕获与一致性、同步策略与冲突处理，以及同步链路的监控运维。</description></item><item><title>版本升级与迁移：滚动升级、reindex 重建与回滚预案</title><link>https://plumephp.com/elasticsearch-upgrade-migration/</link><pubDate>Thu, 01 Oct 2026 15:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-upgrade-migration/</guid><description>系统讲解 Elasticsearch 版本升级与数据迁移：升级前评估与兼容性检查、滚动升级顺序与分片恢复、reindex 与远程 _reindex 重建、破坏性变更处理、回滚预案与灰度验证。</description></item><item><title>「安全加固与访问控制：从角色到审计」</title><link>https://plumephp.com/elasticsearch-security-rbac/</link><pubDate>Thu, 01 Oct 2026 14:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-security-rbac/</guid><description>讲解 ES 安全加固：用户与认证、角色与索引权限、字段级与文档级安全、TLS 传输加密、审计日志，并给出生产安全配置清单。</description></item><item><title>「集群运维与监控：从健康诊断到滚动升级」</title><link>https://plumephp.com/elasticsearch-monitoring-cluster-ops/</link><pubDate>Thu, 01 Oct 2026 14:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-monitoring-cluster-ops/</guid><description>讲解 Elasticsearch 集群运维与监控：健康状态诊断、节点与分片管理、滚动升级与回滚、容量规划、监控指标与告警，以及常见故障排查方法。</description></item><item><title>跨集群复制与灾备：CCR 跟随索引、故障切换与双活权衡</title><link>https://plumephp.com/elasticsearch-cross-cluster-replication/</link><pubDate>Thu, 01 Oct 2026 14:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-cross-cluster-replication/</guid><description>系统讲解 Elasticsearch 跨集群复制（CCR）：跟随索引与 leader/follower 机制、auto-follow 模式、故障切换与提升流程、双活架构权衡，以及带宽与延迟的容量考量。</description></item><item><title>「地理空间搜索：从坐标到地图」</title><link>https://plumephp.com/elasticsearch-geo-search/</link><pubDate>Thu, 01 Oct 2026 13:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-geo-search/</guid><description>讲解 ES 地理空间搜索：geo_point 与 geo_shape 数据类型、距离查询与距离排序、边界框与多边形过滤、地理聚合，以及 Kibana Maps 可视化对接。</description></item><item><title>「相关性与打分进阶：从 BM25 到 function_score」</title><link>https://plumephp.com/elasticsearch-scoring-boosting/</link><pubDate>Thu, 01 Oct 2026 13:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-scoring-boosting/</guid><description>深入讲解 Elasticsearch 相关性打分：BM25 的 k1 b 参数调优、boost 权重语义、function_score 的脚本与因子、多字段查询加权，以及自定义评分的实践与陷阱。</description></item><item><title>多租户与资源隔离：分索引路由、文档级安全与配额治理</title><link>https://plumephp.com/elasticsearch-multi-tenancy-isolation/</link><pubDate>Thu, 01 Oct 2026 13:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-multi-tenancy-isolation/</guid><description>系统讲解 Elasticsearch 多租户隔离方案：按租户分索引与自定义路由、文档级与字段级安全、索引模板与配额管理、搜索限流与线程池隔离，以及共享集群的容量规划与治理。</description></item><item><title>「时序数据与 TSDB：从数据流到生命周期治理」</title><link>https://plumephp.com/elasticsearch-time-series-tsdb/</link><pubDate>Thu, 01 Oct 2026 12:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-time-series-tsdb/</guid><description>讲解 Elasticsearch 时序数据处理：数据流与索引生命周期、TSDB 索引模式、采样与降维、date_histogram 时序聚合，以及预测与异常检测的落地。</description></item><item><title>「高级文本检索：同义词、补全与纠错」</title><link>https://plumephp.com/elasticsearch-advanced-text-suggestions/</link><pubDate>Thu, 01 Oct 2026 12:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-advanced-text-suggestions/</guid><description>讲解 ES 高级文本检索：同义词过滤与同义词图、edge_ngram 自动补全、completion suggester、模糊匹配与拼写纠错，以及索引时与查询时处理的取舍。</description></item><item><title>SQL 与 ES|QL 查询：_sql 接口、管道语法与 BI 对接</title><link>https://plumephp.com/elasticsearch-sql-esql-querying/</link><pubDate>Thu, 01 Oct 2026 12:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-sql-esql-querying/</guid><description>系统讲解 Elasticsearch 的 SQL 与 ES|QL 查询能力：_sql 接口与翻译机制、JDBC/ODBC 驱动与 BI 工具对接、ES|QL 管道语法与聚合统计表达，以及与 Query DSL 的能力取舍和限制。</description></item><item><title>「ELK 日志分析体系：从采集到告警」</title><link>https://plumephp.com/elasticsearch-log-analysis-elk/</link><pubDate>Thu, 01 Oct 2026 11:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-log-analysis-elk/</guid><description>讲解 ELK 日志分析体系：Filebeat 与 Logstash 采集解析、索引模板与 ILM 生命周期、日志检索最佳实践、集群监控与告警，并给出 Nginx 访问日志的完整落地案例。</description></item><item><title>「向量检索与语义搜索：从 dense_vector 到混合检索」</title><link>https://plumephp.com/elasticsearch-knn-vector-semantic/</link><pubDate>Thu, 01 Oct 2026 11:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-knn-vector-semantic/</guid><description>讲解 Elasticsearch 向量检索与语义搜索：dense_vector 映射、kNN 搜索与参数、混合检索与 RRF、embedding 接入流程，以及向量检索的性能与效果调优。</description></item><item><title>查询剖析与慢日志：profile API、热点定位与优化闭环</title><link>https://plumephp.com/elasticsearch-query-profiling-slowlog/</link><pubDate>Thu, 01 Oct 2026 11:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-query-profiling-slowlog/</guid><description>系统讲解 Elasticsearch 查询性能诊断：profile API 逐阶段耗时拆解、慢查询日志阈值与配置、热点分片与热点线程定位，以及从剖析到优化的完整闭环。</description></item><item><title>「Painless 脚本与 Ingest 管道：从数据清洗到管道编排」</title><link>https://plumephp.com/elasticsearch-painless-ingest-pipeline/</link><pubDate>Thu, 01 Oct 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-painless-ingest-pipeline/</guid><description>深入讲解 Painless 脚本语言与 Ingest 管道：脚本上下文与 API、字段转换与条件处理、管道处理器编排、日期解析与数据清洗，以及脚本性能与安全的取舍。</description></item><item><title>「聚合分析：从指标统计到多维下钻」</title><link>https://plumephp.com/elasticsearch-aggregations-analytics/</link><pubDate>Thu, 01 Oct 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-aggregations-analytics/</guid><description>讲解 ES 聚合分析：metric 与 bucket 聚合的分类与语法、嵌套聚合与 pipeline 聚合、date_histogram 做时序统计、Terms 桶多维下钻，以及聚合结果如何对接 Kibana 可视化。</description></item><item><title>索引生命周期与滚动：ILM 阶段、rollover 与别名原子切换</title><link>https://plumephp.com/elasticsearch-index-lifecycle-rollover/</link><pubDate>Thu, 01 Oct 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-index-lifecycle-rollover/</guid><description>系统讲解 Elasticsearch 索引生命周期管理：ILM 五阶段动作编排、rollover 触发条件与别名原子切换、分片与副本调整、force merge 与 shrink 优化，以及归档删除策略与运维排错。</description></item><item><title>「部署运维与备份恢复」</title><link>https://plumephp.com/elasticsearch-deployment-backup/</link><pubDate>Wed, 30 Sep 2026 15:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-deployment-backup/</guid><description>系统讲解 Elasticsearch 部署运维：二进制、Docker 与 Kubernetes 部署对比、生产配置基线、滚动升级与回滚、快照备份与仓库配置，以及 ILM 冷热分层与监控告警。</description></item><item><title>「数据建模与 Mapping 设计」</title><link>https://plumephp.com/elasticsearch-data-modeling-mapping/</link><pubDate>Wed, 30 Sep 2026 14:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-data-modeling-mapping/</guid><description>讲解 ES 数据建模：Mapping 字段类型与 dynamic 策略、analyzer 多字段、nested 与父子对比、Doc Values 聚合，以及字段不可变与 reindex 重构。</description></item><item><title>「性能调优与缓存策略」</title><link>https://plumephp.com/elasticsearch-performance-tuning/</link><pubDate>Wed, 30 Sep 2026 13:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-performance-tuning/</guid><description>讲解 ES 性能调优：JVM Heap 与 GC、Page Cache 利用、refresh 与 translog 写入调优、查询缓存与 Doc Values、Segment Merge 与慢日志。</description></item><item><title>「集群分片与高可用架构」</title><link>https://plumephp.com/elasticsearch-cluster-shards-ha/</link><pubDate>Wed, 30 Sep 2026 12:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-cluster-shards-ha/</guid><description>深入讲解 Elasticsearch 集群架构：master 与 data 节点角色、分片副本分配原理、脑裂与 quorum 选举、跨机房高可用设计，以及磁盘水印与集群健康监控实践经验。</description></item><item><title>「Query DSL 与相关性打分」</title><link>https://plumephp.com/elasticsearch-query-dsl-relevance/</link><pubDate>Wed, 30 Sep 2026 11:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-query-dsl-relevance/</guid><description>讲解 ES Query DSL：叶子与复合查询、match 与 bool 组合、BM25 相关性与 function_score 打分，以及排序分页、search_after 与 explain。</description></item><item><title>「倒排索引与分词原理」</title><link>https://plumephp.com/elasticsearch-inverted-index-analysis/</link><pubDate>Wed, 30 Sep 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/elasticsearch-inverted-index-analysis/</guid><description>深入剖析 Elasticsearch 倒排索引：Term Dictionary 与 Posting List 结构、跳表与压缩算法、分析器与中文分词、索引段与近实时可见性，从底层理解检索原理。</description></item></channel></rss>