DeleteByQueryElasticsearch Processor
描述
使用查询从 Elasticsearch 索引中删除。 查询可以从 FlowFile 主体或查询参数加载。
标签
属性
| 名称 | 默认值 | 可选值 | 描述 |
|---|---|---|---|
| Query Definition Style | full |
| 如何定义 JSON 查询以供处理器使用。 |
| Query | | JSON 语法的查询,不是 Lucene 语法。例如:{"query":{"match":{"somefield":"somevalue"}}}。如果未设置此参数,将从 FlowFile 内容中读取查询。如果查询(属 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Query Clause | | 使用 JSON 语法(而非 Lucene 语法)的 "query" 子句。例如:{"match":{"somefield":"somevalue"}}。如果查询为空,将使用默认的 JSON 对象,从而在 Elasticsearch 中产生 "match_all" 查询。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Query Attribute | | 如果设置,则执行的查询将在指定属性中的每个结果 FlowFile 上设置。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Index | | 要使用的索引的名称。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Type | | 该文档的类型(Elasticsearch 用于索引和搜索)。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Max JSON Field String Length | 20 MB | 解析 JSON 文档或属性时字符串值允许的最大长度。 | |
| Client Service | | 控制器服务 API:ElasticSearchClientServicecn.org.acal.lynxus-lynxus-elasticsearch-client-service-api-nar-2.11.8 | 用于运行查询的 Elasticsearch 客户端服务。 |
动态属性
| 名称 | 值 | 描述 |
|---|---|---|
| HTTP 请求头的名称 | 用于检索 HTTP 请求头值的 Record Path 表达式 | 前缀:HEADER: - 将指定的属性名称/值作为 HTTP 请求头添加到 Elasticsearch 请求中。如果 Record Path 表达式结果为 null 或空值,则将省略该 HTTP 请求头。 |
| 要添加的 URL 查询参数的名称 | URL 查询参数的值 | 在用于处理的 Elasticsearch URL 中将指定的属性名称/值添加为查询参数。这些参数将覆盖查询请求体中任何匹配的参数 |
关系 (Relationships)
| 名称 | 描述 | 自动终止 |
|---|---|---|
failure | 如果「按查询」操作失败且读取了 FlowFile,它将被发送到此关系。 | 否 |
retry | 由于服务器/集群可用性而失败的所有 FlowFile 都会转至此关系。 | 否 |
success | 如果「按查询」操作成功且读取了 FlowFile,它将被发送到此关系。 | 否 |
写入的 FlowFile 属性
| 名称 | 描述 |
|---|---|
elasticsearch.delete.took | 完成删除操作所花费的时间(以毫秒为单位)。 |
elasticsearch.delete.error | 如果运行删除时出错,则 Elasticsearch 提供的错误消息。 |
状态管理
该组件不存储状态。
受限 (Restricted)
该组件不受限。
输入要求
该组件允许有传入连接。
详细说明
DeleteByQueryElasticsearch
该 Processor 使用 _delete_by_query 处理器(handler)对一个或多个索引执行 删除操作。查询应为合法的 Elasticsearch JSON DSL 查询(不支持 Lucene 语法)。查询示例:
{
"query": {
"match": {
"username.keyword": "john.smith"
}
}
}
要删除索引的全部内容,可以使用:
{
"query": {
"match_all": {}
}
}