Apache NiFi 支持强大的、可伸缩的数据路由、转换和系统中介逻辑的有向图。
Apache NiFi 包含以下功能:
- 基于浏览器的用户接口:
- 设计、控制、反馈和监控的无缝体验
- 数据起源跟踪
- 丰富的配置
- 丢失容忍和保证交付
- 低延迟和高吞吐
- 动态优先级策略
- 运行时可以修改流配置
- 反向压力控制
- 扩展设计
- 用于定制 processors 和 services 的组件体系结构
- 快速开发和迭代测试
- 安全会话
- 带有可配置认证策略的 HTTPS 协议
- 多租户授权和策略管理
PutIoTDBRecord的配置项
Flowfile 的推断数据类型
如果要使用推断类型,需要注意以下几点:
- 输入的 flowfile 需要能被 读取。
- flowfile的 schema 中必须包含以时间字段名属性命名的字段
Time
的数据类型只能是STRING
或者LONG
。- 除
Time
以外的列必须以root.
开头。 - 支持的数据类型有:
INT
,LONG
,FLOAT
,DOUBLE
,BOOLEAN
,TEXT
。
通过配置项自定义 schema
如上所述,通过配置项来自定义 schema 比起推断的 schema来说,是一种更加灵活和强大的方式。
注意
- flowfile 的第一列数据必须为
Time
。剩下的必须与fields
配置中保持一样的顺序。 - 定义 shema 的 JSON 中必须包含
timeType
and 这两项。 timeType
只支持LONG
和STRING
这两个选项。tsName
和dataType
这两项必须被设置。- 当数据插入IoTDB时,Prefix属性会被添加到 tsName以作为插入的字段名。
- 支持的
dataTypes
有:INT32
,INT64
,FLOAT
,DOUBLE
,BOOLEAN
,TEXT
。 - 支持的
encoding
有:PLAIN
,DICTIONARY
, ,DIFF
,TS_2DIFF
,BITMAP
,GORILLA_V1
,REGULAR
,GORILLA
。
这是一个用于数据读取的处理器。它通过读取 FlowFile 的内容中的SQL 查询来对IoTDB的原生接口进行访问,并将查询结果用Record Writer写入 flowfile。