Google cloud dataflow 每个管道作业的成本

Google cloud dataflow 每个管道作业的成本,google-cloud-dataflow,Google Cloud Dataflow,我在Moloco的团队运行着大量的数据流管道(每小时和每天,主要是批处理作业),我们希望不时计算每个管道的总成本,以确定我们可以采取哪些改进来节省成本。 在过去的几周里,我们的一名工程师通常会访问作业监控UI网页(通过$project name),通过查找工人数量、工人机器类型、总PD和使用的内存等手动计算成本 最近,我们注意到,现在页面显示了“资源指标”,这将帮助我们节省计算成本的时间(以及不久前宣布的新定价模型) 另一方面,由于我们每天运行大约60-80个数据流作业,因此计算每个作业的成本非

我在Moloco的团队运行着大量的数据流管道(每小时和每天,主要是批处理作业),我们希望不时计算每个管道的总成本,以确定我们可以采取哪些改进来节省成本。 在过去的几周里,我们的一名工程师通常会访问作业监控UI网页(通过$project name),通过查找工人数量、工人机器类型、总PD和使用的内存等手动计算成本

最近,我们注意到,现在页面显示了“资源指标”,这将帮助我们节省计算成本的时间(以及不久前宣布的新定价模型)

另一方面,由于我们每天运行大约60-80个数据流作业,因此计算每个作业的成本非常耗时。 是否有方法通过给定作业id的API(可能通过“PipelineResult”或从主节点的日志)获取vCPU、内存和PD/SSD的总使用量指标?如果现在不支持,你们打算在不久的将来吗? 我们想知道我们是否应该考虑编写我们自己的脚本或一些可以提取每个工作ID的度量值,并计算成本,但是我们宁愿我们不必这样做。
谢谢

我是数据流团队的工程师之一

我建议使用命令行工具列出这些指标,并编写脚本来解析输出字符串中的指标,并根据这些指标计算成本。如果您想对许多作业执行此操作,您可能还想使用gcloud beta数据流作业列表列出您的作业。我们正在研究解决方案,以便将来更容易获得

确保您正在使用gcloud 135.0.0+:

gcloud version
如果没有,您可以使用以下方法进行更新:

gcloud components update
使用有权访问运行作业的项目的帐户登录:

cloud auth login
设置项目

gcloud config set project <my_project_name>
与您相关的是:

  • 服务cpu数秒
  • 服务内存mb秒
  • 服务-pd_gb_秒
  • 服务-pd\U ssd\U gb\U秒
注意:这些度量名称不久将更改为:

  • 总使用量
  • 总记忆法
  • HDDPPersistentDiskUsage总计
  • 总SSDPersistentDiskUsage

这正是我所需要的。升级到最新的gcloud sdk(135.0.0)后,一切都很正常!您如何使用上述指标计算成本?您将使用的资源量乘以这些资源的价格。问题:自给出此答案以来已经过去了2年。我想监控批处理作业指标。已签出Stackdriver,但它仅包含来自在线作业的度量。有什么建议的解决方案吗?
gcloud beta dataflow metrics list <job_id> --project=<my_project_name> | grep Service -B 1 -A 3
name:
  name: Service-mem_mb_seconds
  origin: dataflow/v1b3
scalar: 192001
updateTime: '2016-11-07T21:23:46.452Z'
--
name:
  name: Service-pd_ssd_gb_seconds
  origin: dataflow/v1b3
scalar: 0
updateTime: '2016-11-07T21:23:46.452Z'
--
name:
  name: Service-cpu_num
  origin: dataflow/v1b3
scalar: 0
updateTime: '2016-11-07T21:23:46.452Z'
--
name:
  name: Service-pd_gb
  origin: dataflow/v1b3
scalar: 0
updateTime: '2016-11-07T21:23:46.452Z'
--
name:
  name: Service-pd_gb_seconds
  origin: dataflow/v1b3
scalar: 12500
updateTime: '2016-11-07T21:23:46.452Z'
--
name:
  name: Service-cpu_num_seconds
  origin: dataflow/v1b3
scalar: 50
updateTime: '2016-11-07T21:23:46.452Z'
--
name:
  name: Service-pd_ssd_gb
  origin: dataflow/v1b3
scalar: 0
updateTime: '2016-11-07T21:23:46.452Z'
--
name:
  name: Service-mem_mb
  origin: dataflow/v1b3
scalar: 0
updateTime: '2016-11-07T21:23:46.452Z'