ES|QL 元数据字段

编辑

ES|QL 可以访问元数据字段。当前支持的字段包括:

  • _index:文档所属的索引。该字段类型为keyword
  • _id:源文档的 ID。该字段类型为keyword
  • _version:源文档的版本。该字段类型为long
  • _ignored:被忽略的源文档字段。该字段类型为keyword

要启用对这些字段的访问,需要为FROM 源命令提供一个专用指令。

FROM index METADATA _index, _id

只有当数据源为索引时,元数据字段才可用。因此,FROM 是唯一支持 METADATA 指令的源命令。

启用后,这些字段将可用于后续处理命令,就像其他索引字段一样。

FROM ul_logs, apps METADATA _index, _version
| WHERE id IN (13, 14) AND _version == 1
| EVAL key = CONCAT(_index, "_", TO_STR(id))
| SORT id, _index
| KEEP id, _index, _version, key
id:long _index:keyword _version:long key:keyword

13

apps

1

apps_13

13

ul_logs

1

ul_logs_13

14

apps

1

apps_14

14

ul_logs

1

ul_logs_14

与索引字段类似,一旦执行聚合,元数据字段将不再可用于后续命令,除非用作分组字段。

FROM employees METADATA _index, _id
| STATS max = MAX(emp_no) BY _index
max:integer _index:keyword

10100

employees