首页 > 解决方案 > 是否可以在 Dataflow 中暂存模型文件?

问题描述

我正面临部署 Dataflow 管道的艰难时期。感谢 GCP 文档。以下是我想要实现的目标。
我有 4 个深度学习模型(每个 1 GB 的二进制文件)。我想从所有 4 个模型中获得预测。所以我搅拌桶里的所有 4 个模型。在我的管道中,我这样做了。

download_blob(......, destination_file_name = 'model.bin')            
fasttext.load_model('model.bin')  

        

它工作正常,但我有以下担忧。

每次创建作业时,它都会下载这些文件,这将消耗大量时间。如果我调用 100 个作业,那么模型将被下载 100 次。有什么办法可以避免吗?
有什么办法可以将这些文件暂存到某个位置,这样即使我触发作业 100 次,模型也只会下载一次?

标签: google-cloud-platformgoogle-cloud-dataflowapache-beamdataflowstaging

解决方案


GCP 数据流计算图和作业执行中所述,您可以将模型数据放入自定义容器中。当然,容器本身仍然必须在工人身上上演。

您还可以考虑单个管道(如果事先不知道输入,则可能是流式传输)是否比许多连续运行更好地满足您的需求。


推荐阅读