ES 7.X高级客户端(EHLC)本地加载缓存搜索模板脚本实现咨询
ES版本迁移过程中SearchTemplate实现方案问题梳理
项目迁移背景
- 版本升级路径:整体系统从ES 5.X版本迁移至ES 7.X版本
- 客户端替换规划:原有系统基于JEST Client接入ES,迁移阶段计划改用ES高级客户端(EHLC,High Level Rest Client)
- 查询实现选型:由于业务搜索查询逻辑复杂度较高,计划采用
SearchTemplate API承载查询需求 - 性能优化要求:为降低I/O开销,拟将搜索模板文件存储在本地,并配套实现模板缓存机制
已开展的前期调研工作
- 查阅EHLC官方文档,未找到可直接从文件系统加载脚本文件、且自动完成缓存的内置机制
- 验证过将脚本存储在ES服务端的实现方案,但该方案不符合项目要求:存储在ES内的脚本无法配套维护标准化变更日志,不满足项目的流程管控要求
核心待确认问题
- EHLC是否存在内置机制,可直接将本地存储的文件作为脚本加载使用?
- 若无对应内置能力,是否应当采用内联脚本的实现方式,通过自定义开发代码完成本地脚本文件的加载与缓存逻辑?
内容的提问来源于stack exchange,提问作者Sahil Gupta
相关产品推荐
相关产品推荐

