我正在尝试使用NiFi联接多个表。数据源可能是MySQL或RedShift,将来可能还会有其他东西。当前,我正在为此使用ExecuteSQL处理器,但是输出在单个flowfile中。因此,对于TB的数据,这可能不合适。我也尝试过使用generateTableFetch,但这没有连接选项。
这是我的问题:
GenerateTableFetch基于偏移量生成SQL查询。当数据集变大时,这会减慢该过程吗?
请分享您的想法。预先感谢
答案 0 :(得分:2)
1。ExecuteSQL处理器是否有其他选择?
joining multiple tables
,那么我们需要使用 ExecuteSQL
处理器。2。是否可以在多个流文件中使ExecuteSQL处理器输出?目前,我可以使用SplitAvro处理器拆分ExecuteSQL的输出。但是我想要ExecuteSQL自己拆分输出吗?
Max Rows for flowfile
,以便ExecuteSQL处理器拆分流文件。 3.GenerateTableFetch基于偏移量生成SQL查询。数据集变大时,这会减慢该过程吗?
如果您的源表在indexes
上具有 Maximum-value Columns
,则即使您的数据集越来越大,它won't
也会减慢该过程。
如果在源表上创建了 no indexes
,那么将始终执行full table scan
,这会减慢该过程。