【问题标题】:Read files in compute instance through cloud dataflow通过云数据流读取计算实例中的文件
【发布时间】:2019-10-07 03:38:47
【问题描述】:

我想访问计算引擎 VM 中存在的文件。我必须从 GCE 读取文件,并且需要使用云数据流中的 python SDK 将文件转换为 GCS。 如果有人对此提出建议,我将非常有帮助。

【问题讨论】:

    标签: python google-cloud-platform google-cloud-dataflow


    【解决方案1】:

    你有几个解决方案。

    1. 如果您的转换可以在 VM 上进行(不需要水平可扩展性),您可以使用 DirectRunner runner 在 VM 上直接运行 Beam 管道
    2. 如果您想使用 Dataflow,您必须将文件放在可访问的存储中:Google Cloud Storage。你可以使用rsync if you have to sync a directory with the bucket,你可以在你的虚拟机上运行它。然后构建您的管道以从存储桶中读取文件并进行处理
    3. 如果您的文件在 BigQuery 中是“可提取的”,您可以将其加载到 BigQuery 中并通过 SQL 和 UDF 执行转换,然后在其他表中考虑结果,然后在 extract it to GCS

    有了更多关于愿望和限制的细节,我们可以完善答案。

    【讨论】:

    • 我想在转换输出文件放入gcs后读取VM中的文件。我们该如何进行,请您详细解释一下。
    • 您无法使用 Dataflow 读取存储在 VM 中的文件。您必须将文件外部化-> 将其放入云存储中。 (要点 2)。但是,您也可以在 VM 上运行 Beam 管道(要点 1)。顺便说一句,管道可以读取存储在 VM 中的文件,然后将转换推送到 Cloud Storage。为此,主要问题是:您的管道是否可以在单个 VM 上执行?实际上,大型并行数据处理需要数据流。但是对于“简单”的转换,它可以代表一个 VM、一个函数、一个 Cloud Run,......
    猜你喜欢
    • 2019-04-20
    • 2017-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多