返回
让 Elasticsearch 元数据字段为您所用
后端
2024-01-31 08:31:33
Elasticsearch 中的每个文档都有与之关联的元数据,这些元数据字段可以提供有关文档的各种信息,包括索引名称、类型、ID、路由、父文档、得分、源、版本、序列号、创建时间、更新时间和说明。
元数据字段对于理解和管理 Elasticsearch 中的文档非常重要。我们可以使用它们来过滤文档、对文档进行排序,并获取有关文档的更多信息。我们还可以自定义元数据字段的行为,例如更改它们的默认值或将它们存储在不同的字段中。
元数据字段的种类
Elasticsearch 中有许多不同的元数据字段,每种字段都有其特定的用途。下表列出了最常用的元数据字段及其说明:
字段 | 说明 |
---|---|
_index | 文档所在的索引名称 |
_type | 文档的类型 |
_id | 文档的 ID |
_routing | 文档的路由值 |
_parent | 文档的父文档 ID |
_score | 文档的得分 |
_source | 文档的原始 JSON 数据 |
_version | 文档的版本号 |
_seq_no | 文档的序列号 |
_primary_term | 文档的主分片上的最新术语 |
_created | 文档的创建时间 |
_updated | 文档的更新时间 |
_explanation | 文档得分的解释 |
如何使用元数据字段
元数据字段可以通过查询 DSL 来使用。例如,我们可以使用 _index 字段来过滤索引中的文档,或使用 _type 字段对文档进行排序。我们还可以使用元数据字段来获取有关文档的更多信息,例如文档的版本号或创建时间。
如何自定义元数据字段的行为
我们可以通过在创建索引时指定映射来自定义元数据字段的行为。例如,我们可以更改元数据字段的默认值或将它们存储在不同的字段中。
要自定义元数据字段的行为,我们需要在创建索引时指定映射。映射是一个 JSON 对象,它定义了索引中字段的类型和属性。我们可以使用以下语法来指定映射:
{
"mappings": {
"properties": {
"_field_name": {
"type": "type",
"properties": {
// 元数据字段的属性
}
}
}
}
}
例如,要将 _id 字段的默认值更改为 "my_id",我们可以使用以下映射:
{
"mappings": {
"properties": {
"_id": {
"type": "keyword",
"default": "my_id"
}
}
}
}
元数据字段是 Elasticsearch 中一个非常强大的功能。我们可以使用它们来过滤文档、对文档进行排序,并获取有关文档的更多信息。我们还可以自定义元数据字段的行为,例如更改它们的默认值或将它们存储在不同的字段中。