如何在不下载文件的情况下查找放置在谷歌云存储中的 csv 文件中的记录数

Posted

技术标签:

【中文标题】如何在不下载文件的情况下查找放置在谷歌云存储中的 csv 文件中的记录数【英文标题】:How to find number of records in a csv file placed in google cloud storage without downloading the file 【发布时间】:2020-07-16 11:01:44 【问题描述】:

我试过了,但系统告诉 'wc' 不是一个有效的命令。

gsutil wc -l gs://folder/test.csv

请帮助我如何在不下载文件的情况下查找文件中的任何记录

【问题讨论】:

文档中没有 wc 命令的迹象,所以我想它告诉你真相 【参考方案1】:

我已经试过了,它正在工作

gsutil cat gs://folder/test.csv | wc -l

【讨论】:

太棒了。您应该能够将其标记为已接受。请注意,您仍然可以通过流式传输到标准输出来有效地下载文件并在本地计算行数。 @Doug 的回答仍然有效。 Narendran N@,如果您主要想避免通过 Internet 下载文件的网络成本/延迟,您可以尝试在 Google Compute Engine 实例上运行此命令。这仍然会下载对象,但流量仍会在 Google 的网络中。【参考方案2】:

云存储不提供任何计算资源来处理对象的内容。您唯一能做的就是上传对象、下载对象或读/写与对象关联的元数据。可以计算行数或对对象的内容执行任何其他操作。

您的选择是下载对象并计算客户端上的行数,或者在上传对象之前计算行数,并将其附加到元数据中,这样就可以轻松地发现它而无需完整下载。

【讨论】:

以上是关于如何在不下载文件的情况下查找放置在谷歌云存储中的 csv 文件中的记录数的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Java API 在谷歌云存储桶中创建一个空文件夹

在不使用表格的情况下从 BigQuery 中的 csv 文件中检索数据

Bigquery 如何使用存储在谷歌云中的数据?

谷歌云控制台中的磁盘空间问题

在谷歌云存储中使用带有签名 URL 的版本控制

如何在不下载文件的情况下搜索amazon S3存储桶中的文件内容