为了账号安全,请及时绑定邮箱和手机立即绑定

在 GCP 上使用 python numpy 和 pandas 部署小批量作业

在 GCP 上使用 python numpy 和 pandas 部署小批量作业

心有法竹 2022-06-22 17:37:46
我有一个小的日常计算工作,从 BigQuery 导入数据,使用 Python 数值计算库(pandas、numpy)来处理然后将结果写入外部表(另一个项目中的 Firestore 或 MySQL)在 GCP 上部署它的推荐方法是什么?我们的 devops 建议我们不要仅仅为了批处理作业而创建单个 vm。他们不希望自己管理 VM 基础架构,并且应该有支持批处理作业的服务。他们坚持让我使用 Dataflow。但我认为 Dataflow 的分布式特性有点矫枉过正。非常感谢,2019 年 10 月 14 日更新:我正在考虑将批处理作业 docker 化并部署到 K8 集群。缺点是集群应该托管多个作业以值得设置和维护工作。有人可以就这种方法的可行性和适用性给我建议吗?2019 年 10 月 15 日更新:感谢 Alex Titov 在https://googlecloud-community.slack.com/archives/C0G6VB4UE/p1571032864020000发表评论。根据他的建议,我将把我的工作分解成多个小的 Cloud Functions 组件,并通过 Cloud Scheduler 和/或 Cloud Composer 将它们作为管道链接在一起。
查看完整描述

2 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

Cloud Dataflow完全符合您的要求,因此它比 VM 更容易管理、扩展和构建。事先只问自己几个问题,如果它们不适用,请使用 Dataflow:

  • 我是否希望仅限于特定的云提供商(在这种情况下为 GCP)

  • 在这个项目中,是否使用了其他云服务,或者它们只是使用来自云的基础设施(保持一致性)。另外,我们希望项目朝着什么方向发展?(使用自定义或云解决方案)

  • 我想要绝对控制这个批处理软件处理工具吗?如果是这样,您可能没有 Dataflow

  • 其他考虑因素,例如成本、部署时间、启动时间

如果所有答案都倾向于云服务,那么就使用它。


查看完整回答
反对 回复 2022-06-22
?
千万里不及你

TA贡献1784条经验 获得超9个赞

如果您将您的工作容器化,则有 2 个无服务器解决方案可以运行它。一天,当 Cloud Run 可以持续超过 15 分钟时,将提供第三个(在路线图中,但没有发布日期)

  1. 使用云构建。考虑正确设置超时。事实上,Cloud Build 是为运行任何容器而设计的。我为此写了一篇文章

  2. 使用人工智能平台。一位(伟大的)谷歌员工发表了一篇关于此的文章

这两种解决方案都很棒,您可以选择运行容器的底层 VM 的机器类型。多亏了这一点,您不必管理 K8S 集群并在不使用时为其付费。


查看完整回答
反对 回复 2022-06-22
  • 2 回答
  • 0 关注
  • 158 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号