如同磁铁吸引四周的铁粉,热情也能吸引周围的人,改变周围的情况。

ES数据备份还原的新集群首次查询慢

Charele 回复了问题 • 2 人关注 • 2 个回复 • 2307 次浏览 • 2024-03-25 18:45 • 来自相关话题

请教一个计算平均差值的问题

God_lockin 回复了问题 • 3 人关注 • 3 个回复 • 2901 次浏览 • 2024-01-02 10:13 • 来自相关话题

用_update只对文档部分字段更新的话性能高吗?

FFFrp 回复了问题 • 2 人关注 • 1 个回复 • 2972 次浏览 • 2023-12-25 11:40 • 来自相关话题

打开kibana的stack monitoring瞬间,ES集群其他索引会出现一个慢查询尖刺

回复

GreyJ 发起了问题 • 1 人关注 • 0 个回复 • 2117 次浏览 • 2023-12-14 11:04 • 来自相关话题

求助,ES对查询结果进行后置处理

laoyang360 回复了问题 • 3 人关注 • 2 个回复 • 2404 次浏览 • 2024-01-07 22:22 • 来自相关话题

腾迅云ES6.8.2主日志报空异常,应用没有报错

回复

chenwh 发起了问题 • 0 人关注 • 0 个回复 • 2564 次浏览 • 2023-11-27 14:31 • 来自相关话题

ElasticSearch自动补全,中文不准确的问题,请大家帮我看一下

God_lockin 回复了问题 • 2 人关注 • 1 个回复 • 2554 次浏览 • 2023-11-21 22:17 • 来自相关话题

如何在搜索的时候,针对字段的模糊匹配时又对内容正则或wildcard匹配

mryu 回复了问题 • 2 人关注 • 1 个回复 • 2147 次浏览 • 2023-11-10 16:59 • 来自相关话题

从白日梦到现实:推出 Elastic 的管道查询语言 ES|QL

liuxg 发表了文章 • 0 个评论 • 2078 次浏览 • 2023-11-08 13:26 • 来自相关话题

原文:https://elasticstack.blog.csdn ... 86439


!(https://img-blog.csdnimg.cn/a5 ... 63.png)

今天,我们很高兴地宣布 Elastic® 的新管道查询语言 [ES|QL](https://www.elastic.co/guide/e ... .html "ES|QL")(Elasticsearch 查询语言)的技术预览版,它可以转换、丰富和简化数据调查。 ES|QL 由新的查询引擎提供支持,通过并发处理提供高级搜索功能,无论数据源和结构如何,都可以提高速度和效率。 通过在单个屏幕上创建聚合和可视化来快速解决问题,以实现迭代和流畅的工作流程。

ES|QL 介绍

Elasticsearch 的演变
-----------------

在过去 13 年中,[Elasticsearch®](https://www.elastic.co/elasticsearch/ "Elasticsearch®") 取得了显着发展,适应了用户需求和不断变化的数字环境。 Elasticsearch 最初用于全文搜索,后来根据用户反馈扩展到支持更广泛的用例。 在整个过程中,Elasticsearch [Query DSL](https://www.elastic.co/guide/e ... .html "Query DSL")(我们第一个采用的搜索语言)为过滤器、聚合和其他操作提供了丰富的查询集。 这种基于 JSON 的 DSL 最终成为我们 [_search](https://www.elastic.co/guide/e ... .html "_search") API 端点的基础。

随着时间的推移和需求的多样化,逐渐显现出用户需要的不仅仅是查询 DSL 所提供的功能。我们开始在查询 DSL 下引入和融合了其他 DSL,用于[脚本编写](https://www.elastic.co/guide/e ... .html "脚本编写")、安全调查中的[事件](https://www.elastic.co/guide/e ... .html "事件")等等。然而,尽管这些扩展功能非常多才多艺,它们并没有完全满足用户的一些需求。

用户想要一种能够:

*   简化威胁和安全调查,同时通过提供全面和迭代方法的单个查询观察和解决生产问题
*   通过单一界面搜索、丰富、聚合和可视化更多内容来简化数据调查
*   使用高级搜索功能(例如带有并发处理的查找)提高查询大量数据的速度和效率,无论来源和结构如何

更多阅读,请点击 https://elasticstack.blog.csdn ... 86439

reindex是否支持只更新版本号比较低的旧文档?

Charele 回复了问题 • 3 人关注 • 2 个回复 • 2275 次浏览 • 2023-11-06 14:27 • 来自相关话题

k8s安装ECK时,对存储设置有什么要求?

回复

wangxinrong 回复了问题 • 1 人关注 • 1 个回复 • 2165 次浏览 • 2023-11-02 14:24 • 来自相关话题

es怎么生成TB级别的测试数据

God_lockin 回复了问题 • 2 人关注 • 1 个回复 • 2305 次浏览 • 2023-10-25 11:12 • 来自相关话题

ES集群扩展,多节点好,还是高配置好

zmc 回复了问题 • 2 人关注 • 1 个回复 • 1968 次浏览 • 2023-10-25 09:59 • 来自相关话题

设置ES全局查询超时search.default_search_timeout是否会影响scroll查询

Charele 回复了问题 • 3 人关注 • 2 个回复 • 1714 次浏览 • 2023-10-19 14:23 • 来自相关话题

ES 关于 remote_cluster 的一记小坑

yangmf2040 发表了文章 • 0 个评论 • 1210 次浏览 • 2023-10-08 15:04 • 来自相关话题

最近有小伙伴找到我们说 Kibana 上添加不了 Remote Cluster,填完信息点 Save 直接跳回原界面了。具体页面,就和没添加前一样。

![](https://infinilabs.com/img/blo ... /a.gif)

我们和小伙伴虽然隔着网线但还是进行了深入、详细的交流,梳理出来了如下信息:

  1. 两个集群:集群 A 和集群 B ,版本都是 7.10.0 ;
    1. 集群 A 没区分节点角色;
    2. 集群 B 设置了 独立的 master 节点、coordinator 节点和 data 节点,其中 data 节点还带 remote_cluster_client 角色;
  2. 在集群 A 的 Kibana 可以添加 集群 B 为远程集群;
  3. 在集群 B 添加 集群 A 就不行,Kibana 跳回之前的页面;
  4. 网络组确认已经放开策略,网络测试也正常;

    翻看了 ES 和 Kibana 的日志, ES 日志中有连接失败的错误信息, Kibana 日志中无对应输出。

    yaml<br /> [2023-09-13T11:38:41,055][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.mode] from [SNIFF] to [sniff]<br /> [2023-09-13T11:38:41,055][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.seeds] from [[]] to [["127.0.0.1:7102"]]<br /> [2023-09-13T11:38:41,056][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.mode] from [SNIFF] to [sniff]<br /> [2023-09-13T11:38:41,056][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.seeds] from [[]] to [["127.0.0.1:7102"]]<br /> [2023-09-13T11:38:41,057][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.mode] from [SNIFF] to [sniff]<br /> [2023-09-13T11:38:41,057][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.seeds] from [[]] to [["127.0.0.1:7102"]]<br /> [2023-09-13T11:38:41,093][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.mode] from [SNIFF] to [sniff]<br /> [2023-09-13T11:38:41,094][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.seeds] from [[]] to [["127.0.0.1:7102"]]<br /> [2023-09-13T11:38:41,094][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.mode] from [SNIFF] to [sniff]<br /> [2023-09-13T11:38:41,094][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.seeds] from [[]] to [["127.0.0.1:7102"]]<br /> [2023-09-13T11:38:41,095][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.mode] from [SNIFF] to [sniff]<br /> [2023-09-13T11:38:41,096][INFO ][o.e.c.s.ClusterSettings ] [710-1] updating [cluster.remote.test.seeds] from [[]] to [["127.0.0.1:7102"]]<br /> [2023-09-13T11:38:51,099][WARN ][o.e.t.RemoteClusterService] [710-1] failed to connect to new remote cluster test within 10s<br /> [2023-09-13T11:39:11,101][WARN ][o.e.t.SniffConnectionStrategy] [710-1] fetching nodes from external cluster [test] failed<br /> org.elasticsearch.transport.ConnectTransportException: [][127.0.0.1:7102] handshake_timeout[30s]<br /> at org.elasticsearch.transport.TransportHandshaker.lambda$sendHandshake$1(TransportHandshaker.java:73) ~[elasticsearch-7.10.2.jar:7.10.2]<br /> at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:684) ~[elasticsearch-7.10.2.jar:7.10.2]<br /> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]<br /> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]<br /> at java.lang.Thread.run(Thread.java:832) [?:?]<br />

    已经测试过网络是通的,开始尝试把集群 B 的角色配置统统去掉再尝试。
    嘿,添加成功了。
    接下来为了找出问题,开始一步一步给每个节点再加回原来的角色。而且如果节点原来没有 remote_cluster_client 角色,这次也一并加上。
    操作过程

    • 先从 data 节点开始,恢复角色,尝试添加远程集群,失败。
    • 接着 coordinate 节点 , 恢复角色且新增 remote_cluster_client 角色,尝试添加远程集群,失败。
    • 最后 master 节点,恢复角色且新增 remote_cluster_client 角色,尝试添加远程集群,成功。

      最终直到所有节点都有 remote_cluster_client 角色后,才成功添加远程集群。
      结论: ES 集群添加远程集群所有节点都必须拥有 remote_cluster_client 角色。
      事情到这里,似乎没什么问题。但当我们对这个结论进行检验时,又有了新发现。
      上面的场景忽视了一个因素 -- Kibana 。于是我们搭建了一个两个节点的集群,其中节点 A 是全角色节点,节点 B 只是 data 节点。让 Kibana 分别连接两个节点进行测试。
      验证结果

    • 当 Kibana 连接节点 A 时,可以正常添加。
    • Kibana 连接节点 B 时,添加失败,跳回界面。

      结论:ES 集群添加远程集群时,Kibana 连接的 ES 节点必须拥有 remote_cluster_client 角色。
      很显然,这个结论更合理。

      原因分析
      我们是通过 Kibana 界面操作去添加远程集群的, Kibana 连接的节点就被当作 remote_client 。该节点要向远程集群发起连接并执行相关调用。但这一切有个前提,该节点必须有 remote_cluster_client 角色才能向远程集群发起连接。
      ![](https://infinilabs.com/img/blo ... /b.png)
      引申
      我们的 CCS 操作也必须发送到一个具有 remote_cluster_client 角色的节点,才能成功执行。
      ![](https://infinilabs.com/img/blo ... /1.png)
      ![](https://infinilabs.com/img/blo ... /2.png)
      ![](https://infinilabs.com/img/blo ... /3.png)

      参考连接
      [https://www.elastic.co/guide/e ... .html](https://www.elastic.co/guide/e ... e.html)