在Nifi中执行复杂的加入

问题描述 投票:1回答:1

我是Nifi的新手,并尝试对SQL服务器执行SQL,该服务器有多个表连接,并且还从每个表中选择属性。我们怎样才能在Nifi中执行此操作。我看到“Generate Table Fetch”,它允许我提到“Table Name”及其“Where Clause”。不确定,如果涉及多个表,我们如何执行复杂连接。

例-

Select 
a.col1,
a.col2,
b.col3,
b.col4,
c.col5,
c.col6
from a left outer join b
on a.colx=b.colx
inner join c
on a.coly = c.coly
where exists (some condition etc)

谢谢,悉达多

apache-nifi
1个回答
1
投票

使用ExecuteSQL/ExecuteSQLRecord(NiFi-1.8+)处理器并将您的查询保存在SQL select query属性中。

配置/启用dbcp连接池。

请记住ExecuteSQL处理器不存储状态:

  • 因此,如果要逐步运行处理器,则需要在外部将状态存储在NiFi(或)中,然后每次都拉出状态值并执行查询。
  • 有关使用NiFi存储/获取状态的更多详细信息,请参阅this链接。
© www.soinside.com 2019 - 2024. All rights reserved.