google-cloud-platform - 如何知道批量云预测何时结束
问题描述
我正在做一个应用程序,它接收一些数据,对其进行处理,然后创建一个预测 AI 批处理作业。预测完成后,我应该把它们全部拿走并将它们与以前的文件合并。批量预测写入存储桶,我们称之为 is gs://predictions
。
目前,我有一个云功能,只要gs://predictions
写入就会触发。但是,批量预测作业将数据流式传输到文件中,当需要进行大量预测时,会多次更新此类文件。这意味着当我只想在作业完成时调用它时,我的云函数会被触发很多次。
为了克服这个问题,现在调用云函数,然后检查作业是否完成。如果是,则处理文件;如果没有,让它滑动。当然,这会带来很多不必要的处理(和不必要的代码!):-(
在这里真正对我有什么帮助:批处理作业完成后能否以某种方式写入 Pub/Sub?或者更好的是,它可以使用 webhook 以便在完成后自己调用我的云函数吗?我试图查看文档,但找不到任何东西。
有没有其他建议的解决方案?
解决方案
您可以在 PubSub 中创建一个日志接收器并在此自定义过滤器上过滤日志:
resource.type="ml_job"
textPayload="Job completed successfully."
然后,当批处理作业完成时,会打印日志跟踪并将消息发布到 PubSub 主题中。
推荐阅读
- python - 组合 Seaborn 地块没有正确排列
- sql - 如何根据 Postgresql 中的列值是否相同而插入表中
- python - 使用 KIVY 弹出窗口我有 NameError
- node.js - Express 服务器为尚未定义的路由返回 200
- python - 如何使用熊猫应用具有条件的不同样式
- database - 在 SOA_Infra 数据库的哪个表中可以找到复合传感器数据?
- c# - 如何解析 JProperty 以使用变量键检索嵌套值
- jquery - 如何使用 jquery 创建动态选择字段?
- html - 防止内联svg点击附近的文本选择
- reactjs - 无法专注于 Formik 中的第一个错误输入