Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache nifi 如果有多个流文件并行运行,我们如何知道流何时完成?_Apache Nifi - Fatal编程技术网

Apache nifi 如果有多个流文件并行运行,我们如何知道流何时完成?

Apache nifi 如果有多个流文件并行运行,我们如何知道流何时完成?,apache-nifi,Apache Nifi,我有一个要求,我们有一个模板,它使用SQL作为源,SQL作为目标,每个表的数据将超过100GB,因此这里的模板将根据要迁移的表进行多次实例化,并且每个表被划分为多个流文件。我们如何知道流程何时完成?因为这里将有多个流文件,我们无法得出结论,因为它击中了终端处理器 我曾尝试使用SitetoSiteStatusReportingTask检查队列计数,但它提供了基于连接的计数,并且很难获取每个连接的connectionid,然后进行连接,因为我们有大量的模板。在这里,我们在报告任务中遇到了另一个问题,

我有一个要求,我们有一个模板,它使用SQL作为源,SQL作为目标,每个表的数据将超过100GB,因此这里的模板将根据要迁移的表进行多次实例化,并且每个表被划分为多个流文件。我们如何知道流程何时完成?因为这里将有多个流文件,我们无法得出结论,因为它击中了终端处理器

我曾尝试使用SitetoSiteStatusReportingTask检查队列计数,但它提供了基于连接的计数,并且很难获取每个连接的connectionid,然后进行连接,因为我们有大量的模板。在这里,我们在报告任务中遇到了另一个问题,因为它提供了NIFI画布上可用的所有进程组的数据,如果所有模板都在运行,这将是巨大的数据,并且可能会影响性能,即使我使用avro模式仅获取队列计数和连接id


您能提出一些想法并帮助我实现这一目标吗?

您有多种解决方案:

1-您可以使用等待/通知处理器

如果不希望多个flowfile并行运行:

2-设置队列上的背压

3-指定组级流文件并发性(推荐,但仅限Nifi 1.12)