NIFI:连接来自不同数据库的两个表

时间:2019-02-01 18:30:33

标签: apache-nifi

我有两个事务表,它们源自不同服务器中的不同数据库。我想基于公共属性将它们加入,并将结果完全存储在不同的数据库中。

我一直在NIFI中寻找各种选项,以将其作为每月运行的工作来执行。

到目前为止,我一直在尝试各种选择,但似乎没有解决。例如,我使用ExecuteSQL1&ExecuteSQL2-> MergeContent-> PutSQL

有人可以在同一指针上提供指针吗?

2 个答案:

答案 0 :(得分:1)

NiFi并不是真的要像这样进行流连接。最好的选择是使用单个ExecuteSQL处理器在SQL查询中实现联接。

答案 1 :(得分:0)

正如Bryan所说,NiFi目前(目前)没有这样做。也许看看Presto,您可以“在后台”建立多个连接,并使用其JDBC驱动程序来完成Bryan所描述的工作,即跨不同DB中的表进行联接。

我正在考虑添加一个JoinTables处理器,该处理器将允许您使用两个不同的DBCPConnectionPool控制器服务来连接两个表,但是还有很多事情要考虑,例如能够在内存中进行连接。为了将维度连接到事实表,我们可以尝试将较小的表加载到内存中,然后可以对较大的事实表进行更多的流连接。如果愿意,可以随时提交新功能Jira,我们可以在那里进行讨论。