【发布时间】:2020-03-31 00:51:55
【问题描述】:
我们需要将 csv 文件从 GCP 云存储传输到 ftp 服务器,如何实现?
我们可以使用 bigquery 工具将这些文件直接传输到 ftp 吗?
还是需要用服务下载,然后上传到ftp?
【问题讨论】:
标签: java google-bigquery
我们需要将 csv 文件从 GCP 云存储传输到 ftp 服务器,如何实现?
我们可以使用 bigquery 工具将这些文件直接传输到 ftp 吗?
还是需要用服务下载,然后上传到ftp?
【问题讨论】:
标签: java google-bigquery
编辑:啊...似乎我错过了您的Java 标签。好吧,如果您对生成子流程没意见,那么下面的解决方案应该可以工作。否则,请参阅 GCP 支持的 Java API。今天是this one
如果您可以通过 ssh 访问您的 ftp 服务器,则只需使用 Google Cloud SDK:
gsutil cp gs://[BUCKET_NAME]/[OBJECT_NAME] [SAVE_TO_LOCAL_FTP_DIR]
否则,以下命令将数据从 GCP -> 您的本地计算机 -> FTP:
gsutil cp gs://[BUCKET_NAME]/[OBJECT_NAME] - | curl -T - ftp://user:PASS@ftp-server.com/filename.ext
[OBJECT_NAME] 之后的第一个- 告诉gsutil 写入STDOUT 而不是普通文件,而第二个- 告诉curl -T 从STDIN 读取。对于初学者来说,| 是一个 bash 管道,指示将第一个程序的 STDOUT 传递给下一个程序的 STDIN。
【讨论】: