如何从头到尾跟踪有限的数据流?



我们正在构建一种网络爬虫机制,并希望最终用户尽快看到收集的结果,并在所有数据都在数据库中时收到通知。 收集结果通过最少的 ETL 处理。我们正在寻找一种 ETL,它将通知何时处理整个有限流(如果可能的话,还会通知一些进度)。流拆分为一组 Zip 文件 + 包含 zip 文件列表的文件(当流完全爬网时,这些文件将异步到达 ETL)。

我们研究了apache flink和apache nifi。Apache flink 支持批处理,客户端可以等到批处理完成,但这里的数据更像是一个有限流,这意味着处理应该在所有数据可用之前开始,并根据列出所有 zip 文件的另一个文件结束。Apache nifi似乎更适合使用通知和等待的这项工作。它会与NIFI一起使用吗?NIFI是为这种情况设计的吗?NIFY 能否通知有限流的进度和完成情况?如果有的话,有什么缺点?还有其他选择吗?

你可以有一个有界的 Flink 流。我会创建一个自定义SourceFunction,它使用"zip 文件列表"来决定何时终止。

相关内容

  • 没有找到相关文章

最新更新