📅  最后修改于: 2023-12-03 14:40:57.409000             🧑  作者: Mango
Elasticsearch Ingest Node 是 Elasticsearch 的一个组件,主要用于在数据写入 Elasticsearch 前对数据进行预处理。Ingest Node 可以通过简单的管道方式,将一个或多个处理步骤串联并应用到需要处理的文档上。
Ingest Node 可以对文档进行以下操作:
Ingest Node 的主要特点如下:
Ingest Node 的应用场景如下:
以下是一个简单的 Ingest Node 管道示例:
PUT _ingest/pipeline/my-pipeline
{
"description" : "my first pipeline",
"processors" : [
{
"set" : {
"field": "my-field",
"value": "hello world"
}
}
]
}
上述管道定义了一个 set 处理步骤,用于将文档中的 my-field 字段设置为 "hello world"。管道定义成功后,还需要将其应用到具体的文档上:
PUT my-index/my-type/1?pipeline=my-pipeline
{
"my-field" : "old value"
}
使用了 my-pipeline 管道的文档写入成功后,就会将 my-field 字段的值设置为 "hello world"。
Elasticsearch Ingest Node 是 Elasticsearch 的一个非常实用的组件,可以对文档进行预处理以提高存储和搜索性能。Ingest Node 还支持自定义处理步骤,非常灵活。建议大家在实际应用中加以使用,会给搜索和聚合效果带来额外的提升。