我目前正在为现场制作环境实现Facebook Prophet。我以前没有做过,所以我想在这里向您介绍我的计划,希望您能给我一些反馈,无论这是一个好的解决方案,还是您有任何建议。


在Django中,我创建了我的预测所需的相关数据的.csv导出。这些.csv导出内容将上传到AWS S3存储桶。
从那里,我可以使用AWS Lambda Function访问此S3存储桶,其中正在执行“大量”计算。
完成后,我从2中提取预测,然后再次将它们保存在forcast.csv导出中
现在,我的Django应用程序可以访问forecast.csv上的S3并获取相应的预测。


我特别好奇在这种情况下AWS Lambda Function是否正确。导出可能也可以保存在tool(?)中,但是我尝试使v1简单化,因此是.csv。仍需要努力为AWS Lambda安装正确的层/软件包。因此,在深入了解其文档之前,我想确保我朝着正确的方向前进。

最佳答案

我有点担心使用AWS Lambda进行“大量”计算。有几个原因。


二进制大小限制:AWS Lambda二进制文件的大小限制为250MB。这是我们面临的最大限制,因为您将无法在该二进制文件中包含所有库,例如numpy,pandas,matplotlib等。
磁盘大小限制:AWS仅为lambda执行提供最大500MB磁盘大小,如果要将中间结果保存在磁盘中,可能会成为问题。
成本可能飞涨:如果您的lambda长时间运行而不是多次小调用,您最终将付出很多钱。在这种情况下,我认为使用EC2和ECS之类的产品会更好。


您可以评估将S3存储桶链接到SQS队列,以及在EC2计算机上运行的正在侦听队列并执行所有计算的进程。

AWS Lambda Limits

07-24 09:39
查看更多