GetMongo

文档中心 › 组件索引 › GetMongo

GetMongo Processor

类型全限定名:cn.org.acal.lynxus.processors.mongodb.GetMongo

所属 Bundle:cn.org.acal.lynxus:lynxus-mongodb-nar:2.11.8

描述

从由用户指定的查询加载的 MongoDB 中的文档创建 FlowFiles。

标签

mongodbreadget

属性

下表中,加粗的属性为必填项;其余为可选项。表格同时标注默认值、是否支持表达式语言,以及是否为敏感属性(值会被加密)。

名称默认值可选值描述
Client Service控制器服务 API:
MongoDBClientService
cn.org.acal.lynxus-lynxus-mongodb-client-service-api-nar-2.11.8
如果配置,此属性将使用分配的客户端服务进行连接池。
Mongo Database Name要使用的数据库的名称
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Mongo Collection Name要使用的集合的名称
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
JSON TypeExtended
  • Extended JSON — 使用 MongoDB 的 "extended JSON"。这是通过 Java 驱动程序对 MongoDB Document 调用 toJson() 生成的 JSON
  • Standard JSON — 生成符合典型 JSON 约定(而非 Mongo 特定约定)的 JSON 文档。
默认情况下,MongoDB 的 Java 驱动程序返回 \"扩展 JSON\"。此变体 JSON 的某些特性可能会导致其他仅期望标准 JSON 类型和约定的 JSON 解析器出现问题。此配置设置控制是使用扩展 JSON 还是提供符合标准 JSON 的清晰视图。
Pretty Print Results JSONtrue
  • 是
  • 否
选择是否对查询结果的 JSON 进行格式化输出。选择 '是' 可能会根据 JSON 文档的复杂度大大增加磁盘空间需求
Character SetUTF-8指定文档数据的字符集。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Query选择用于查找的条件。如果该字段留空,将从另一个处理器的传入连接中获取查询,作为 FlowFile 正文中的有效 JSON 文档。如果该字段留空且启用了定时器而非传入连接,将导致使用 "{}" 查询进行完整集合获取。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Query Output Attribute如果设置,查询将被写入输出 FlowFiles 上的指定属性。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Projection从结果集中的文档返回的字段; 必须是有效的 BSON 文档
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Sort排序依据的字段; 必须是有效的 BSON 文档
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Limit返回的最大元素数
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Batch Size一批从服务器返回的元素数量
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Results Per FlowFile一次将多少个结果放入 FlowFile 中。 整个正文将被视为结果的 JSON 数组。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Date Formatyyyy-MM-dd'T'HH:mm:ss'Z'用于格式化从 Mongo 返回的日期字段的日期格式字符串。仅在 JSON 输出格式设置为标准 JSON 时应用。
支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值)
Send Empty Resultfalse
  • true
  • false
如果查询成功执行但未返回结果,发送一个空的 JSON 文档表示无结果。

关系 (Relationships)

名称描述自动终止
failure作为失败查询执行一部分的所有输入FlowFile都位于此处。否
original成功执行查询的所有输入FlowFile都位于此处。否
success所有具有成功查询执行结果的 FlowFile 都位于此处。否

写入的 FlowFile 属性

名称描述
mongo.database.name结果来自的数据库。
mongo.collection.name结果来自的集合。

状态管理

该组件不存储状态。

受限 (Restricted)

该组件不受限。

输入要求

该组件允许有传入连接。

详细说明

GetMongo

说明

该 Processor 对 MongoDB 实例或集群执行查询,并把结果写入 FlowFile。它接受输入,也可以独立运行。

指定查询

查询可以通过以下三种方式之一指定:

  • Query 配置属性。
  • Query Attribute 配置属性。
  • FlowFile 内容。

如果在任一配置属性中指定了值,就不会再从 FlowFile 内容中查找查询。

限制/整形结果

提供以下限制/整形结果的选项:

  • Limit - 限制结果数量。不要与 "batch size" 选项混淆,后者是底层 MongoDB 驱动的设置,用于告知每次轮询服务器时获取多少条。
  • Sort - 对结果集排序。需要类似 { "someDate": -1 } 的 JSON 文档
  • Projection - 控制返回哪些字段。例如,移除 _id:{ "_id": 0 }

其他选项

设置 Results Per FlowFile 后,会把一批结果组成一个 JSON 数组并写入 输出。启用 Pretty Print 后,会把 JSON 数据格式化为便于人类阅读的 形式(例如字段适当缩进)。