首页 > 解决方案 > 如何设置 GCP 基础架构以对大量 json 数据快速执行搜索?

问题描述

我有大约 1 亿个 json 文件(10 TB),每个文件都有一个包含一堆文本的特定字段,我想对其执行简单的子字符串搜索并返回所有相关 json 文件的文件名。它们目前都存储在 Google Cloud Storage 上。通常,对于较少数量的文件,我可能只是启动一个具有许多 CPU 的 VM 并通过 Python 运行多处理,但这有点太多了。

我想避免花费太多时间来设置像 Hadoop 服务器这样的基础架构,或者将所有这些加载到一些 MongoDB 数据库中。我的问题是:执行此任务的快速而肮脏的方法是什么?我最初的想法是在 Kubernetes 上设置一些运行 Python 脚本的并行处理的东西,但我愿意接受建议,并且真的不知道如何去做。

标签: pythonjsonkubernetesgoogle-cloud-platform

解决方案


  1. 更简单的方法是将 GCS 数据加载到Big Query中,然后从那里运行您的查询。

  2. 将您的数据发送到 AWS S3 并使用Amazon Athena

  3. Kubernetes 选项将在 GKE 中设置一个集群,并在其中安装Presto,其中包含大量工作人员,使用带有 GCS的配置单元元存储 并从那里查询。(Presto 还没有直接的 GCS 连接器,afaik)——这个选项似乎更复杂。

希望能帮助到你!


推荐阅读