gpt4 book ai didi

google-cloud-platform - 通过 CLI 编写没有 header 的 Google 存储对象

转载 作者:行者123 更新时间:2023-12-04 04:23:29 24 4
gpt4 key购买 nike

我想知道在使用 gsutil 时是否可以编写没有标题(即没有带有列名的行)的 Google 存储对象(特别是 csv 文件)。

目前,我可以做到以下几点:

gsutil compose gs://bucket/test_file_1.csv gs://bucket/test_file_2.csv gs://bucket/test-composition-files.csv

但是,我将无法将 test-composition-files.csv 提取到 Google BigQuery 中,因为 compose 盲目地附加了文件(包括列名)。

一种可能的解决方案是将文件下载到本地并使用 pandas 进行处理,但这对于大文件来说并不理想。

有什么方法可以通过 CLI 执行此操作吗?我在文档中找不到任何内容。

最佳答案

通过阅读评论,我认为您以错误的方式花费了精力。我知道你想将你的文件加载到大查询中,但是大量的文件阻止了你这样做(太多的 API 调用)。而且数据流太慢了。

也许你可以有不同的想法。我有 2 个解决方案要提出

  • 如果您需要“近乎实时”的摄取,并且文件大小低于 1.5Gb,最好的方法是构建一个读取文件并执行流式写入 BigQuery 的函数。此函数由 Cloud Storage 事件触发。如果同时有多个文件,则会产生多个函数。小心,流写入 BigQuery is not free
  • 如果文件到达时您最多可以等待 2 分钟,我建议您构建一个 Cloud Functions,每 2 分钟触发一次。此函数读取桶中的文件名,将它们移动到子目录并执行子目录中所有文件的加载作业。您仅限于 1000 load jobs per day (and per table) ,一天包含 1440 分钟。每 2 分钟批一次就可以了。加载作业是免费的。

它是可接受的替代品吗?

关于google-cloud-platform - 通过 CLI 编写没有 header 的 Google 存储对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58523576/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com