| 定义位置 | 查询请求的 runtime_mappings,或映射里的 runtime 段 |
|---|---|
| 常用场景 | 从复合字段拆值、按时间派生星期/时段、给旧索引补字段 |
| 代价 | 每次查询按需计算,命中量大时比索引字段慢 |
示例
示例
GET /logs/_search
{
"size": 0,
"runtime_mappings": {
"day_of_week": {
"type": "keyword",
"script": {
"source": "emit(doc["@timestamp"].value.dayOfWeekEnum.getDisplayName(TextStyle.FULL, Locale.ROOT))"
}
}
},
"aggs": { "by_day": { "terms": { "field": "day_of_week" } } }
}runtime 字段可以被搜索、聚合、排序,行为与索引字段一致;确认口径稳定后再固化进映射或物化为真实字段。