ES|QL 连接功能终于来了!没错,就是连接!
Elasticsearch 8.18 引入了一项新的 SQL 风格的 JOIN 功能,名为 LOOKUP JOIN,它可以使用易于更新的查找数据集来进行数据关联和丰富。此功能目前为技术预览版,允许用户向事件添加主机和资产信息,根据威胁情报列表检查 IP 地址等等。Lookup Join 是一种 LEFT OUTER JOIN,它依赖于右侧一种名为“lookup”的新索引模式,该模式可以直接更新。查找索引可以保存各种类型的数据,例如资产、威胁情报数据、订单信息、员工或客户信息等等。历史上,Elasticsearch 缺乏连接功能,但 Lookup Join 解决了这一限制。为了启用 Lookup Join,创建了一种名为“lookup”的新索引模式,该模式限制为 20 亿个文档,并且可以直接更新。源数据没有任何限制,并且无需进行数据准备即可执行连接。Lookup Join 比 ES|QL 中的 ENRICH 命令更易于设置和管理,具有诸如无需创建丰富策略、无需策略执行以及更好地处理多个匹配项等优点。用户可以通过多种方式创建查找索引,包括通过索引管理或 Kibana 中的 ML 文件上传器。使用 Lookup Join 的可能性是无限的,未来的发展可能包括其他类型的连接,例如 INNER 连接或子查询,以及针对任何索引进行连接。