CompressContent Processor
已废弃: 该组件已废弃,未来可能被移除。
建议改用:cn.org.acal.lynxus.processors.compress.ModifyCompression
建议改用:cn.org.acal.lynxus.processors.compress.ModifyCompression
描述
使用用户指定的压缩算法压缩或解压缩 FlowFiles 的内容,并根据需要更新 mime.type 属性。 常见的习惯用法是在 CompressContent 之前添加 IdentityMimeType 并配置 Mode='decompress' AND Compression Format='use mime.type attribute'。 当以这种方式使用时,会自动检测 MIME 类型,并在必要时解压缩数据。 如果不需要解压,则数据将传递到“成功”关系。 该处理器以非常高效的内存方式运行,因此远远超出堆大小的非常大的对象通常可以很好地处理。
标签
使用场景
压缩 FlowFile 的内容
"Mode" = "compress"
"Compression Format" 应设置为要使用的压缩算法。
解压 FlowFile 的内容
"Mode" = "decompress"
"Compression Format" 应设置为之前用于压缩数据的压缩算法。
多处理器协同场景
检查 FlowFile 是否被压缩,如果是则解压。
默认属性值即可。
将 'success' 关系连接到 CompressContent。
"Mode" = "decompress"
"Compression Format" = "use mime.type attribute"
属性
| 名称 | 默认值 | 可选值 | 描述 |
|---|---|---|---|
| Mode | compress |
| 指示处理器是否应压缩内容或解压缩内容。 必须是“压缩”或“解压缩” |
| Compression Format | use mime.type attribute |
| 要使用的压缩格式。 有效值为:GZIP、Deflate、ZSTD、BZIP2、XZ-LZMA2、LZMA、Brotli、Snappy、Snappy Hadoop、Snappy Framed 和 LZ4-Framed |
| Compression Level | 1 |
| 要使用的压缩级别;仅在使用 gzip、deflate 或 xz-lzma2 压缩时有效。较低的值处理速度更快但压缩率较低;值为 0 表示不压缩(即仅归档)用于 gzip 或 xz-lzma2 的最小压缩。较高的级别可能意味着更大的内存使用量,例如 xz-lzma/2 的级别 7-9,因此请注意堆大小。 |
| Update Filename | false |
| 如果为 true,将在解压缩数据时移除文件扩展名(仅当扩展名指示相应的压缩格式时),并在压缩数据时添加相应的扩展名 |
关系 (Relationships)
| 名称 | 描述 | 自动终止 |
|---|---|---|
failure | 如果压缩/解压失败,FlowFiles将被转移到失败关系 | 否 |
success | FlowFiles在压缩或解压成功后会转入成功关系 | 否 |
读取的 FlowFile 属性
| 名称 | 描述 |
|---|---|
mime.type | 如果压缩格式设置为使用 mime.type 属性,则此属性用于确定压缩类型。否则,此属性将被忽略。 |
写入的 FlowFile 属性
| 名称 | 描述 |
|---|---|
mime.type | 如果 Mode 属性设置为 compress,则设置适当的 MIME 类型。如果 Mode 属性设置为 decompress 且文件成功解压缩,则删除此属性,因为 MIME 类型不再已知。 |
状态管理
该组件不存储状态。
受限 (Restricted)
该组件不受限。
输入要求
该组件要求有传入连接。
系统资源考量
| 资源 | 描述 |
|---|---|
| CPU | 此组件的实例可能会导致该系统资源的高使用率。多个实例或高并发设置可能会导致性能下降。 |
| MEMORY | 此组件的实例可能会导致该系统资源的高使用率。多个实例或高并发设置可能会导致性能下降。 |