【发布时间】:2021-04-05 05:34:27
【问题描述】:
我们在 Datastore 中有大约 1000 万个实体或某种类型的数据集。我们想要更改产品功能,因此我们想要更改所有 Kind 实体上的字段。
是否有一种智能/快速的方法来做到这一点,不涉及迭代所有系列实体?
【问题讨论】:
标签: google-cloud-platform google-cloud-datastore
我们在 Datastore 中有大约 1000 万个实体或某种类型的数据集。我们想要更改产品功能,因此我们想要更改所有 Kind 实体上的字段。
是否有一种智能/快速的方法来做到这一点,不涉及迭代所有系列实体?
【问题讨论】:
标签: google-cloud-platform google-cloud-datastore
或许您可以使用Dataflow 来帮助您解决问题。
Dataflow 是一种流式和批处理数据处理服务,完全由 GCP 管理。
它在Apache Beam 项目中开源。它与此 SDK 完全兼容。这允许您在 GCP 上运行之前在本地测试您的开发。
它公开了两个主要概念,PCollection,基本上是工具正在处理的数据和管道,捕获数据所需的不同步骤,必须执行的转换,以及结果的方式和位置得到的应该写出来。
它提供对Java, Python and Go 的支持,以及丰富的功能集和各种可能的数据源和转换。
在 Datastore 的特定情况下,Dataflow 提供对读取、写入和删除数据的支持。例如参见relevant documentation for Python。
您可以在 Apache Beam Github 存储库中查看good example,了解如何与数据存储区交互。
【讨论】:
我认为您必须遍历每一个并更新它,因为它是一个 NoSQL 数据存储,如我所见的 mongo。我们有一个使用 SQL 和 Mongo 的系统,而且士气低落的数据很痛苦,我们必须编写能够遍历所有内容并进行更新的迁移。
【讨论】: