暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Elasticsearch 8.19 新特性:ES|QL 跨集群搜索

新智锦绣 2025-09-18
1017

点击蓝字关注我们


大家好!今天,我们来聊聊Elasticsearch 8.19版本的新亮点——ES|QL跨集群搜索(Cross-Cluster Search with ES|QL)。这个版本于2025年7月发布,不仅简化了多集群数据查询,还为开发者带来了诸多便利。作为Elastic Stack的核心,8.19在性能、AI集成和查询语言上都有突破性进展。


什么是ES|QL跨集群搜索? 


ES|QL(Elasticsearch Query Language)是Elasticsearch新的查询语言,旨在简化复杂查询,提供更直观的SQL-like语法。8.19版本的一个新颖特性是ES|QL正式支持跨集群搜索(Cross-Cluster Search),这让开发者能用单一查询访问多个远程集群的数据,而无需手动聚合结果。

传统跨集群搜索需要DSL查询和复杂配置,而ES|QL让一切更简单:它支持自然语言般的语法,减少代码量,同时性能提升显著。官方数据显示,跨集群查询能简化多数据源访问,适合分布式环境如云部署或多地域数据中心。 对于日志分析、监控或AI应用,这意味着更快迭代和更低门槛。

此外,8.19还包括LOOKUP JOIN的GA(General Availability),允许在查询中高效关联数据,进一步增强ES|QL的表达力。


原理详解:


ES|QL跨集群搜索的原理建立在Elasticsearch的远程集群配置和查询引擎上。开发者只需在查询中指定远程集群别名,ES|QL引擎会自动路由请求到目标集群,合并结果返回。


1. 配置远程集群:


首先,需要设置远程集群连接。ES|QL依赖于跨集群搜索(CCS)功能,和传统远程集群连接方式相同,需要通过种子节点(seeds)建立连接,确保安全传输。 


2. 查询执行流程:


  • 路由与分发:ES|QL解析查询,识别远程索引(如 remote_cluster:index_name),将子查询分发到相应集群。

  • 结果合并:本地集群汇总远程结果,进行排序、聚合等操作。支持ES|QL的所有功能,如 LIMIT、WHERE 和聚合。

  • 优化:8.19引入性能提升,如减少网络开销和并行执行,查询速度比传统DSL快。

这一特性简化了代码:开发者无需编写多API调用,就能处理分布式数据


使用示例


1、配置远程集群


    PUT _cluster/settings
    {
      "persistent": {
        "cluster": {
          "remote": {
            "remote-cluster": {
              "seeds": ["remote-host:9300"]  #seeds 指定远程种子节点
            }
          }
        }
      }
    }


    2、简单ES|QL跨集群查询


    查询远程集群日志:

      POST _query?format=txt
      {
        "query""""
          FROMremote-cluster:logs-remote
          | WHERE @timestamp > now() - 1d
          | STATS COUNT(*) BY host.name
          | LIMIT 10
        """
      }

      代码说明:FROM 指定多索引,包括远程(remote-cluster:logs-remote)。WHERE 过滤时间,STATS 聚合计数,LIMIT 限制结果。


      性能考量


      ES|QL跨集群搜索在8.19中性能显著优化,但它适合低延迟环境,使用时需注意网络因素。


      1. 性能影响


      • 延迟增加:跨集群涉及网络调用,可能加 10-50ms 延迟,视距离和负载。

      • 资源消耗:合并结果需本地计算,聚合查询可能增加 CPU/内存开销。

      • 限制:不支持某些高级功能如脚本字段,需本地集群权限匹配远程。


      2. 优化建议


      • 网络优化:使用专用链路或云内集群。

      • 查询简化:避免复杂聚合,结合本地缓存。

      • 监控:用 Kibana 检查查询时间,调整集群配置。


      结语


      Elasticsearch 8.19 以ES|QL跨集群搜索为核心,为开发者提供了更简洁、高效的工具。结合LOOKUP JOIN等特性,做到了真正简化了分布式查询,提高开发者的工作效率。



      关于公司

      感谢您关注新智锦绣科技(北京)有限公司!作为 Elastic 的 Elite 合作伙伴及 EnterpriseDB 在国内的唯一代理和服务合作伙伴,我们始终致力于技术创新和优质服务,帮助企业客户实现数据平台的高效构建与智能化管理。无论您是关注 Elastic 生态系统,还是需要 EnterpriseDB 的支持,我们都将为您提供专业的技术支持和量身定制的解决方案。


      欢迎关注我们,获取更多技术资讯和数字化转型方案,共创美好未来!

      Elastic 微信群

      EDB 微信群


      发现“分享”“赞”了吗,戳我看看吧






      文章转载自新智锦绣,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

      评论