作者:来自 Elastic Elastic DevRel team

来自 Elastic DevRel 团队的问候!本期通讯将介绍 Elasticsearch 9.5 版本、最新的博客和视频,以及即将举行的活动。
有哪些新功能?
Elasticsearch 和 Elastic Stack 9.5 版本将原生 PromQL、Dashboards API、Cases as Data 和自然语言编写功能正式发布。9.5 还引入了 Columnar Mode、VectorDB 索引模式、新的多模态 semantic 字段,以及处于技术预览阶段的 Elastic Agent Builder tracing。
Columnar Mode:全新的存储基础
Columnar Mode 是一种处于技术预览阶段的新索引模式。默认情况下,它会将每个字段在列式存储中只存储一次,并且不使用倒排索引。这样可以减少存储空间占用,并为分析型查询和长时间数据保留提供更快的基础。
Columnar Logs 构建于 Columnar Mode 之上,是第一个专为日志数据设计的 profile。它只在 message 字段上保留一个倒排索引,因此全文搜索仍然保持快速,同时将其他所有字段以列式格式存储。与标准日志相比,它可以显著降低存储使用量,同时不会改变搜索体验。这两种模式都需要显式选择启用,并且不会影响现有索引。
向量搜索:VectorDB 索引模式和自动校准
两个技术预览功能可以减少向量搜索的设置和调优工作。
VectorDB 索引模式只需一个设置即可创建向量索引。它会应用已经针对向量工作负载进行调优的默认配置,包括量化、合并策略和缓存加载,因此无需手动进行配置:
markdown
`
1. PUT my-index
2. {
3. "settings": {
4. "index": {
5. "mode": "vectordb_document"
6. }
7. }
8. }
`AI写代码
DiskBBQ 向量搜索的自动校准 会通过分析索引中的实际向量,自动设置量化深度、预处理和过采样。通常需要专业知识和反复测试才能完成的调优工作,现在可以自动完成:
bash
`
1. PUT /my_vector_index
2. {
3. "mappings": {
4. "properties": {
5. "my_vector_field": {
6. "type": "dense_vector",
7. "dims": 1536,
8. "index_options": {
9. "type": "bbq-disk",
10. "auto_calibration": true
11. }
12. }
13. }
14. }
15. }
`AI写代码
总的来说,这两个功能意味着,只需进行最少的配置,就可以创建和调优一个向量搜索索引。
多模态语义搜索:图像、音频、视频和 PDF
新的 semantic 字段将语义搜索扩展到了图像、音频、视频和 PDF 文件。它的工作方式与文本的 semantic_text 相同:定义一个字段、索引你的内容,然后进行查询。嵌入向量会在数据摄取时自动生成。
你可以在同一个字段中混合不同类型的内容。一个文档可以同时包含文本描述、图像和音频片段。然后使用文本查询,就可以从所有这些内容中检索出最佳匹配结果。如果要通过图像而不是文本进行搜索,只需将图像作为查询发送,Elasticsearch 就会即时生成嵌入向量。
该功能由 jina-embeddings-v5-omni 模型提供支持,该模型可以将文本、图像、音频、视频和 PDF 放入共享的向量空间中。该功能在 Elasticsearch 9.5 和 Elastic Cloud Serverless 中以技术预览形式提供。请阅读完整博客文章了解设置详情和代码示例。
Agent Builder:Tracing、人工审批和更快的响应
Elastic 9.5 为 Agent Builder 增加了三项新功能。
Agent Observability and Monitoring(技术预览)会将每次 LLM 调用、工具调用和推理步骤以 OpenTelemetry(OTel)的形式记录到 Elasticsearch 中。团队可以检查 token 使用量、找出耗时瓶颈,并使用已经用于运维数据的同一个 Kibana 来调试 agent 行为。内置的 agent-builder-traces skill 让你可以使用自然语言查询这些数据。你还可以直接基于 trace 索引创建自定义仪表板和成本阈值告警。
Human-in-the-loop 审批功能允许 agent 暂停并等待人员确认敏感操作,然后再继续执行。每次批准或拒绝都会记录在审计日志中。审批请求可以发送到 Slack 等外部工具,因此审批人员无需进入 Kibana 即可做出决定。
Agent Builder 还通过将特定任务路由到更快的模型,并减少冗余的 LLM 调用,以更低的 token 成本提供更快的响应。这些改进会自动应用于所有 Agent Builder 用户,无需进行任何配置更改。
Prometheus 和 PromQL 现已正式发布
原生 Prometheus 和 PromQL 支持现已正式发布(GA)。团队可以将现有的 Grafana 仪表板和 Prometheus 工具直接指向 Elastic,并在不改变现有设置的情况下,与 ES|QL 一起运行 PromQL 查询。迁移工具也已正式发布,可以帮助将 Grafana 和 Datadog 仪表板及告警迁移到 Kibana。
新的 ES95 编解码器可以将指标存储空间降低到每个样本约 3 字节(比 9.4 低约 20%),相比普通的 Prometheus 存储后端也具有显著更高的存储效率。Elastic 现在还支持所有 OpenTelemetry 指标时间粒度,因此任何使用 OTel 进行检测的应用程序都可以通过 OTLP 按照指标生成时的原样发送指标,无需任何变通方案。
Alert Zero、Workflows 和规则版本历史
Alert Zero 的目标是让告警队列中只保留真正重要的内容。在 9.5 中,Attack Discovery 朝着这一目标迈进,它会像分析师一样调查告警;检查实体风险、搜索原始事件,并寻找支持性证据,然后才判断某个事件是否属于攻击。当发现覆盖缺口时,它会起草一条 ES|QL 检测规则供分析师审核。现在,Attack Discovery 可以通过 Elastic Workflow 按计划自动运行,也可以手动运行。
Elastic Workflows 在 9.5 中增加了版本控制,因此团队可以查看谁修改了某个 workflow、比较任意两个版本,并通过一次点击进行回滚。新的可视化模式会将 workflow 显示为图,其中触发器、步骤和逻辑都会与 YAML 一同显示。Human-in-the-loop 步骤现在可以向 Slack 发送审批请求,因此 workflow 可以暂停,并等待 Kibana 外部的人员做出决定。
检测规则版本历史(技术预览)会完整记录每个已保存的规则状态,包括每次更改由谁进行以及何时进行。团队可以查看任意历史版本,将其与前一个版本进行比较,并通过一次操作将其恢复。这对于确定某条规则何时停止生成告警,以及满足要求提供变更控制证据的合规框架都非常有用。
博客、视频和有趣的链接
-
NVIDIA 推理 :Jan Kazlouski 带我们了解如何只使用一个 API 密钥和一个模型 ID 在 Elasticsearch 中设置 NVIDIA 托管的模型。
-
**Jina On-Prem:**Scott Martens 介绍了 Jina On-Prem,这是一个用于 Jina AI 高性能模型的完全自包含安装套件。
-
**AutoOps:**与 Ori Shafir 和 Arnon Stern 一起探索 Elastic Cloud Hosted 部署和 Cloud Connect 集群的重新设计的 AutoOps 体验。
-
**Agent memory:**Noam Schwartz 介绍了我们如何基于 Elasticsearch 构建持久化的 agent memory 层,实现 0.89 的召回率,并确保零租户数据泄露。
-
**Agentic SOC:**与 Aaron Jewitt 一起了解五步优化循环,该循环帮助我们将 AI agent 的 LLM 调用减少了 60%。
-
**Kibana Workflows:**了解如何运行每日 ML 磁盘使用量预测,并通过 Slack 获取告警,其中列出哪些主机以及何时会达到容量上限。作者:Valeriy Khakhutskyy。
来看看这些视频:
-
Jon Avezbaki:30 分钟讲解所有搜索算法(从入门到高级)
-
Viktor Gamov:查询 Kafka Stream 的 7 种方式(以及各自的权衡)
社区精选博客:
-
Debraj Maity:Elasticsearch 中一个 JSON 文档的隐秘旅程
-
Gautier Franchini:为什么 Elasticsearch 不再读取你的文档了
即将举行的活动
**免费学习 Elastic:**探索自主学习模块,提升你的 Elastic 技能。