在云数据存储中使用整数ID作为字符串键是一个好主意吗?

问题描述 投票:0回答:1

我想将SQL数据库移至云数据存储。 sql数据库使用整数ID,而数据存储区使用字符串键名。我知道有一种分配ID和内容的方法,但是不需要使用字符串键名。所以我可以简单地将整数id转换为字符串并将其用作键名:

key('Entity', '342353425')

这种方法是否有问题?我猜想如果应用引擎要求输入字符串键名,它仍然可以提供良好的查询性能。

google-app-engine google-cloud-datastore
1个回答
0
投票

默认情况下,数据存储为每个实体提供一个整数ID。您可以选择指定字符串名称而不是此整数ID或指定自己的整数ID。

如果您指定自己的字符串名称或整数ID,则可能会损害您的应用扩展到大量实体的能力。

从本质上讲,数据存储区的扩展要求名称或ID必须在一定范围内分布,而不是顺序排列,群集化以及其他我不知道的东西。

如果您的SQL ID是连续的,那么您的应用将无法很好地扩展。如果SQL ID看起来是随机的,则应该可以。

© www.soinside.com 2019 - 2024. All rights reserved.