NiFi中的PutHBaseRecord行标识符字段名称属性中的多个列名称

时间:2019-03-05 10:01:59

标签: database hbase apache-nifi

我有一个简单的流程,可以从Oracle Table中提取行并将其通过NiFi放入Hbase。

要从数据库中提取数据,我正在使用“ QueryDataBase表”并将其放入HBase,我正在使用“ PutHbase记录”处理器。

通常,无论我的表的主键是什么,我都将其用作putHbaseRecord中的“行标识符字段”。

当有复合主键时出现了我的问题,因为putHbase记录处理器中的行标识符字段属性不占用多列。

对此的任何帮助都会很有帮助。

谢谢

1 个答案:

答案 0 :(得分:1)

不幸的是,PutHBaseRecord目前无法实现。它将需要对处理器进行代码更改,以允许为行ID指定多个字段名称,然后必须从每个记录中获取它们并将它们连接在一起以形成行ID值。

最好使该属性成为创建行ID的记录路径表达式。这样,如果您想要一个单一值,则只需要输入'/ field1',如果您想要一个复合值,则可以执行“ concat('/ field1','/ field2')”。