从调试和实时版本的应用程序中分离数据存储区数据

时间:2014-04-22 10:14:19

标签: google-app-engine google-cloud-datastore

将数据与调试版本和实时版本分开的最佳方法是什么?

此处的问答描述了如何分离代码逻辑:https://stackoverflow.com/a/8550105/129202

数据存储区数据仍在所有版本之间共享。

我想象其中任何一个:

  • 仪表板中的一些不错的设置会自动将版本之间的所有数据分开,因此它们完全不知道彼此。代码中不需要进行任何更改,除非您希望版本共享数据:-P
  • 在代码中获取版本号并将其用于"物理"组织数据,即将所有数据放在每个版本的子文件夹/子项中......我对数据存储区的经验不足,并且不知道这是否会对性能产生重大影响。

2 个答案:

答案 0 :(得分:3)

您无法根据版本分离数据。

您可以使用名称空间,但我不会

我会使用不同的实例并将生产数据复制到该实例,然后在那里运行所有测试,完全相信您正在使用单独的数据集。

我的一些项目,数据非常特定于公司/用户,我们设置了测试公司和测试用户,但这种方法非常依赖于更新类型以及数据的细分方式。如果您有多租户数据,那么您可能已经在使用名称空间。

答案 1 :(得分:2)

您可以使用名称空间,在数据存储区中存储数据时,请参阅此Google doc以获取更多信息。一个用于实时,一个用于调试,并在app.yaml中为每个版本定义为environmental variable