是否可以通过grep浏览存储在Google Cloud Storage中的文本文档?
我在VM上存储了超过1万个文档(txt文件),并且正在用尽空间。在达到极限之前,我想将文档移到其他位置。 目前,我正在考虑迁移到GCP上的Google Cloud Storage。
有时,我需要使用特定的关键字对文档进行grep。 我想知道是否可以通过grep浏览Google Cloud Storage上载的文档? 我检查了gsutil文档,但似乎支持ls,cp,mv,rm,但我看不到grep。
答案 0 :(得分:4)
不幸的是,没有像grep这样的命令可用于gsutil。
唯一相似的命令是 gsutil cat 。
我建议您可以创建一个小型vm,并且云中的grep将更快,更便宜。
gsutil cat gs://bucket/ | grep "what you wnat to grep"
答案 1 :(得分:3)
@howie answer很好。我只想提及Google Cloud Storage是一种用于存储文件的产品,并不关心文件的内容。此外,它还具有可大规模扩展的能力,并且您所要求的操作在计算上非常昂贵,因此将来不太可能会对其进行本机支持。
就您而言,我将考虑为文本文件和trigger an update for it every time a new file is upload to GCS创建索引。
答案 2 :(得分:1)
我还有另一个建议。您可能要考虑使用Google Dataflow处理文档。您可以移动它们,但更重要的是,您可以使用Dataflow转换文档。
答案 3 :(得分:0)
我找到了这个问题的答案。 gcpfuse解决了这个问题。
将Google云存储安装到特定目录。 您可以从那里grep。
https://cloud.google.com/storage/docs/gcs-fuse https://github.com/GoogleCloudPlatform/gcsfuse
答案 4 :(得分:0)
我已经写了一个Linux本机二进制文件[mrgrep](适用于ubuntu 18.04)(https://github.com/romange/gaia/releases/tag/v0.1.0)。它直接从GCS读取数据,此外,它还处理压缩文件并且具有多线程功能。