ML引擎:获取GCP文件到机器最简单的方法

问题描述 投票:0回答:1

我提交调用我的一些Python代码ML引擎的培训工作。我想从谷歌云存储下载我的一个特定的文件,在我的代码中使用。

什么是这样做的最佳方式?我能想到的几个选项:

我想到的唯一的选择就是使用Python的subprocess运行gsutil cp gs://project/my_file。不过,我不知道,如果ML引擎实例都默认gsutil成立。是吗?

是否有下载存储在GCS编程文件更简单的方法?我已经通过了文档看了,但没有看到这个用例解决。

谢谢!

python google-cloud-storage google-cloud-ml
1个回答
0
投票

培训师的程序中,你可以使用TensorFlow直接读取GCS文件:

from tensorflow.python.lib.io import file_io
with file_io.FileIO('gs://bucket/file.csv', 'r') as f:
  ...

当然,你可以阅读和立即写:

from tensorflow.python.lib.io import file_io
with file_io.FileIO('gs://bucket/file.csv', 'r') as infile:
  with file_io.FileIO('/tmp/file.csv', 'w') as outfile:
     outfile.write(infile.read())

第二个最好的选择是使用Python客户端库(请务必注明谷歌云存储作为一个依赖):

   import google.cloud.storage as gcs
   bucket = gcs.Client().get_bucket('bucketname')
   blob = bucket.blob('/some/file.csv')
   dest = '/tmp/file.csv'
   blob.download_to_filename(dest)
© www.soinside.com 2019 - 2024. All rights reserved.