You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过SQL API获取AWS Open Search中的keyword子字段

AWS OpenSearch SQL API获取.keyword字段的解决方案

你可以通过以下几种方式实现需求:

  • 显式在SQL语句中指定带.keyword后缀的字段
    OpenSearch SQL底层可以识别多字段路径,即使元数据接口没有返回.keyword字段,直接写完整字段名查询依然有效,示例语句如下:
    SELECT color.keyword, name.keyword FROM <你的索引名> LIMIT 10
    
  • 开启SQL插件的多字段支持配置
    你可以修改全局配置项 opensearch.sql.multi_field_support.enabled 为true,开启后调用DESCRIBE等元数据查询接口就会自动返回所有带.keyword后缀的多字段。AWS托管OpenSearch服务可以直接在域控制台的「高级集群参数」中修改该配置,无需重启节点,修改后数分钟即可生效。
  • 调用索引映射接口主动提取字段列表
    你可以直接调用原生REST API查询索引的完整映射结构,自行解析提取所有keyword子字段:
    GET /<你的索引名>/_mapping
    
    返回结果中会完整列出所有字段和子字段的类型配置,提取到的.keyword字段可以直接用于后续SQL查询。
  • 升级OpenSearch域版本
    你当前使用的v1.0.0属于早期发布版本,SQL插件的多字段兼容能力不完善,可以将域升级到v1.3以上的长期支持版本,该版本已经对齐Elasticsearch的字段返回逻辑,默认会在元数据查询结果中包含所有.keyword后缀的多字段。

注意:如果你的keyword字段配置了ignore_above: 256,长度超过256的文本内容不会被索引到keyword字段,查询时会返回空值。

内容的提问来源于stack exchange,提问作者TAMILARASAN R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 04:45:02