使用Apache Nifi将数据从Hive拉到SQL Server而不重复

时间:2016-11-10 06:07:53

标签: apache-nifi

抱歉,我是Apache Nifi的新手。所以我做了一个关于从Hive中提取数据并将其存储在SQL中的数据流。我的数据流没有错误,唯一的问题是,它反复提取数据。

我的数据流包含以下内容:

  1. SelectHiveQL
  2. SplitAvro
  3. ConvertAvroToJson
  4. ConvertJsonTOSQL
  5. PutSQL
  6. 例如,我在hive中的表只有20行,但是当我运行数据流并在MS SQL中检查我的表时。它节省了5,000行。 SelectHiveQL重复拉取数据。

    我需要做什么才能在我的Hive表中只提取20行或只有确切的行数?

    谢谢

1 个答案:

答案 0 :(得分:3)

SelectHiveQL(与许多NiFi处理器一样)按照用户指定的时间表运行。要使处理器仅运行一次,您可以将运行计划设置为30秒,然后启动并立即停止处理器。处理器将被触发一次,并且停止它不会中断当前执行,只会导致它不再被调度。

另一种方法可能是将运行时间表设置为非常大的范围,这样它只会在很长的时间间隔(天,年等)执行一次。