首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >SplitAvro

SplitAvro

作者头像
@阿诚
发布2020-08-31 14:05:49
发布2020-08-31 14:05:49
6830
举报
文章被收录于专栏:Panda诚Panda诚

描述

该处理器根据配置将二进制编码的Avro数据文件分割成更小的文件。输出策略决定split后的文件是Avro数据文件,还是只保留Avro记录(在FlowFile属性中包含元数据信息 )。输出总是二进制编码的。

属性配置

在下面的列表中,必需属性的名称以粗体显示。任何其他属性(不是粗体)都被认为是可选的,并且指出属性默认值(如果有默认值),以及属性是否支持表达式语言。

属性名称

默认值

可选值

描述

Split Strategy

Record

Record

分解传入数据文件的策略。Record策略将通过反序列化每个记录来读取传入的数据文件。

Output Size

1

每个分割文件包含的Avro记录的数量。在传入文件的记录小于输出大小的情况下,或者当记录的总数不均匀地除以输出大小时,可以得到少于Output Size数的分割文件。

Output Strategy

Datafile

DatafileBare Record

确定数据输出的格式。要么是Avro数据,要么是Bare Record(不含元数据信息及字段信息)。Bare Record仅用于已知该数据的系统,不具有通用性。

Transfer Metadata

true

truefalse

是否将元数据从父数据流传输到子数流。如果输出策略是Bare Record,则元数据将存储为FlowFile属性,否则将存储在数据文件头中。

  • Record

分解传入数据文件的策略。Record策略将通过反序列化每个记录来读取传入的数据文件。Output Size1 每个分割文件包含的Avro记录的数量。在传入文件的记录小于输出大小的情况下,或者当记录的总数不均匀地除以输出大小时,可以得到少于Output Size数的分割文件。Output StrategyDatafile

  • Datafile
  • Bare Record

确定数据输出的格式。要么是Avro数据,要么是Bare Record(不含元数据信息及字段信息)。Bare Record仅用于已知该数据的系统,不具有通用性。Transfer Metadatatrue

  • true
  • false

是否将元数据从父数据流传输到子数流。如果输出策略是Bare Record,则元数据将存储为FlowFile属性,否则将存储在数据文件头中。

连接关系

名称

描述

failure

如果一个流文件因为某种原因无法处理(例如,流文件不是有效的Avro),它将被路由到这个关系

original

被分割的原始流文件。如果流文件处理失败,则不会向该关系发送任何内容

split

所有从原始流文件中分离出来的新文件都将被路由到这个关系

读取属性

没有指定。

写属性

名称

描述

fragment.identifier

从同一个父流文件生成的所有分割流文件都将为该属性添加相同的UUID(随机生成)

fragment.index

一个增长的数字,表示从单个父流文件创建的分割流文件的顺序

fragment.count

从父流文件生成的分割流文件的数量

segment.original.filename

父流文件的文件名

状态管理

此组件不存储状态。

限制

此组件不受限制。

输入要求

此组件需要传入关系。

系统资源方面的考虑

资源

描述

内存

此组件的实例可能会导致系统资源的大量使用。多个实例或高并发性设置可能导致性能下降。

应用场景

用于切分较大的 avro文件。

示例说明

此组件的split功能与SplitJson大体相似,可以参考它的示例,这里主要通过实例看一下Datafile 和Bare Record 的区别,

1:Output Strategy 设置为DataFile

结果为:

2:Output Strategy 设置为Bare Record

结果为

文章有帮助的话,小手一抖点击在看,并转发吧。谢谢支持哟 (*^__^*)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Panda诚 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 属性配置
  • 连接关系
  • 读取属性
  • 写属性
  • 状态管理
  • 限制
  • 输入要求
  • 系统资源方面的考虑
  • 应用场景
  • 示例说明
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档